GitHub Advisoryadvisory · PyPI
GHSA-pq59-9fq7-m886 Zope AccessControl vulnerable to information disclosure through Python string `format` and `format_map` functions
MEDIUM
Official page ↗
- Aliases
- CVE-2026-77401
- Ecosystem
- PyPI
- Packages
- AccessControl
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N
- Weaknesses
- CWE-693
- Reviewed
- 2026-09-17
Affected packages
• PyPI AccessControl: < 7.4 → fixed in 7.4
Description
Impact
Python's string `format` functionality allows someone controlling the format string to "read" objects accessible (recursively) via attribute access and subscription from accessible objects. Those attribute accesses and subscriptions use Python's full blown `getattr` and `getitem`, not the policy restricted `AccessControl` variants `_getattr_` and `_getitem_`. This can lead to critical information disclosure.
The `AccessControl` package already guards against direct access to the formatting functions on string instances, but these mitigations did not cover subclasses of `str`.
Affected are all users who allow untrusted users to create AccessControl controlled Python code and execute it.
Patches
A fix was published with version 7.4.
Workarounds
There is no workaround.
Related
Alias · CVE (1)
- CVE-2026-77401 Zope AccessControl provides a general security framework for use in Zope. vulnerability
Weakness · CWE (1)
- CWE-693 Protection Mechanism Failure weakness
References
- https://github.com/zopefoundation/AccessControl/security/advisories/GHSA-pq59-9fq7-m886 web
- https://nvd.nist.gov/vuln/detail/CVE-2026-77401 advisory
- https://github.com/zopefoundation/AccessControl/commit/f980450eea416718be62847f34dfd51822938e43 web
- https://github.com/zopefoundation/AccessControl package
- https://github.com/zopefoundation/AccessControl/releases/tag/7.4 web