{"id":"CVE-2026-77401","summary":"Zope AccessControl: Information disclosure through Python string `format` and `format_map` functions","details":"Zope AccessControl provides a general security framework for use in Zope. Prior to 7.4, applications that allow untrusted users to create and execute AccessControl-controlled Python code do not safely guard str.format and str.format_map when those methods are reached through a str subclass. In both ImplPython.py and cAccessControl.c, Python formatting can recursively access attributes and subscriptions using unrestricted getattr and getitem behavior instead of the policy-restricted getattr and getitem operations. A controlled format string can therefore disclose objects reachable from values available to the formatting operation. This issue is fixed in version 7.4.","aliases":["GHSA-pq59-9fq7-m886"],"modified":"2026-09-18T08:11:08.577091Z","published":"2026-09-16T14:28:01.186Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-693"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77401.json"},"references":[{"type":"WEB","url":"https://github.com/zopefoundation/AccessControl/releases/tag/7.4"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77401.json"},{"type":"ADVISORY","url":"https://github.com/zopefoundation/AccessControl/security/advisories/GHSA-pq59-9fq7-m886"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-77401"},{"type":"FIX","url":"https://github.com/zopefoundation/AccessControl/commit/f980450eea416718be62847f34dfd51822938e43"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/zopefoundation/accesscontrol","events":[{"introduced":"0"},{"fixed":"f980450eea416718be62847f34dfd51822938e43"},{"fixed":"f057af7298e04325e45da8361b85e3dc10c25bb0"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"7.4"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["7.3","7.2","7.1","7.0","6.3","6.2","5.7","6.1","6.0","5.6","5.5","5.4","5.3.1","5.3","5.2","5.1","5.0","4.2","4.1","4.0","4.0b7","4.0b6","4.0b5","4.0b4","4.0b3","4.0b2","4.0b1","4.0a7","4.0a6","4.0a5","3.0.12","4.0a3","4.0a2","4.0a1","3.0.11","3.0.10","3.0.9","3.0.8","3.0.7"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-77401.json","vanir_signatures_modified":"2026-09-18T08:11:08Z","vanir_signatures":[{"id":"CVE-2026-77401-75bc6a79","signature_type":"Line","signature_version":"v1","source":"https://github.com/zopefoundation/accesscontrol/commit/f980450eea416718be62847f34dfd51822938e43","target":{"file":"src/AccessControl/cAccessControl.c"},"deprecated":false,"digest":{"line_hashes":["95567365946331775351211445702854802335","66001858267904819631237342368770359743","130597594585641328390948415441371870484","47886076481932695417733069775757260442","305560083633414621956399642766134114961","313472931668314419297540342532299699865","143659315865397406621665142705681719302"],"threshold":0.9}},{"signature_version":"v1","source":"https://github.com/zopefoundation/accesscontrol/commit/f980450eea416718be62847f34dfd51822938e43","target":{"file":"src/AccessControl/cAccessControl.c","function":"guarded_getattr"},"deprecated":false,"digest":{"function_hash":"117251557948837844079452834506023948219","length":1523},"id":"CVE-2026-77401-c3eb906d","signature_type":"Function"}]}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N"}]}