Summary
Santa's Tamper Resistance did not account for filesystem operations performed on the directory containing its protected state. A process already running as root could move that directory, after which Santa's databases, including the rule database, were reachable for direct read and write at a location Tamper Resistance did not recognize as protected.
Endpoint Security names the directory in such an operation, not the files inside it, and Santa's authorization was keyed to the current path string rather than to the identity of the underlying object. Protection that follows a name does not survive the name changing.
Root is a prerequisite. Tamper Resistance is a defense-in-depth control intended to hold up against a hostile root, so failing to hold that line is a real defect even though root is required.
Impact
An attacker with local root could:
- Read Santa's protected databases, disclosing the deployed rule set and other local policy state that Tamper Resistance is meant to keep private to
santad.
- Modify execution policy. Rules could be altered, added, or removed in the relocated database, and Santa would subsequently enforce the modified rule set. This can be used to allow binaries that policy should block, or to block binaries that policy should allow.
- Corrupt or destroy local policy state.
Detection and recovery
For deployments backed by a sync service, this tampering is detectable and recoverable rather than silent. Santa reports a hash of its rule database to the sync server on each sync. A server that compares this against its own view of the client's expected policy will observe the drift and can require a clean sync, which replaces local rules with authoritative server state.
This limits how long tampered policy survives, but note what it is and is not:
- It is detection and recovery, not prevention. Modified policy is enforced from the moment it is written until the next sync reconciles it.
- It depends on the sync server actually comparing the reported hash and acting on a mismatch. Workshop does this automatically, with no configuration required. Other sync servers vary.
- It does not apply to standalone deployments that are not backed by a sync service, where there is no authoritative copy to reconcile against.
What changes in 2026.7
The directory holding Santa's state, and the directories above it, are now protected objects in their own right. Operations that would relocate or duplicate them are denied where they were previously permitted.
This can affect tooling that operates on those directories wholesale. A backup, imaging, or cloning process that recursively copies /private/var or a directory beneath it may now be denied at the protected directories, in the same way it was already denied on the database files themselves.
Affected versions
Mitigation
Upgrade to Santa 2026.7 or later. There is no configuration-level workaround in affected versions.
The following are compensating controls that reduce exposure until you can upgrade. None of them close the underlying issue.
- Limit who can become root. Exploitation requires pre-existing root, so restricting administrative access reduces the population that can attempt it. Workshop customers can use Endpoint Privilege Management to constrain user elevation to root. This narrows the set of users who can reach the required privilege. It does not help against an attacker who obtains root by another route, such as a separate privilege-escalation flaw or an already-root process.
- Verify sync-side drift detection. Operators running their own sync server should confirm they compare the rule hash reported by clients against expected policy and require a clean sync on mismatch. Workshop does this automatically.
- Watch for unexpected changes to Santa's state directory.
Credit
Reported by OpenAI Codex Security, Jamie Brim (@jamieb-oai).
Independently reported by @arthurscchan, @DavidKorczynski, and @AdamKorcz. Per that report, the issue was discovered by Claude, Anthropic's AI assistant, with triage and report authoring by Ada Logics in collaboration with Anthropic Research.
Summary
Santa's Tamper Resistance did not account for filesystem operations performed on the directory containing its protected state. A process already running as root could move that directory, after which Santa's databases, including the rule database, were reachable for direct read and write at a location Tamper Resistance did not recognize as protected.
Endpoint Security names the directory in such an operation, not the files inside it, and Santa's authorization was keyed to the current path string rather than to the identity of the underlying object. Protection that follows a name does not survive the name changing.
Root is a prerequisite. Tamper Resistance is a defense-in-depth control intended to hold up against a hostile root, so failing to hold that line is a real defect even though root is required.
Impact
An attacker with local root could:
santad.Detection and recovery
For deployments backed by a sync service, this tampering is detectable and recoverable rather than silent. Santa reports a hash of its rule database to the sync server on each sync. A server that compares this against its own view of the client's expected policy will observe the drift and can require a clean sync, which replaces local rules with authoritative server state.
This limits how long tampered policy survives, but note what it is and is not:
What changes in 2026.7
The directory holding Santa's state, and the directories above it, are now protected objects in their own right. Operations that would relocate or duplicate them are denied where they were previously permitted.
This can affect tooling that operates on those directories wholesale. A backup, imaging, or cloning process that recursively copies
/private/varor a directory beneath it may now be denied at the protected directories, in the same way it was already denied on the database files themselves.Affected versions
<= 2026.62026.7CVSS:4.0/AV:L/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:NMitigation
Upgrade to Santa
2026.7or later. There is no configuration-level workaround in affected versions.The following are compensating controls that reduce exposure until you can upgrade. None of them close the underlying issue.
Credit
Reported by OpenAI Codex Security, Jamie Brim (@jamieb-oai).
Independently reported by @arthurscchan, @DavidKorczynski, and @AdamKorcz. Per that report, the issue was discovered by Claude, Anthropic's AI assistant, with triage and report authoring by Ada Logics in collaboration with Anthropic Research.