InvalidChecksumInHeartbeat.seq - HEARTBEAT chunk is received with invalid checksum
To check that if HEARTBEAT chunk is received with invalid checksum, the endpoint should silently discards the HEARTBEAT.
./InvalidChecksumInHeartbeat.seq [-tooloption ...] -pkt ./InvalidChecksumInHeartbeat.def -tooloption : v6eval tool option See Also: ../common/STD_PKT_COMMON.def ../common/SCTP_COMMON.def
Association is established between endpoint A and B. Arrange data in endpoint A such that HEARTBEAT message is send to endpoint B with invalid checksum.
Endpoint A Endpoint B ULP (ESTABLISHED) (ESTABLISHED)
HEARTBEAT -----------------> Silently discard (with invalid checksum)
TEST DESCRIPTION:
1. Send HEARTBEAT message from endpoint A to B with wrong CRC-32 checksum, when there is no association between them. Record the message sequence using a signal emulator. 2. Check A: HEARTBEAT message is discarded and no other actions are taken. 3. Check B: Was the message sequence as above.
None
RFC 4960
1.5.6. Packet Validation
A mandatory Verification Tag field and a 32-bit checksum field (see Appendix B for a description of the CRC32c checksum) are included in the SCTP common header. The Verification Tag value is chosen by each end of the association during association startup. Packets received without the expected Verification Tag value are discarded, as a protection against blind masquerade attacks and against stale SCTP packets from a previous association. The CRC32c checksum should be set by the sender of each SCTP packet to provide additional protection against data corruption in the network. The receiver of an SCTP packet with an invalid CRC32c checksum silently discards the packet.