Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft schema ending on a digit
-
ExploitSubmit schema to flatcc lexer
-
ExecutionDigit-scan loop reads past buffer end
-
ImpactOne-byte heap over-read crashes process
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the application feed an attacker-controlled FlatBuffers schema buffer to flatcc's schema lexer (lex() in external/lex/luthor.c) and that the buffer be an exact-length input ending on a digit character - the digit-scan loop then advances one byte past the end marker q. The practical reachability is limited by deployment: flatcc is predominantly a build-time schema compiler, so remote/unauthenticated exploitation only applies if a service compiles or lexes untrusted schema text at runtime; in the common developer/CI usage the input is local. Impact is confined to a one-byte heap over-read causing a process crash - no memory write, no code execution, no data disclosure. Affects flatcc at commit 4c3b999e; fixed by the bounds-check commit c1dcc8e. |
| Impact | This is a memory-safety denial-of-service issue with a bounded, low-severity impact: a specially crafted FlatBuffers schema whose buffer ends on a digit drives the digit-scan loop in |
| Exploit ScenarioDerived | An attacker who can supply a FlatBuffers schema to an application that invokes flatcc's lexer at runtime crafts a schema whose buffer ends exactly on a digit; when the lexer scans the trailing integer it reads one byte past the buffer end, crashing the parsing process. No public exploit code is identified, though an upstream issue and fix commit exist. Impact is limited to a denial of service of the process handling the schema. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Supplying a FlatBuffers schema whose exact-length buffer terminates on a digit character pushes flatcc's schema lexer one byte past the end of the input, producing a single-byte heap over-read that crashes the process (denial of service). The defect lives in external/lex/luthor.c at flatcc commit 4c3b999e and requires the application to hand attacker-controlled schema text to lex(); in typical build-time and CI usage that input is local, so unauthenticated remote triggering only applies to services that compile or lex untrusted schemas at runtime (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:A:H). Impact is confined to availability - no memory write, no code execution and no data disclosure - and no public exploit identified at time of analysis.
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - apply commit c1dcc8ecd1a74b1e9e724ec7dc98828a5c95528e (https://github.com/jimjag/flatcc/commit/c1dcc8ecd1a74b1e9e724ec7dc98828a5c95528e), which bounds the digit-scan and decimal-point checks in lex(), and rebuild or repin any vendored flatcc checkout to a revision at or after it. Because the flaw is triggered by exact-length, non-terminated schema text, an effective compensating control is to copy untrusted schema input into a buffer with at least one trailing sentinel byte before lexing (the trade-off is an extra copy plus the need to audit every call site, since the lexer is also reached indirectly through schema-compilation paths); alternatively, if runtime schema compilation of untrusted text is not a business requirement, disable or remove that feature and keep schema compilation to trusted build-time/CI inputs, or run it in a sandboxed child process with memory limits and restart-on-crash so a one-byte over-read cannot take down the parent service. Restrict who can submit schema text to the lexer and monitor for repeated compiler crashes as an indicator of probing, while noting that none of these workarounds remove the underlying out-of-bounds read. Advisory references: https://nvd.nist.gov/vuln/detail/CVE-2026-88344 and https://github.com/dvidelabs/flatcc/issues/384.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
flatcc is a C implementation of FlatBuffers that includes a schema compiler; its lexer, implemented in external/lex/luthor.c, tokenizes .fbs schema text. The integer digit-scan loop relied on an implicit end-of-buffer sentinel: the original code read while (++p && lex_isdigit(*p)) together with if (*p '.'), which is only safe when the buffer is NUL-terminated beyond its declared length. When the caller passes an exact-length buffer with no trailing terminator and the final byte is a digit, the pre-increment walks past the end pointer q and dereferences the out-of-bounds address for a one-byte heap over-read; the fix (commit c1dcc8ecd1a74b1e9e724ec7dc98828a5c95528e) adds explicit bounds tests, while (++p != q && lex_isdigit(*p)) and if (p != q && *p '.'). The intelligence feed labels this CWE-22 (path traversal), which does not describe the code defect; the actual weakness class is an out-of-bounds read (CWE-125) in pointer arithmetic on a length-bounded buffer. CPE metadata is unassigned (cpe:2.3:a:n/a:n/a) and EUVD lists affected versions as "n/a n/a", so the affected artifact should be pinned by commit rather than by version string; there is no memory corruption primitive beyond the read, and the crash is the whole of the impact.
Know when N A gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Matches reporter vector for availability-only crash from crafted input; AV:N retained but only realistic when schemas are parsed from untrusted runtime input, otherwise effectively local.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.org
An out-of-bounds read vulnerability exists in the schema lexer of flatcc 4c3b999e. When an exact-length FlatBuffers schema buffer ends with a digit, the integer digit-scan loop in lex() advances past the end of the input buffer and dereferences the out-of-bounds pointer. A specially crafted schema can trigger a one-byte heap buffer over-read, resulting in application crash and denial of service.
Executive ViewAI
A heap over-read flaw in flatcc's FlatBuffers schema lexer (luthor.c) can crash processes that parse attacker-supplied schema text, creating a denial-of-service risk. Organizations are primarily exposed if they operate services that compile or lex untrusted schemas at runtime; typical build-time and CI usage with local schemas carries lower risk. There is no code execution or data disclosure, but availability of affected services and build pipelines could be disrupted.
No vendor-released patch identified at time of analysis; interim mitigations include refusing untrusted schema input, isolating the lexer in a sandboxed process with resource limits and automatic restart, restricting network access to services that lex schemas at runtime, and monitoring for crashes that indicate the over-read.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
EUVD-2026-84853
GHSA-m2cr-9jfr-rmxm
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB