Test IKEv2.EN.R.1.1.4.4: Unrecognized payload types and critical bit is set Part C: Invalid payload type 49 and Critical bit is set (BASIC)
To verify an IKEv2 device drops invalid payload types when the invalid type payload's critical bit is set.
* [RFC 4306] - Sections 2.5
* Network Topology Connect the devices according to the Common Topology. * Configuration In each part, configure the devices according to the Common Configuration. * Pre-Sequence and Cleanup Sequence IKEv2 on the NUT is disabled after each part.
NUT TN1 (End-Node) (End-Node) | | |<-------------------| IKE_SA_INIT request (HDR, SAi1, KEi, Ni) | | (Packet #1) |------------------->| IKE_SA_INIT Response (HDR, SAr1, KEr, Nr) | | (Judgement #1) | | |<-------------------| IKE_AUTH request (HDR, SK {IDi, AUTH, N+, SAi2, TSi, TSr}) | | (Packet #2) |------------------->| IKE_AUTH response (HDR, SK {IDr, AUTH, N+, SAr2, TSi, TSr}) | | (Judgement #2) | | |<-------------------| CREATE_CHILD_SA request (HDR, SK {iP, N, N+, SA, Ni, TSi, TSr}) | | (Packet #3) |--------X | No Response | | or |------------------->| CREATE_CHILD_SA response (HDR, SK {N(UNSUPPORTED_CRITICAL_PAYLOAD)}) | | (Judgement #3) | | V V P: Payload with an invalid payload type N: REKEY_SA N+: USE_TRANSPORT_MODE
Packet #1 See Common Packet #1 Packet #2 See Common Packet #3 Packet #3 See below
Packet #3: CREATE_CHILD_SA request
IPv6 Header All fields are same as Common Packet #13 Payload UDP Header All fields are same as Common Packet #13 Payload IKEv2 Header All fields are same as Common Packet #13 Payload E Payload Next Payload Invalid payload type value Other fields are same as Common Packet #13 Invalid Payload Next Payload 41(N) Critical 1 Reserved 0 Payload Length 4 N Payload All fields are same as Common Packet #13 Payload N Payload All fields are same as Common Packet #13 Payload SA Payload All fields are same as Common Packet #13 Payload Ni, Nr paylaod All fields are same as Common Packet #13 Payload TSi Payload All fields are same as Common Packet #13 Payload TSr Payload All fields are same as Common Packet #13 Payload
Part C: Invalid payload type 49 and Critical bit is set (BASIC) 13. TN1 starts to negotiate with NUT by sending IKE_SA_INIT request. 14. Observe the messages transmitted on Link A. 15. After reception of IKE_SA_INIT response from the NUT, TN transmits an IKE_AUTH request to the NUT. 16. Observe the messages transmitted on Link A. 17. After reception of IKE_AUTH response from the NUT, TN1 transmits an CREATE_CHILD_SA request including a payload invalid payload type to the NUT. The CREATE_CHILD_SA request's IKE Header Next Payload field is set to 49 and the pointed pyaload's Critical bit is set. 18. Observe the messages transmitted on Link A.
Part C Step 14: Judgment #1 The NUT transmits an IKE_SA_INIT response including "ENCR_3DES", "PRF_HMAC_SHA1", "AUTH_HMAC_SHA1_96" and "D-H group 2" as accepted algorithms.
Step 16: Judgment #2 The NUT transmits an IKE_AUTH response including "ENCR_3DES", "AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as accepted algorithms.
Step 18: Judgment #3 The NUT doest not transmit any packets or transmits an CREATE_CHILD_SA response with a Notify payload of type UNSUPPORTED_CRITICAL_PAYLOAD with the invalid payload type value (49).
* None.