'Getting malfortmed packet for SCTP using scapy

Tried with most parameter changes in scapy functions to send a valid sctp packet to system to process, but Wireshark shows as malformed packet. Changed TLVs in functions as described in -https://scapy.readthedocs.io/en/latest/api/scapy.layers.sctp.html

Ex i=150 (payload size as 150-random string)

interactive mode:

plain_txt=IPv6(version=6,fl=i,src='2001:0000:0000:0000:1122:3344:5566:7788',dst='2001:0000:1000:0000:1122:3344:5566:7788')/IPv6ExtHdrFragment()/SCTP(sport=2152,dport=2152)/SCTPChunkHeartbeatReq()/Raw(RandString(150)) a = Ether(src="00:00:00:00:00:01",dst="12:12:12:12:12:12",type=0x86DD)/plain_txt a Ether dst=12:12:12:12:12:12 src=00:00:00:00:00:01 type=IPv6 |<IPv6 version=6 fl=150 nh=Fragment Header src=2001::1122:3344:5566:7788 dst=2001:0:1000:0:1122:3344:5566:7788 |<IPv6ExtHdrFragment nh=SCTP |<SCTP sport=2152 dport=2152 |<SCTPChunkHeartbeatReq |<Raw load='xjYoY5KjcjnD8yGdMsLMi0rL188DYFN8heSEA4VTYwoX3qe1YAbVoHFYzBbuS8PM9YY8pzLcVnoOtlK86sxwIlbk9q4TthsMOx879KFgLz9LCRrxrOVRvJvqZiKtVd9DfonJ8Y77zBELqZGQM9jqIy wrpcap("/home/dir/sctp_plain.pcap",a,append=True)

a.show() shows properly

I want to send a valid sctp pkt (any sctp pkt)



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source