Test IKEv2.EN.I.1.1.6.10: Response with inconsistent proposal for CHILD_SA
Part A: (BASIC)
To verify an IKEv2 device properly handles a response with a SA payload which is
inconsistent with one of its proposals.
* [RFC 4306] - Sections 2.7 and 3.3
* 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)
| | (Judgement #1)
|<-------------------| IKE_SA_INIT Response (HDR, SAr1, KEr, Nr)
| | (Packet #1)
| |
|------------------->| IKE_AUTH request (HDR, SK {IDi, AUTH, N, SAi2, TSi, TSr})
| | (Judgement #2)
|<-------------------| IKE_AUTH Response (HDR, SK {IDr, AUTH, N, SAr2, TSi, TSr})
| | (Packet #2)
| |
|<-------------------| IPSec {Echo Request}
| | (Packet #3)
|----------X | IPSec {Echo Reply}
| | (Judgement #3)
| |
V V
N: USE_TRANSPORT_MODE
| Packet #1 |
See Common Packet #2 |
| Packet #2 |
See below |
| Packet #3 |
See Common Packet #19 |
Packet #1: IKE_SA_INIT response
| IPv6 Header |
Same as the Common Packet #4 |
| UDP Header |
Same as the Common Packet #4 |
| IKEv2 Header |
Same as the Common Packet #4 |
| E Payload |
Same as the Common Packet #4 |
| IDr Payload |
Same as the Common Packet #4 |
| AUTH Payload |
Same as the Common Packet #4 |
| N Payload |
Same as the Common Packet #4 |
| SA Payload |
See below |
| TSi Payload |
Same as the Common Packet #4 |
| TSr Payload |
Same as the Common Packet #4 |
| SA Payload |
Next Payload |
44 (TSi) |
| Critical |
0 |
| Reserved |
0 |
| Payload Length |
44 |
| Proposal #1 |
SA Proposal |
Next Payload |
0 (last) |
| Reserved |
0 |
| Proposal Length |
40 |
| Proposal # |
1 |
| Protocol ID |
3 (ESP) |
| SPI Size |
4 |
| # of Transforms |
3 |
| SA Transform |
See below |
| SA Transform |
Next Payload |
3 (more) |
| Reserved |
0 |
| Transform Length |
8 |
| Transform Type |
3 (INTEG) |
| Reserved |
0 |
| Transform ID |
2 (HMAC_SHA1_96) |
| SA Transform |
Next Payload |
0 (last) |
| Reserved |
0 |
| Transform Length |
8 |
| Transform Type |
5 (Extended Sequence Number) |
| Reserved |
0 |
| Transform ID |
0 (No Extended Sequence Number) |
| SA Transform |
Next Payload |
3 (more) |
| Reserved |
0 |
| Transform Length |
12 |
| Transform Type |
1 (ENCR) |
| Reserved |
0 |
| Transform ID |
12 (AES_CBC) |
| SA Attribute |
Attribute Type |
14 (Key Length) |
| Attribute Value |
128 |
Part A: (BASIC)
1. NUT starts to negotiate with TN1 by sending IKE_SA_INIT request.
2. Observe the messages transmitted on Link A.
3. TN1 responds with an IKE_SA_INIT response to the NUT.
4. Observe the messages transmitted on Link A.
5. TN1 responds with an IKE_AUTH response to the NUT. But the response includes a SA
payload which has a different Transform ID from the proposed one.
6. TN1 transmits an Echo Request with IPsec ESP using ENCR_AES_CBC and
AUTH_HMAC_SHA1_96.
7. Observe the messages transmitted on Link A.
Part A
Step 2: Judgment #1
The NUT transmits an IKE_SA_INIT request including "ENCR_AES_CBC",
"PRF_HMAC_SHA1", "AUTH_HMAC_SHA1_96" and "D-H group 2" as proposed
algorithms.
Step 4: Judgment #2
The NUT transmits an IKE_AUTH request including "ENCR_3DES",
"AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as proposed algorithms.
Step 7: Judgment #3
The NUT never transmits an Echo Reply with IPsec ESP using ENCR_AES_CBC and
AUTH_HMAC_SHA1_96.
* Step 7
The NUT may transmit or retransmit an IKE_AUTH request. And the NUT may notify
INVALID_SPI.