Detection rules › Sigma

macOS TCC Database Modification

Status
experimental
Severity
critical
Log source
product macos, service endpointsecurity
Author
Eric Brown - Nebulock, Inc.
Source
github.com/Nebulock-Inc/macos-coresigma

Detects modifications to the TCC (Transparency, Consent, and Control) database which controls privacy permissions on macOS. Direct TCC database modification is a sophisticated evasion technique to bypass privacy protections and grant unauthorized access to sensitive resources (camera, microphone, files, etc.). This is a critical security event available on macOS 15.4+.

MITRE ATT&CK coverage

Rule body yaml

title: macOS TCC Database Modification
id: d187fdf7-5c6f-4f23-9694-71d87472407a
status: experimental
description: 'Detects modifications to the TCC (Transparency, Consent, and Control)
  database

  which controls privacy permissions on macOS. Direct TCC database modification

  is a sophisticated evasion technique to bypass privacy protections and grant

  unauthorized access to sensitive resources (camera, microphone, files, etc.).

  This is a critical security event available on macOS 15.4+.

  '
author: Eric Brown - Nebulock, Inc.
date: 2025/10/31
modified: 2025/10/31
references:
- https://attack.mitre.org/techniques/T1562/001/
- https://attack.mitre.org/techniques/T1222/
logsource:
  product: macos
  service: endpointsecurity
detection:
  selection:
    esf.event_type: 147
    event.action: tcc_modify
  condition: selection
falsepositives:
- System updates and installations
- MDM policy changes
- Legitimate applications requesting permissions
- User-initiated permission changes (rare to see at this level)
fields:
- event_type
- event_name
- ProcessId
- Image
- User
- service
- client
tags:
- attack.defense_evasion
- attack.t1562.001
- attack.t1222
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  esf.event_type: 147
  event.action: tcc_modify

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
esf.event_typeeq
  • 147
event.actioneq
  • tcc_modify