Medium severity · published Jul 20, 2026
CVE-2026-47134
ClearanceKit: Policy signing key in System Keychain has permissive ACL allowing any local-root process to forge signed policy
6.9
CVSS
0.2%
EPSS
No
On KEV
Description
ClearanceKit intercepts file-system access events on macOS and enforces per-process access policies. The ECDSA private key used to sign the on-disk policy database (`/Library/Application Support/clearancekit/store.db`) is stored in the macOS System Keychain. The key was created via the two-step pattern `SecKeyCreateRandomKey` (in-memory) followed by `SecItemAdd(kSecValueRef:, kSecAttrAccess:)` (persist). Prior to version 5.0.10, for `kSecClassKey` items in the legacy System Keychain, `kSecAttrAccess` passed to `SecItemAdd` is silently ignored — the persisted key inherits no ACL restriction. The same access builder applied to `kSecClassGenericPassword` items correctly binds the ACL, making this bug specific to the EC key. The result is that any process running as root can use the key to produce valid signatures over arbitrary policy content. Version 5.0.10 fixes the issue. No known workarounds are available. Disabling the system extension and manually removing the System Keychain item labelled `clearancekit policy signing key` would prevent the forged-signature path but also disables policy enforcement.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 4% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
CL
clearancekit · craigjbass
< 5.0.10 · source: vendor
Affected product
CL
clearancekit
craigjbass
More from clearancekit
8.7
CVE-2026-33631
ClearanceKit: opfilter policy bypass via non-open file operations
7.8
CVE-2026-33632
ClearanceKit: opfilter policy bypass via exchangedata and clone operations
7.1
CVE-2026-40599
ClearanceKit: Ad-hoc signed binaries can spoof Apple process identities in the global allowlist
6.9
CVE-2026-47133
ClearanceKit's signed policy tables lack monotonic counter, allowing replay of older legitimately-signed snapshots
6.8
CVE-2026-40191
ClearanceKit has a policy bypass via dual-path Endpoint Security events checking only source path