{"id":"PYSEC-2026-1094","summary":"Aim Improper Access Control","details":"In version 3.22.0 of aimhubio/aim, the AimQL query language uses an outdated version of the safer_getattr() function from RestrictedPython. This version does not protect against the str.format_map() method, allowing an attacker to leak server-side secrets or potentially gain unrestricted code execution. The vulnerability arises because str.format_map() can read arbitrary attributes of Python objects, enabling attackers to access sensitive variables such as os.environ. If an attacker can write files to a known location on the Aim server, they can use str.format_map() to load a malicious .dll/.so file into the Python interpreter, leading to unrestricted code execution.","aliases":["CVE-2024-8238","GHSA-r229-5wgf-f28g"],"modified":"2026-07-07T17:46:18.131470461Z","published":"2026-07-07T14:34:56.945764Z","references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-8238"},{"type":"PACKAGE","url":"https://github.com/aimhubio/aim"},{"type":"WEB","url":"https://github.com/aimhubio/aim/blob/main/aim/storage/query.py#L45"},{"type":"WEB","url":"https://huntr.com/bounties/4e140ef9-f6d1-4e68-a44c-3b9e856924d3"},{"type":"PACKAGE","url":"https://pypi.org/project/aim"},{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-r229-5wgf-f28g"}],"affected":[{"package":{"name":"aim","ecosystem":"PyPI","purl":"pkg:pypi/aim"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.0.0"},{"last_affected":"3.22.0"}]}],"versions":["3.0.0","3.0.1","3.0.2","3.0.3","3.0.4","3.0.5","3.0.6","3.0.7","3.1.0","3.1.1","3.10.0","3.10.0.dev9","3.10.1","3.10.2","3.10.3","3.11.0","3.11.0.dev4","3.11.1","3.11.1.dev1","3.11.2","3.12.0","3.12.0.dev2","3.12.1","3.12.2","3.13.0","3.13.1","3.13.2","3.13.3","3.13.4","3.14.0","3.14.1","3.14.2","3.14.3","3.14.4","3.15.0","3.15.1","3.15.2","3.16.0","3.16.1","3.16.2","3.17.0","3.17.1","3.17.2","3.17.3","3.17.4","3.17.5","3.17.5rc1","3.17.5rc2","3.17.5rc3","3.17.5rc4","3.18.0","3.18.0.dev2","3.18.0.dev3","3.18.0.dev4","3.18.0.dev5","3.18.1","3.19.0","3.19.1","3.19.2","3.19.3","3.2.0","3.2.1","3.2.2","3.20.1","3.21.0","3.22.0","3.3.0","3.3.1","3.3.2","3.3.3","3.3.4","3.3.5","3.4.0","3.4.1","3.5.0","3.5.1","3.5.2","3.5.3","3.5.4","3.6.0","3.6.1","3.6.2","3.6.3","3.7.0","3.7.1","3.7.2","3.7.3","3.7.4","3.7.5","3.8.0","3.8.1","3.9.0a1","3.9.0a14","3.9.2","3.9.3","3.9.4"],"database_specific":{"source":"https://github.com/pypa/advisory-database/blob/main/vulns/aim/PYSEC-2026-1094.yaml"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}