flatcc through 0.6.4 Out-of-Bounds Read via __flatcc_json_parser_number
Impact
flatcc through 0.6.4 contains an out-of-bounds read vulnerability in __flatcc_json_parser_number that allows attackers to read past the input buffer via numbers ending in a decimal point. Attackers can supply untrusted JSON ending immediately after a decimal point to generated parsers, crashing applications when the buffer ends at an unmapped page.
Source excerpt · VulnCheckAffected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
dvidelabs · flatcc
Other versions: unaffected
| Version / range | Source status |
|---|---|
| 0 through 0.6.4 (inclusive) | affected |
Original source description
flatcc through 0.6.4 contains an out-of-bounds read vulnerability in __flatcc_json_parser_number that allows attackers to read past the input buffer via numbers ending in a decimal point. Attackers can supply untrusted JSON ending immediately after a decimal point to generated parsers, crashing applications when the buffer ends at an unmapped page.
References
- Patch github.com/dvidelabs/flatcc/commit/356792dc155a9e685acdfe0ec1e209bdadcb4ab9
- Source reference github.com/dvidelabs/flatcc
- Source reference github.com/dvidelabs/flatcc/blob/v0.6.4/src/runtime/json_parser.c
- Source reference hackmd.io/@haindpwn/flatcc-json-number-oob-read
- Security advisory www.vulncheck.com/advisories/flatcc-through-0.6.4-out-of-bounds-read-via-flatcc-json-parser-number