mirror of
https://github.com/CCExtractor/ccextractor.git
synced 2026-04-19 04:22:49 +00:00
[PR #1975] Fix OOB read/write and length handling in CEA-608/708 decoders #2777
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Original Pull Request: https://github.com/CCExtractor/ccextractor/pull/1975
State: closed
Merged: Yes
In raising this pull request, I confirm the following (please check boxes):
My familiarity with the project is as follows (check one):
description
This change addresses multiple robustness and security issues in the CEA-608 and CEA-708 caption decoders.
The issues were triggered by malformed or truncated caption streams and could lead to out-of-bounds memory access or decoder desynchronization.
These issues did not appear to be previously reported.
Issues Identified
File: src/lib_ccx/ccx_decoders_608.c
Impact:
Potential out-of-bounds write → memory corruption and crashes.
File: src/lib_ccx/ccx_decoders_708.c
Impact:
Out-of-bounds read → crashes or processing of garbage data.
File: src/lib_ccx/ccx_decoders_708.c
Impact:
Increased likelihood of OOB reads and incorrect parsing behavior.
Fixes Implemented
CEA-608 Decoder
CEA-708 Decoder
Safely skip malformed EXT1 sequences without reading past buffer bounds.