NAME

  R_RFC2408_5_2_P2_2_HEADER - [Responder Test] Check the Next Payload field to confirm it is valid


TARGET

  End-Node


SYNOPSIS

  R_RFC2408_5_2_P2_2_HEADER.seq [-tooloption ...] -pkt R_RFC2408_5_2_P2_2_HEADER.def -tooloption : v6eval tool option
  See also ike_common.def and ike_ipsec.def and ike_addr.def and ike_pkt_ph1_recv.def and ike_pkt_ph2_recv.def


INITIALIZATION


TEST PROCEDURE

  This test check is following.

* PHASE I
Either IDENTITY PROTECTION EXCHANGE or AGGRESSIVE EXCHANGE is performed as a pre sequence.

IDENTITY PROTECTION EXCHANGE
# Initiator(TN) Direction Responder(NUT) (1) HDR; SA ========>
(2) <======== HDR; SA
(3) HDR; KE; NONCE ========>
(4) <======== HDR; KE; NONCE
(5) HDR*; IDii; HASH_I ========>
(6) <======== HDR*; IDir; HASH_R
1. Send the first message from TN In the first message (1), the initiator generates a proposal it considers adequate to protect traffic for the given situation. The Security Association, Proposal, and Transform payloads are included in the Security Association payload (for notation purposes).
2. Receive the second message from NUT In the second message (2), the responder indicates the protection suite it has accepted with the Security Association, Proposal, and Transform payloads.
3. Send the third message from TN In the third (3) message, the initiator send keying material used to arrive at a common shared secret and random information which is used to guarantee liveness and protect against replay attacks.
4. Receive the fourth message from NUT In the fourth (4) message, the responder send keying material used to arrive at a common shared secret and random information which is used to guarantee liveness and protect against replay attacks.
5. Send the fifth message from TN In the fifth (5) message, the initiator send identification information and the results of the agreed upon authentication function(hash function).
6. Receive the sixth message from NUT In the sixth (6) message, the responder send identification information and the results of the agreed upon authentication function(hash function).

AGGRESSIVE EXCHANGE
# Initiator(TN) Direction Responder(NUT) NOTE (1) HDR; SA; KE; => Begin ISAKMP-SA or Proxy negotiation NONCE; IDii and Key Exchange
(2) <= HDR; SA; KE; NONCE; IDir; AUTH Initiator Identity Verified by Responder Key Generated Basic SA agreed upon
(3) HDR*; AUTH => Responder Identity Verified by Initiator SA established
1. Send the first message from TN In the first message (1), the initiator generates a proposal it considers adequate to protect traffic for the given situation. The Security Association, Proposal, and Transform payloads are included in the Security Association payload (for notation purposes). There can be only one Proposal and one Transform offered (i.e. no choices) in order for the aggressive exchange to work. Keying material used to arrive at a common shared secret and random information which is used to guarantee liveness and protect against replay attacks are also transmitted. Random information provided by both parties SHOULD be used by the authentication mechanism to provide shared proof of participation in the exchange. Additionally, the initiator transmits identification information.
2. Recieve the second message from NUT In the second message (2), the responder indicates the protection suite it has accepted with the Security Association, Proposal, and Transform payloads. Keying material used to arrive at a common shared secret and random information which is used to guarantee liveness and protect against replay attacks is also transmitted. Random information provided by both parties SHOULD be used by the authentication mechanism to provide shared proof of participation in the exchange. Additionally, the responder transmits identification information. All of this information is transmitted under the protection of the agreed upon authentication function. Local security policy dictates the action of the responder if no proposed protection suite is accepted. One possible action is the transmission of a Notify payload as part of an Informational Exchange.
3. Send the third message from TN In the third (3) message, the initiator transmits the results of the agreed upon authentication function. This information is transmitted under the protection of the common shared secret. Local security policy dictates the action if an error occurs during these messages. One possible action is the transmission of a Notify payload as part of an Informational Exchange.

The test sequence is following.
* PHASE II
QUICK MODE
# Initiator(TN) Direction Responder(NUT) (1) HDR*, HASH(1), SA, Ni ========> <-----Next Payload field(ISAKMP Header) : 127(invalid)
(2-A) X <======== HDR*, HASH(2), SA, Nr <-----Must not transmit or (2-B) <======== HDR*, HASH(1), N/D; Judgement (Check *1)
1. Send the first message from TN In the first message (1), the initiator generates a proposal it considers adequate to protect traffic for the given situation. The Security Association, Proposal, and Transform payloads are included in the Security Association payload (for notation purposes). And initiator send HASH(1) and Nonce. HASH(1) is the prf over the message id (M-ID) from the ISAKMP header concatenated with the entire message that follows the hash including all payload headers, but excluding any padding added for encryption. Nonce is random information which is used to guarantee liveness.
2. Receive the second message from NUT In the second message (2-B), the responder indicates either an ISAKMP Notify Payload or an ISAKMP delete Payload.


JUDGEMENT

        In Phase I , messages must be exchanged correctly.
        In Phase II , the first message must not be accepted. 
        And the second message(2-A) must not be returned
        (* or INVALID-PAYLOAD-TYPE  message(2-B) is returned).


TERMINATION

  Clean up SAD and SPD


REFERENCE

  RFC2408
  5.2 ISAKMP Header Processing

When creating an ISAKMP message, the transmitting entity (initiator or responder) MUST do the following:
1. Create the respective cookie. See section 2.5.3 for details.
2. Determine the relevant security characteristics of the session (i.e. DOI and situation).
3. Construct an ISAKMP Header with fields as described in section 3.1.
4. Construct other ISAKMP payloads, depending on the exchange type.
5. Transmit the message to the destination host as described in section5.1.
When an ISAKMP message is received, the receiving entity (initiator or responder) MUST do the following:
1. Verify the Initiator and Responder "cookies". If the cookie validation fails, the message is discarded and the following actions are taken:
(a) The event, INVALID COOKIE, MAY be logged in the appropriate system audit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-COOKIE message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
2. Check the Next Payload field to confirm it is valid. If the Next Payload field validation fails, the message is discarded and the following actions are taken:
(a) The event, INVALID NEXT PAYLOAD, MAY be logged in the appropriate system audit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-PAYLOAD-TYPE message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
3. Check the Major and Minor Version fields to confirm they are correct (see section 3.1). If the Version field validation fails, the message is discarded and the following actions are
(a) The event, INVALID ISAKMP VERSION, MAY be logged in the appropriate system audit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-MAJOR-VERSION or INVALID-MINOR- VERSION message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
4. Check the Exchange Type field to confirm it is valid. If the Exchange Type field validation fails, the message is discarded and the following actions are taken:
(a) The event, INVALID EXCHANGE TYPE, MAY be logged in the appropriate system audit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-EXCHANGE-TYPE message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
5. Check the Flags field to ensure it contains correct values. If the Flags field validation fails, the message is discarded and the following actions are taken:
(a) The event, INVALID FLAGS, MAY be logged in the appropriate systemaudit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-FLAGS message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
6. Check the Message ID field to ensure it contains correct values. If the Message ID validation fails, the message is discarded and the following actions are taken:
(a) The event, INVALID MESSAGE ID, MAY be logged in the appropriate system audit file.
(b) An Informational Exchange with a Notification payload containing the INVALID-MESSAGE-ID message type MAY be sent to the transmitting entity. This action is dictated by a system security policy.
7. Processing of the ISAKMP message continues using the value in the Next Payload field.
(omit)


SEE ALSO

  perldoc V6evalTool
  IKE.html IKE Test Common Utility