{"id":"CVE-2022-31507","aliases":["EUVD-2022-0110","GHSA-7488-6x3r-23w5","PYSEC-2022-225"],"status":"published","title":"Ganga allows absolute path traversal","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","severity":{"version":"3.1","score":9.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:L","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-11","score":0.01697,"percentile":0.7747,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-22"],"published":"2022-07-11T00:54:07Z","modified":"2026-10-28T02:30:43Z","fixes":[{"ecosystem":"PyPI","package":"ganga","fixed_in":["8.5.10"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"ganga","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"8.5.10"}]}]},{"source":"osv","ecosystem":"PyPI","package":"ganga","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"8.5.10"}]}],"versions":["6.1.15","6.1.16","6.1.17","6.1.18","6.1.19","6.1.20","6.1.21","6.1.22","6.1.23","6.1.24","6.1.25","6.2.0","6.2.1","6.2.2","6.2.3","6.3.0","6.3.1","6.4.0","6.5.0","6.5.1","6.5.2","6.6.0","6.6.1","6.6.2","6.6.3","6.6.4","6.7.0","6.7.1","6.7.2","6.7.3","6.7.4","7.0.0","7.0.1","7.0.2","7.0.3","7.0.4","7.1.0","7.1.1","7.1.10","7.1.11","7.1.12","7.1.13","7.1.14","7.1.15","7.1.3","7.1.4","7.1.5","7.1.6","7.1.7","7.1.8","7.1.9","8.0.0","8.0.1","8.0.2","8.0.3","8.1.0","8.2.0","8.2.1","8.2.2","8.2.3","8.2.4","8.3.0","8.3.1","8.3.2","8.3.3","8.3.4","8.3.4rc0","8.3.5","8.4.0","8.4.1","8.4.2","8.4.4","8.4.5","8.4.6","8.4.7","8.4.8","8.5.0","8.5.1","8.5.2","8.5.3","8.5.4","8.5.5","8.5.6","8.5.7","8.5.8","8.5.9"]},{"source":"osv","ecosystem":"PyPI","package":"ganga","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"730e7aba192407d35eb37dd7938d49071124be8c"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"8.5.10"}]}],"versions":["6.1.15","6.1.16","6.1.17","6.1.18","6.1.19","6.1.20","6.1.21","6.1.22","6.1.23","6.1.24","6.1.25","6.2.0","6.2.1","6.2.2","6.2.3","6.3.0","6.3.1","6.4.0","6.5.0","6.5.1","6.5.2","6.6.0","6.6.1","6.6.2","6.6.3","6.6.4","6.7.0","6.7.1","6.7.2","6.7.3","6.7.4","7.0.0","7.0.1","7.0.2","7.0.3","7.0.4","7.1.0","7.1.1","7.1.10","7.1.11","7.1.12","7.1.13","7.1.14","7.1.15","7.1.3","7.1.4","7.1.5","7.1.6","7.1.7","7.1.8","7.1.9","8.0.0","8.0.1","8.0.2","8.0.3","8.1.0","8.2.0","8.2.1","8.2.2","8.2.3","8.2.4","8.3.0","8.3.1","8.3.2","8.3.3","8.3.4","8.3.4rc0","8.3.5","8.4.0","8.4.1","8.4.2","8.4.4","8.4.5","8.4.6","8.4.7","8.4.8","8.5.0","8.5.1","8.5.2","8.5.3","8.5.4","8.5.5","8.5.6","8.5.7","8.5.8","8.5.9"]}],"products":[{"vendor":"ganga_project","product":"ganga"}],"references":[{"url":"https://github.com/github/securitylab/issues/669#issuecomment-1117265726","tags":["x_refsource_MISC","x_transferred","Exploit","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://github.com/ganga-devs/ganga/commit/730e7aba192407d35eb37dd7938d49071124be8c","tags":["x_refsource_MISC","x_transferred","Exploit","Patch","Third Party Advisory","fix","web"]},{"url":"https://github.com/ganga-devs/ganga/releases/tag/8.5.10","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-31507","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/ganga/PYSEC-2022-225.yaml","tags":["web"]},{"url":"https://github.com/advisories/GHSA-7488-6x3r-23w5","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/31xxx/CVE-2022-31507.json","tags":["advisory"]},{"url":"https://github.com/ganga-devs/ganga","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2022-31507","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","status":"published","published":"2022-07-11T00:54:07Z","modified":"2024-08-03T07:19:06.171Z","updated_at":"2026-11-02T14:34:35.615708Z"}],"euvd":[{"id":"EUVD-2022-0110","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","status":"published","published":"2022-07-11T00:54:07Z","modified":"2024-08-03T07:19:06Z","updated_at":"2026-11-03T03:25:34.126863Z"}],"ghsa":[{"id":"GHSA-7488-6x3r-23w5","title":"Ganga allows absolute path traversal","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask `send_file` function is used unsafely.","status":"published","published":"2022-07-13T15:43:03Z","modified":"2024-09-20T20:08:40Z","cvss":[{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:L/SC:H/SI:N/SA:L","level":"critical"},{"version":"3.1","score":9.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:L","level":"critical"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:38:05.526697Z"}],"nvd":[{"id":"CVE-2022-31507","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","status":"published","published":"2022-07-11T01:15:08.293Z","modified":"2026-06-17T04:45:35.16Z","cvss":[{"version":"3.1","score":9.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:L","level":"critical","assessor":"primary"},{"version":"2.0","score":6.4,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:07:22.966735Z"}],"osv":[{"id":"GHSA-7488-6x3r-23w5","title":"Ganga allows absolute path traversal","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask `send_file` function is used unsafely.","status":"published","published":"2022-07-13T15:43:03Z","modified":"2025-02-21T05:31:10.336541Z","cvss":[{"version":"3.1","score":9.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:L","level":"critical"},{"version":"4.0","score":9.2,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:L/SC:H/SI:N/SA:L","level":"critical"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:46:40.308826Z"},{"id":"CVE-2022-31507","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","status":"published","published":"2022-07-11T00:54:07Z","modified":"2026-10-28T02:30:43.761955734Z","updated_at":"2026-11-02T15:44:25.516981Z"},{"id":"PYSEC-2022-225","description":"The ganga-devs/ganga repository before 8.5.10 on GitHub allows absolute path traversal because the Flask send_file function is used unsafely.","status":"published","published":"2022-07-11T01:15:00Z","modified":"2023-11-08T04:09:30.981496Z","updated_at":"2026-11-02T15:52:53.449407Z"}]}}
