You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Security P0: reject malformed MMS BIT STRING before reporting bit iteration #132
Repro: Security and Evidence workflow run 36316147544, Clang/libFuzzer reporting corpus, ASan heap-buffer-overflow at src/mms/reporting.cpp:141 in decode_bit_field.
Root cause: a one-byte raw BIT STRING with an unused-bit count 1..7 yields zero payload bits; unsigned payload_bytes*8-unused underflows and the decoder reads outside the byte vector. The fuzzer found this while exercising report inclusion/option fields.
Fix must be isolated from GUI PR #130 and must fail closed on malformed BIT STRING. Add regression for empty payload with nonzero unused count and zero-payload valid empty field; rerun test_reporting and sanitizer fuzz corpus. Do not weaken/skip Security and Evidence.
2026-10-23 cleanup disposition Resolved in current main and preserved in #286:src/mms/reporting.cpp::decode_bit_field rejects unused > payload_bits before subtraction; tests/test_reporting.cpp::empty_payload_bit_string_unused_bits_fail_closed exercises malformed empty payload for option fields/inclusion, with valid padding retained. Close this already-fixed security issue; regression test remains, no code deletion.
Activity