{"id":"GHSA-4qcx-jx49-6qrh","aliases":["CVE-2024-8769","PYSEC-2026-258"],"title":"Aim path traversal in LockManager.release_locks","description":"A vulnerability in the `LockManager.release_locks` function in aimhubio/aim (commit bb76afe) allows for arbitrary file deletion through relative path traversal. The `run_hash` parameter, which is user-controllable, is concatenated without normalization as part of a path used to specify file deletion. This vulnerability is exposed through the `Repo._close_run()` method, which is accessible via the tracking server instruction API. As a result, an attacker can exploit this to delete any arbitrary file on the machine running the tracking server.","severity":"critical","score":9.1,"published":"2025-03-20T12:32:48.000Z","modified":"2026-10-26T21:15:03.699Z","withdrawn":false,"knownExploited":false,"affected":[{"ecosystem":"PyPI","name":"aim","ranges":[{"events":[{"introduced":"3.15.0"},{"last_affected":"3.27.0"}],"type":"ECOSYSTEM"}],"versions":["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.20.1","3.21.0","3.22.0","3.23.0","3.24.0","3.25.0","3.25.1","3.26.0.dev1","3.26.1","3.27.0"],"fixed":[]}],"references":["https://nvd.nist.gov/vuln/detail/CVE-2024-8769","https://github.com/aimhubio/aim","https://github.com/aimhubio/aim/blob/bb76afe6e9a54364f322520cc4fea2679238f904/aim/sdk/lock_manager.py#L140","https://github.com/pypa/advisory-database/tree/main/vulns/aim/PYSEC-2026-258.yaml","https://huntr.com/bounties/59d3472f-f581-4beb-a090-afd36a00ecf7","https://pypi.org/project/aim"],"sources":[{"name":"OSV","id":"GHSA-4qcx-jx49-6qrh","modified":"2026-10-26T21:15:03.699329750Z","url":"https://osv.dev/vulnerability/GHSA-4qcx-jx49-6qrh"}],"assessments":[{"source":"OSV","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H","score":9.1}]}