| Título | marcobambini gravity v0.9.7 Heap-based Buffer Overflow |
|---|
| Descrição | The vendored udp/json-parser decodes integer tokens digit-by-digit with the accumulator top->u.integer = (top->u.integer * 10) + (b - '0') (src/utils/gravity_json.c:1126). Any JSON input containing an integer literal with more than 19 significant decimal digits (e.g. twenty 2s or twenty 9s) makes this signed 64-bit multiplication overflow, which is undefined behavior. In a build with -fsanitize=undefined -fno-sanitize-recover=all, UBSan detects integer multiplication overflowed and traps with SIGILL.
Affected versions: Gravity v0.9.7 / HEAD 17a280b83c10424597bf4d130d208b72de731c2a
Severity: Medium (wrong value / data corruption; SIGILL DoS in UBSan builds)
CWE: CWE-190 (Integer Overflow) |
|---|
| Fonte | ⚠️ https://github.com/marcobambini/gravity/issues/447 |
|---|
| Utilizador | lrrh (UID 100159) |
|---|
| Submissão | 08/08/2026 10h00 (há 1 mês) |
|---|
| Moderação | 13/09/2026 11h53 (1 month later) |
|---|
| Estado | Aceite |
|---|
| Entrada VulDB | 403269 [marcobambini Gravity até 0.9.7 udp json-parser src/utils/gravity_json.c Excesso de tampão] |
|---|
| Pontos | 20 |
|---|