{"answers":{"affected":"1 open source package ship an affected version, including pyassimp. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-2591 exists.","fix":"Apply the vendor's patch.","what":"CVE-2025-2591 is a medium-severity denial of service vulnerability in Open Asset Import Library Assimp, published on 21 Mar 2025. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2025-2591 and fix it if it is affected.\n\nWhat it is: CVE-2025-2591 is a medium-severity denial of service vulnerability in Open Asset Import Library Assimp, published on 21 Mar 2025. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-2591 exists.\n\nAffected packages and fixed versions:\n- pyassimp (PyPI): affected all versions up to 5.4.3; no fix listed\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2025-2591/ (Markdown: https://insights.sbomify.com/CVE-2025-2591/index.md)","id":"CVE-2025-2591","markdown":"https://insights.sbomify.com/CVE-2025-2591/index.md","name":"CVE-2025-2591","record":{"aliases":["DEBIAN-CVE-2025-2591","GHSA-6q3p-m444-94qp","PYSEC-2025-160","UBUNTU-CVE-2025-2591"],"analysis":{"component_type":"library","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"yes","non_default_config":false,"product_category":"Asset import library","requires_auth":"none","summary":"A remote attacker can cause a denial of service via divide by zero in Assimp's Quake1 MDL loader, requiring a patch.","user_interaction":"required","vuln_class":"denial_of_service"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"VulDB","cpe":[{"product":"assimp","vendor":"assimp"}],"cvss":{"score":5.3,"severity":"medium","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-404","name":"Improper Resource Shutdown or Release"},{"id":"CWE-369","name":"Divide By Zero"}],"description":"A vulnerability classified as problematic was found in Open Asset Import Library Assimp 5.4.3. This vulnerability affects the function MDLImporter::InternReadFile_Quake1 of the file code/AssetLib/MDL/MDLLoader.cpp. The manipulation of the argument skinwidth/skinheight leads to divide by zero. The attack can be initiated remotely. The exploit has been disclosed to the public and may be used. The patch is identified as ab66a1674fcfac87aaba4c8b900b315ebc3e7dbd. It is recommended to apply a patch to fix this issue.","ecosystems":["PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":true,"headline":"Open Asset Import Library Assimp MDLLoader.cpp InternReadFile_Quake1 divide by zero","id":"CVE-2025-2591","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":"denial_of_service","year":"2025"},"n_packages":1,"n_references":7,"next":{"headline":"Open Asset Import Library Assimp CSMLoader.cpp InternReadFile heap-based overflow","id":"CVE-2025-2592"},"packages":[{"ecosystem":"PyPI","fixed":[],"introduced":["0"],"last_affected":["5.4.3"],"package":"pyassimp","purl":"pkg:pypi/pyassimp","source":"PYSEC-2025-160"}],"prev":{"headline":"code-projects Human Resource Management System recruitment.go UpdateRecruitmentById cross site scripting","id":"CVE-2025-2590"},"products":["Assimp"],"published":"2025-03-21","related":[{"cvss_score":8.8,"headline":"Use after free in n/a","id":"CVE-2022-45748","kev_date_added":null,"published":"2023-01-20"},{"cvss_score":8.4,"headline":"Use after free in n/a","id":"CVE-2024-48423","kev_date_added":null,"published":"2024-10-24"},{"cvss_score":8.4,"headline":"Memory corruption in Assimp","id":"CVE-2024-45679","kev_date_added":null,"published":"2024-09-18"},{"cvss_score":8.4,"headline":"Memory corruption in Assimp","id":"CVE-2024-40724","kev_date_added":null,"published":"2024-07-19"},{"cvss_score":6.5,"headline":"Null dereference in n/a","id":"CVE-2022-38528","kev_date_added":null,"published":"2022-09-06"},{"cvss_score":6.2,"headline":"Memory corruption in n/a","id":"CVE-2024-53425","kev_date_added":null,"published":"2024-11-21"},{"cvss_score":6.2,"headline":"Memory corruption in n/a","id":"CVE-2024-48426","kev_date_added":null,"published":"2024-10-24"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2025-03-21","vendors":["Open Asset Import Library"]},"summary":"A remote attacker can cause a denial of service via divide by zero in Assimp's Quake1 MDL loader, requiring a patch.","url":"https://insights.sbomify.com/CVE-2025-2591/"}