From: Kostya Shishkov Date: Fri, 20 Mar 2026 17:54:09 +0000 (+0100) Subject: codec_support/msstructs: check WAVEFORMATEX.cbSize for validity X-Git-Url: https://git.nihav.org/?a=commitdiff_plain;h=a5be4704078610a47ba6d528ff377b4a738c18dd;p=nihav.git codec_support/msstructs: check WAVEFORMATEX.cbSize for validity --- diff --git a/nihav-codec-support/src/codecs/msstructs.rs b/nihav-codec-support/src/codecs/msstructs.rs index b1b10ec..1dc1558 100644 --- a/nihav-codec-support/src/codecs/msstructs.rs +++ b/nihav-codec-support/src/codecs/msstructs.rs @@ -179,7 +179,10 @@ impl MSWaveFormat { let mut extradata = None; if size > 16 { let cb_size = usize::from(src.read_u16le()?); - if cb_size > 0 { + if cb_size > 0 && size > 18 { + if cb_size > size - 18 { + return Err(ByteIOError::ReadError); + } let mut edata = vec![0; cb_size]; src.read_buf(&mut edata)?; extradata = Some(edata);