{"id":"CVE-2026-129490","kind":"vulnerability","aliases":["CVE-2026-129490"],"related":[],"title":"littlefs: crafted v1 image crashes device during migration via stack reads","description":"littlefs through 2.11.3, when built with LFS_MIGRATE, contains a type confusion vulnerability in lfs_dir_traverse() that treats a stack lfs_diskoff struct as an lfs_attr array. Attackers can supply a crafted littlefs v1 image whose metadata is read as LFS_FROM_USERATTRS during migration, causing out-of-bounds stack reads and process crashes.","summary":"littlefs, an embedded flash filesystem library, has a type confusion bug in lfs_dir_traverse() when built with LFS_MIGRATE. A crafted littlefs v1 image makes migration read stack memory out of bounds, crashing the process.","severity":"medium","cvss":6.8,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["c","embedded","littlefs","package"],"not_affected_if":["lfs-migrate-disabled","no-untrusted-v1-images"],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-11-15T16:16:56+00:00","first_seen_at":"2026-11-15T16:35:38+00:00","triaged_at":"2026-11-15T16:37:11+00:00","updated_at":"2026-11-15T16:37:11+00:00","category":"package","confidence":0.5,"triage":{"at":"2026-11-15T16:37:11Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"local","title":"littlefs: crafted v1 image crashes device during migration via stack reads","impact":"low","summary":"littlefs, an embedded flash filesystem library, has a type confusion bug in lfs_dir_traverse() when built with LFS_MIGRATE. A crafted littlefs v1 image makes migration read stack memory out of bounds, crashing the process.","audience":"developers","category":"package","nicknames":[],"who_cares":["littlefs","embedded","c"],"confidence":0.5,"fix_status":"unknown","needs_auth":"no","worst_case":"process crashes from out-of-bounds stack reads during migration","analyst_note":"Confirm the fixed version in littlefs upstream and the vulncheck advisory; the sources give no fixed version or check command.","how_to_check":"- unknown","plain_action":"","product_name":"","needs_analyst":true,"not_affected_if":["lfs-migrate-disabled","no-untrusted-v1-images"],"who_is_affected":"Only builds compiled with LFS_MIGRATE enabled that open untrusted littlefs v1 images are described as exposed; the sources do not say which products or versions ship that build. Teams that do not use the migration feature or only handle images they create can likely skip it.","user_interaction":"no","product_ecosystem":"","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.0007,"input_tokens":4628,"output_tokens":474,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-129490':14A,17A '-2026':13A,16A '2.11.3':60C 'array':86C 'attack':87C 'attr':85C 'bound':54B,109C 'bug':32B 'built':38B,62C 'c':18B 'caus':105C 'confus':31B,69C 'contain':66C 'craft':2A,43B,91C 'crash':5A,55B,114C 'cve':12A,15A 'devic':6A 'dir':35B,73C 'diskoff':80C 'embed':19B,24B 'filesystem':26B 'flash':25B 'imag':4A,46B,94C 'lfs':34B,40B,64C,72C,79C,84C,100C 'librari':27B 'littlef':1A,20B,22B,44B,58C,92C 'make':47B 'memori':51B 'metadata':96C 'migrat':8A,41B,48B,65C,104C 'out-of-bound':106C 'packag':21B 'process':57B,113C 'read':11A,49B,98C,111C 'stack':10A,50B,78C,110C 'struct':81C 'suppli':89C 'travers':36B,74C 'treat':76C 'type':30B,68C 'userattr':102C 'v1':3A,45B,93C 'via':9A 'vulner':70C 'whose':95C","nicknames":[],"mitigations":[],"who_affected":"Only builds compiled with LFS_MIGRATE enabled that open untrusted littlefs v1 images are described as exposed; the sources do not say which products or versions ship that build. Teams that do not use the migration feature or only handle images they create can likely skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["c","embedded","littlefs","medium","package"],"campaign_type":null,"search_a":"'-129490':14A,17A '-2026':13A,16A 'craft':2A 'crash':5A 'cve':12A,15A 'devic':6A 'imag':4A 'littlef':1A 'migrat':8A 'read':11A 'stack':10A 'v1':3A 'via':9A","search_b":"'bound':54B 'bug':32B 'built':38B 'c':18B 'confus':31B 'craft':43B 'crash':55B 'dir':35B 'embed':19B,24B 'filesystem':26B 'flash':25B 'imag':46B 'lfs':34B,40B 'librari':27B 'littlef':20B,22B,44B 'make':47B 'memori':51B 'migrat':41B,48B 'packag':21B 'process':57B 'read':49B 'stack':50B 'travers':36B 'type':30B 'v1':45B","search_c":"'2.11.3':60C 'array':86C 'attack':87C 'attr':85C 'bound':109C 'built':62C 'caus':105C 'confus':69C 'contain':66C 'craft':91C 'crash':114C 'dir':73C 'diskoff':80C 'imag':94C 'lfs':64C,72C,79C,84C,100C 'littlef':58C,92C 'metadata':96C 'migrat':65C,104C 'out-of-bound':106C 'process':113C 'read':98C,111C 'stack':78C,110C 'struct':81C 'suppli':89C 'travers':74C 'treat':76C 'type':68C 'userattr':102C 'v1':93C 'vulner':70C 'whose':95C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-15T16:16:56+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/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-129490","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-129490","severity":null,"published_at":"2026-11-15T16:16:56+00:00","modified_at":"2026-11-15T16:16:56+00:00","first_seen_at":"2026-11-15T16:35:38+00:00","fetched_at":"2026-11-15T16:35:38+00:00","note":null}],"documents":[{"id":164396,"url":"https://www.vulncheck.com/advisories/littlefs-through-2.11.3-type-confusion-in-lfs-dir-traverse-via-lfs-migrate","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"}