{"id":"CVE-2026-129477","kind":"vulnerability","aliases":["CVE-2026-129477"],"related":[],"title":"Assimp: crafted glTF files can read local files from the importing machine","description":"Assimp through 6.0.6 contains a path traversal vulnerability in the glTF and glTF2 importers that allows attackers to read local files via crafted buffers[].uri values. Attackers can supply glTF models with '..' segments or absolute paths in buffer URIs to load files like /etc/passwd into imported mesh vertex data.","summary":"Assimp, a 3D model loading library, does not restrict buffer paths in glTF and glTF2 files. A crafted model with '..' segments or absolute paths in buffers[].uri can make the importer read files such as /etc/passwd and load their contents into mesh data.","severity":"medium","cvss":6.8,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["3d-models","assimp","c++","gltf","package"],"not_affected_if":["no-gltf-import","trusted-models-only"],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-11-15T14:17:26+00:00","first_seen_at":"2026-11-15T14:36:15+00:00","triaged_at":"2026-11-15T14:37:40+00:00","updated_at":"2026-11-15T14:37:40+00:00","category":"package","confidence":0.5,"triage":{"at":"2026-11-15T14:37:40Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"unknown","title":"Assimp: crafted glTF files can read local files from the importing machine","impact":"medium","summary":"Assimp, a 3D model loading library, does not restrict buffer paths in glTF and glTF2 files. A crafted model with '..' segments or absolute paths in buffers[].uri can make the importer read files such as /etc/passwd and load their contents into mesh data.","audience":"developers","category":"package","nicknames":[],"who_cares":["assimp","c++","3d-models","gltf"],"confidence":0.5,"fix_status":"unknown","needs_auth":"no","worst_case":"local files readable by the importing process leak into mesh data","analyst_note":"Confirm the fixed version in the Assimp ranges and the vulncheck advisory; the sources give no fixed version or check.","how_to_check":"- unknown","plain_action":"","product_name":"","needs_analyst":true,"not_affected_if":["trusted-models-only","no-gltf-import"],"who_is_affected":"Applications that import glTF or glTF2 models supplied by users or other untrusted sources and then expose the imported mesh data, for example by rendering it or returning it through an API, are exposed. Apps that only load models the team controls, or that never import glTF files, can skip it. The sources do not give the fixed version.","user_interaction":"yes","product_ecosystem":"","needs_special_setup":"unknown","severity_if_unknown":"unknown"},"cost_usd":0.000704,"input_tokens":4593,"output_tokens":489,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-129477':15A,18A '-2026':14A,17A '/etc/passwd':61B,112C '3d':20B,28B '3d-models':19B '6.0.6':71C 'absolut':48B,103C 'allow':84C 'assimp':1A,22B,26B,69C 'attack':85C,95C 'buffer':35B,51B,92C,106C 'c':23B 'contain':72C 'content':65B 'craft':2A,43B,91C 'cve':13A,16A 'data':68B,117C 'file':4A,8A,41B,58B,89C,110C 'gltf':3A,24B,38B,79C,98C 'gltf2':40B,81C 'import':11A,56B,82C,114C 'librari':31B 'like':111C 'load':30B,63B,109C 'local':7A,88C 'machin':12A 'make':54B 'mesh':67B,115C 'model':21B,29B,44B,99C 'packag':25B 'path':36B,49B,74C,104C 'read':6A,57B,87C 'restrict':34B 'segment':46B,101C 'suppli':97C 'travers':75C 'uri':52B,93C,107C 'valu':94C 'vertex':116C 'via':90C 'vulner':76C","nicknames":[],"mitigations":[],"who_affected":"Applications that import glTF or glTF2 models supplied by users or other untrusted sources and then expose the imported mesh data, for example by rendering it or returning it through an API, are exposed. Apps that only load models the team controls, or that never import glTF files, can skip it. The sources do not give the fixed version.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["3dmodels","assimp","c","gltf","medium","package"],"campaign_type":null,"search_a":"'-129477':15A,18A '-2026':14A,17A 'assimp':1A 'craft':2A 'cve':13A,16A 'file':4A,8A 'gltf':3A 'import':11A 'local':7A 'machin':12A 'read':6A","search_b":"'/etc/passwd':61B '3d':20B,28B '3d-models':19B 'absolut':48B 'assimp':22B,26B 'buffer':35B,51B 'c':23B 'content':65B 'craft':43B 'data':68B 'file':41B,58B 'gltf':24B,38B 'gltf2':40B 'import':56B 'librari':31B 'load':30B,63B 'make':54B 'mesh':67B 'model':21B,29B,44B 'packag':25B 'path':36B,49B 'read':57B 'restrict':34B 'segment':46B 'uri':52B","search_c":"'/etc/passwd':112C '6.0.6':71C 'absolut':103C 'allow':84C 'assimp':69C 'attack':85C,95C 'buffer':92C,106C 'contain':72C 'craft':91C 'data':117C 'file':89C,110C 'gltf':79C,98C 'gltf2':81C 'import':82C,114C 'like':111C 'load':109C 'local':88C 'mesh':115C 'model':99C 'path':74C,104C 'read':87C 'segment':101C 'suppli':97C 'travers':75C 'uri':93C,107C 'valu':94C 'vertex':116C 'via':90C 'vulner':76C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-15T14:17:26+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-129477","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-129477","severity":null,"published_at":"2026-11-15T14:17:26+00:00","modified_at":"2026-11-15T14:17:26+00:00","first_seen_at":"2026-11-15T14:36:15+00:00","fetched_at":"2026-11-15T14:36:15+00:00","note":null}],"documents":[{"id":163816,"url":"https://www.vulncheck.com/advisories/assimp-through-6.0.6-path-traversal-via-gltf-external-buffer-uris","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}