TCC Bypass via Dylib Loading in Viscosity.app
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
On macOS systems, by utilizing a Launch Agent and loading the viscosity_openvpn process from the application bundle, it is possible to load a dynamic library with Viscosity's TCC (Transparency, Consent, and Control) identity. The acquired resource access is limited without entitlements such as access to the camera or microphone. Only user-granted permissions for file resources apply. Access to other resources beyond granted-permissions requires user interaction with a system prompt asking for permission. This issue was fixed in version 1.11.5 of Viscosity.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2025-4412
- 2026-10-03 Alias added: GHSA-496p-vfhp-58hp
References
More SparkLabs vulnerabilities
- TI-2012-03664 A Privilege Escalation vulnerability exists in Viscosity 1.4.1 on Mac OS X due to a path… CVSS 3.1CRITICAL 9.8
- TI-2017-14189 Viscosity DLL untrusted search path CVSS 3.1HIGH 8.8
- TI-2020-04244 Viscosity 1.8.2 on Windows and macOS allows an unprivileged user to set a subset of… CVSS 3.1HIGH 7.8
Sources
- CVE-2025-4412 · CVE Program
- CVE-2025-4412 · NVD
- FIRST EPSS
- GHSA-496p-vfhp-58hp · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences