CVE-2026-40191
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedClearanceKit intercepts file-system access events on macOS and enforces per-process access policies. Prior to 5.0.4-beta-1f46165, ClearanceKit's Endpoint Security event handler only checked the source path of dual-path file operations against File Access Authorization (FAA) rules and App Jail policies. The destination path was ignored entirely. This allowed any local process to bypass file-access protection by using rename, link, copyfile, exchangedata, or clone operations to place or replace files inside protected directories. This vulnerability is fixed in 5.0.4-beta-1f46165.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceClearanceKit's Endpoint Security event handler only validated source paths against File Access Authorization rules and App Jail policies, ignoring destination paths entirely. This allowed attackers to bypass file-access controls using dual-path operations like rename, link, copyfile, exchangedata, or clone to place or replace files inside protected directories.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Local
- Complexity
- Low
- Privileges
- Low
- Authentication
- X
- User interaction
- None
- Scope
- X
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify installed ClearanceKit versionRun 'clearancekit --version' or check the application package metadata to determine the exact version numberAffected if Version is earlier than 5.0.4-beta-1f46165
-
Confirm Endpoint Security module is activeCheck the Endpoint Security configuration: run 'clearancekit endpoint-security status' or inspect the main config file for the 'endpoint_security.enabled' setting set to trueAffected if Endpoint Security module is enabled and protecting the system
-
Verify File Access Authorization rules existList configured File Access Authorization rules: run 'clearancekit faa rules list' or inspect the policy configuration for any rules restricting source pathsAffected if File Access Authorization rules are defined and active
-
Confirm App Jail policies are enforcedCheck App Jail policy status: run 'clearancekit app-jail policies list' or inspect the jail configuration for any active path restrictionsAffected if App Jail policies are enabled with directory protection rules
-
Test dual-path operation bypass (optional validation)Attempt a rename, link, copyfile, exchangedata, or clone operation from an unrestricted source to a protected destination directory, then verify whether the operation was allowed or blocked in the audit logsAffected if Operations that should be blocked by destination path restrictions are being permitted
The environment is affected if ClearanceKit is earlier than version 5.0.4-beta-1f46165 and Endpoint Security with File Access Authorization or App Jail policies is actively protecting directories, since destination paths in dual-path operations would not be validated.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scopedUpgrade to ClearanceKit version 5.0.4-beta-1f46165 or later, which implements destination path validation alongside source path checking for dual-path file operations.
5.0.4-beta-1f46165
- 1. Identify the current installed version of ClearanceKit by checking the application or running 'strings' on the binary for version info
- 2. If running a version prior to 5.0.4-beta-1f46165, plan for upgrade to address the authorization bypass
- 3. Obtain the fixed version 5.0.4-beta-1f46165 from the official GitHub repository
- 4. Before deploying, review the release notes for 5.0.4-beta-1f46165 to understand any changes to functionality
- 5. Test the upgrade in a non-production environment to verify the fix works correctly
- 6. After testing, deploy version 5.0.4-beta-1f46165 to production systems
- 7. Verify that dual-path operations (rename, link, copyfile, exchangedata, clone) now properly check destination paths against FAA rules and App Jail policies
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation4.0 h
- Implementation2.0 h
- Testing4.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,392.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-40191 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-40191 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data