| Titolo | dvidelabs flatcc v0.6.3 Reachable Assertion |
|---|
| Descrizione | FlatBuffers structs must be acyclic (a struct's fields may only reference other structs by value if the graph is a DAG), but the parser does not reject mutually-recursive structs up front. analyze_struct() re-enters struct analysis while the fb_circular_open flag for the enclosing struct is still set (src/compiler/semantics.c:695), and the cycle trips an assertion that aborts the compile with SIGABRT.
Affected versions: flatcc v0.6.3
Severity: Medium (reachable assertion abort / SIGABRT; crash/DoS of the schema compiler)
CWE: CWE-617 (Reachable Assertion) |
|---|
| Fonte | ⚠️ https://github.com/dvidelabs/flatcc/issues/388 |
|---|
| Utente | lrrh (UID 100159) |
|---|
| Sottomissione | 08/08/2026 10:40 (1 mese fa) |
|---|
| Moderazione | 13/09/2026 15:01 (1 month later) |
|---|
| Stato | Accettato |
|---|
| Voce VulDB | 403291 [Dvidelabs flatcc fino a 0.6.3 Struct Analysis src/compiler/semantics.c analyze_struct negazione del servizio] |
|---|
| Punti | 20 |
|---|