]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
smb: check on param parsing
authorPhilippe Antoine <contact@catenacyber.fr>
Mon, 4 Apr 2022 20:45:56 +0000 (22:45 +0200)
committerJason Ish <jason.ish@oisf.net>
Tue, 19 Apr 2022 21:59:14 +0000 (15:59 -0600)
Ticket: 5246

so as not to overflow u16

(cherry picked from commit 817a5001a50a90800547e66fef067c0443eb9f72)

rust/src/smb/smb1_records.rs

index 24d48a94853f34f0b44cb738d495a80216273caf..a27b9a9e43183c430af84273f734cfb5064ea12e 100644 (file)
@@ -666,7 +666,7 @@ named!(pub parse_smb_trans2_request_record<SmbRequestTrans2Record>,
         >>  _timeout: le_u32
         >>  _reserved2: take!(2)
         >>  param_cnt: le_u16
-        >>  _param_offset: le_u16
+        >>  _param_offset: verify!(le_u16, |v| v <= (0xffffu16 - param_cnt))
         >>  data_cnt: le_u16
         >>  _data_offset: le_u16
         >>  _setup_cnt: le_u8