From 50fc1dfbccb01a2d60f6c3ac17383083b2fa278f Mon Sep 17 00:00:00 2001 From: Victor Boivie Date: Fri, 9 Apr 2021 09:05:09 +0200 Subject: [PATCH] dcsctp: Add SCTP packet corpus Each file is a SCTP packet (without any additional headers), all extracted from a few Wireshark dumps that have been manually recorded. Bug: webrtc:12614 Change-Id: I64bef0c563f1d83ae22735d702c8abafec6429b9 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/214701 Commit-Queue: Victor Boivie Reviewed-by: Tommi Cr-Commit-Position: refs/heads/master@{#33675} --- test/fuzzers/BUILD.gn | 1 + test/fuzzers/corpora/README | 5 ++++- .../sctp-packet-corpus/cookie-ack-sack.bin | Bin 0 -> 32 bytes .../cookie-echo-data-data-data.bin | Bin 0 -> 396 bytes .../sctp-packet-corpus/cookie-echo-data-data.bin | Bin 0 -> 288 bytes .../sctp-packet-corpus/cookie-echo-data.bin | Bin 0 -> 288 bytes .../sctp-packet-corpus/data-fragment1.bin | Bin 0 -> 1212 bytes .../corpora/sctp-packet-corpus/forward-tsn.bin | Bin 0 -> 20 bytes .../corpora/sctp-packet-corpus/heartbeat-ack.bin | Bin 0 -> 56 bytes .../corpora/sctp-packet-corpus/heartbeat.bin | Bin 0 -> 56 bytes .../corpora/sctp-packet-corpus/init-ack.bin | Bin 0 -> 364 bytes test/fuzzers/corpora/sctp-packet-corpus/init.bin | Bin 0 -> 104 bytes .../corpora/sctp-packet-corpus/re-config.bin | Bin 0 -> 34 bytes .../corpora/sctp-packet-corpus/sack-data.bin | Bin 0 -> 672 bytes .../sctp-packet-corpus/sack-gap-ack-1.bin | Bin 0 -> 32 bytes 15 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/cookie-ack-sack.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data-data.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/data-fragment1.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/forward-tsn.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/heartbeat-ack.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/heartbeat.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/init-ack.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/init.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/re-config.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/sack-data.bin create mode 100644 test/fuzzers/corpora/sctp-packet-corpus/sack-gap-ack-1.bin diff --git a/test/fuzzers/BUILD.gn b/test/fuzzers/BUILD.gn index 5627a1befc..48af4b1cb0 100644 --- a/test/fuzzers/BUILD.gn +++ b/test/fuzzers/BUILD.gn @@ -620,6 +620,7 @@ webrtc_fuzzer_test("dcsctp_packet_fuzzer") { "../../net/dcsctp/packet:sctp_packet", "../../rtc_base:rtc_base_approved", ] + seed_corpus = "corpora/sctp-packet-corpus" } webrtc_fuzzer_test("rtp_header_parser_fuzzer") { diff --git a/test/fuzzers/corpora/README b/test/fuzzers/corpora/README index d29e169417..cc87025ff6 100644 --- a/test/fuzzers/corpora/README +++ b/test/fuzzers/corpora/README @@ -31,4 +31,7 @@ which header extensions to enable, and the first byte of the fuzz data is used for this. ### PseudoTCP ### -Very small corpus minimised from the unit tests. \ No newline at end of file +Very small corpus minimised from the unit tests. + +### SCTP ### +This corpus was extracted from a few manually recorder wireshark dumps. diff --git a/test/fuzzers/corpora/sctp-packet-corpus/cookie-ack-sack.bin b/test/fuzzers/corpora/sctp-packet-corpus/cookie-ack-sack.bin new file mode 100644 index 0000000000000000000000000000000000000000..4374f5aad510d05fd1e15bc81583390209ff86c5 GIT binary patch literal 32 kcmWgc5bnsi{(@b$G18fvfq{jYfkA+kX{|T|69X6k0EF8Gk^lez literal 0 HcmV?d00001 diff --git a/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data-data.bin b/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data-data.bin new file mode 100644 index 0000000000000000000000000000000000000000..1f1d0be301649315553af7c06bd533d9b5acb971 GIT binary patch literal 396 zcmWgc5bof+dx~RX?w8YC42&$^j=rwCPQfk;hI)n!K+yQjJOM7Y!~hg#OaR*flxKdy{34XY%)9|84^_i?fd60vP#Hr56N8E)ul8!?Ia@?; z&vt346L@Lux#7i^Rbm_8`~NnSYdNm;w1I_z4QMq(12Y3#!$AfH)9SWAoHAF-K5e|X zAvp5Kp6C8s{27=Tv_WnF8VLeM%n+J^fuDgPC9xziI5jWDIU_MIFEt0~AO;nn+Sd#~ zw}I6{yu=0c219aUK}lwQUNKOO7EsL_pywcJ8o@LJ10MrJVrfcdenC-wa%ypLeh~u$ E0O?^^IsgCw literal 0 HcmV?d00001 diff --git a/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data.bin b/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data-data.bin new file mode 100644 index 0000000000000000000000000000000000000000..21a0c22837219c534135a764534290b997824cc6 GIT binary patch literal 288 zcmWgc5bk)_-F9W_r5zWz7#LZ+9erJOoq}By4D}2dfZ%fc#CQ;$vWFK$F(kZVUp393m3lUQeBvo7Uj0qq+K=RBlm|uAC?`>`X%0ty~9^gON093}%z{H^9 zvULjoj}OP#CLX<6Z?j>Knd00%elBF}Szj8v`?gHpmSibwFSQ0IRr6SO5S3 literal 0 HcmV?d00001 diff --git a/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data.bin b/test/fuzzers/corpora/sctp-packet-corpus/cookie-echo-data.bin new file mode 100644 index 0000000000000000000000000000000000000000..fc8600106e8eea1c15a291266ada8d1618a104a1 GIT binary patch literal 288 zcmWgc5bnsi{({{>Y4KVv21XWdM_*T6r(hQaLp?(VAh;YqF&;$UP~rno3<<9o7%uAG zEnhUVvGz(^_dAeYMz9QmU;#3*iGfrI1MLIJGBQF`0LiF#-ECJGm>3wCUogM$;NRQa zz`($A0Einn7&s5`A8cp>>T6(PP)V>{=aaZHG~ew=xaN;ta-q*vf4lI%*%zv#C!Mf( z+U=SK76vwu#SP31Yz+q)fJQQ^fZPXU0L|uLU}ah>1~r%M0MO7xiJ467wS0SRIan&v ZnfUMSK6O}^ft|q;in)5Kh5BNs%|$`t01EetgG0<8Ci(v3$(K(*e;qu2^!3@(Z=VmcgZ!}~n2b)B zAfhN;CW*NHM%I8&pyeN5`4`zqe?IQMU!A92eRci92eEFAY!N9D!F)2TD8~f>b%(+x z`E`<#LWh*3rbn(v%{qk^St02L1uoSz)scLgv`00EtOhkh3VhO%9DZH$k&xls8IWU< zACRl5(SX5P83OguVYztJw=VD~d@cKJzuA4$?w;3st?VeD1_cU0PgT*?Ra;kUHVDT? zZSlE6rIag`vIKyTgMlcx-wUkoulo4FU>2wia8Wu*$Rw7u=O`M(% z)A5-Z<)<)Ust6_19>4U15)HaJ4Hi}VpQ@$qs-A#WO{o&H(9eNVKqqLw+E&s}N~F)NcUO7!c66_cX+Ut`G!ve?6n zB~yxrdAM<7(c`vWM+4_}8>7by=Kbd}a%jWxkds`QWcb0%;`H6y6>l6Cv!z)l=+y+w z7T4SH4CQ9ey}JQB$vB-}$JcnVk+^NIX9PTCnaB#UH3wCUogM$;NRQaz`($A0Einn7&s5`A8cr1 zU|?uqVo-6}I)(qohhuCLkKU}e*|5hJm%IMaEMK;zRGA3ZG_WwRF)#wvGBdC> z90Y1&XJqkq^mWyB3U*O2)H4K%FkFtG7!RUT_V9uzhJ;rP4B>oDwcDPhK4X7zJqP5L zNs$FK=Q&szc2tTWn=_e3) dBee8y#e!Owj>C1yn^RvfNaoF$V{mW5HvqmJXF31? literal 0 HcmV?d00001 diff --git a/test/fuzzers/corpora/sctp-packet-corpus/init.bin b/test/fuzzers/corpora/sctp-packet-corpus/init.bin new file mode 100644 index 0000000000000000000000000000000000000000..3fb4977d58a0cd44f08a64c0aa09deefc9e60c5c GIT binary patch literal 104 zcmWgc5bj_A0`WOVr!X=wM7`^7yTZW4z`*>1`Gp7n-sT1d29^Ur+`z%Wd4T_5LlaPK z0~3Qvg5^4&#Fe4>Zb!m3f9#SAeXjc3h5yaIP#rz#gvHZt*EFy&urUA)Y+z literal 0 HcmV?d00001 diff --git a/test/fuzzers/corpora/sctp-packet-corpus/sack-data.bin b/test/fuzzers/corpora/sctp-packet-corpus/sack-data.bin new file mode 100644 index 0000000000000000000000000000000000000000..fe4de63863ebf5fac885ee9651854bd012dc99e6 GIT binary patch literal 672 zcmWgc5bk)_-F9VuOms0b1A~AE|K9BkObigf&eX`tv{s7&C;wEF3M}ltke|@fK!b-j&XgW+?`RO021Qx}m{V+#HMotC%Gi z6&N)*q!^SoGXnWcQey6op5>0&`QA~*DItYrS$QEAKow22T1Zsb!fUK{K<| zq$JCf6kQV|b4y*5L?A2C!YEPK*wDz>(A2=#*vQn(iqXhPmZNcbM7FXq=d4W~vKv zye`ln6Wzq*WCPtKQ{$u*<20jWV{=Q8v*kG!@B4FuhvV-0=QB8j1R?GQ3kiUQytsi5 zXXmIExXlQ3H=)qBG&MChH8nOfBiGr9$%&~(2A06!wKOu