| Title | Detect modification of IPv6 header IP dst address with Routing header and AH |
| CommandLine | ./HTR_A_In_DM_RH_ipv6h_dst.seq -pkt ./HTR_A_DM_RH.def -log 15.html -ti Detect modification of IPv6 header IP dst address with Routing header and AH |
| TestVersion | REL_2_1_1 |
| ToolVersion | REL_3_3_2 |
| Start | 2011/10/24 15:28:23 |
| Tn | /usr/local/v6eval//etc//tn.def |
| Nu | /usr/local/v6eval//etc//nut.def |
| Pkt | ./HTR_A_DM_RH.def |
| System | freebsd-i386 |
| TargetName | freebsd-head |
| HostName | ipv6-conf |
| Type | host |
| 15:28:23 | Start |
|
*** Target initialization phase *** Target: Clear all SAD and SPD entries |
|
| 15:28:23 |
vRemote(ipsecClearAll.rmt) ``/usr/local/v6eval//bin/freebsd-i386//ipsecClearAll.rmt -t freebsd-i386 -u root -p v6eval -d cuau0 -o 1 ''
Connected # # /sbin/setkey -c <<EOD spdflush; flush; EOD # # sendMessagesSync: never got /sbin/setkey -c <<EODspdflush;flush;EOD echo $status 0~ [EOT] |
| Target: Set SAD entries: src="3ffe:501:ffff:ff05:200:ff:fe00:c1c1" dst="3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8" spi=0x1000 mode=transport protocol=ah aalgo=hmac-md5 aalgokey=TAHITEST89ABCDEF | |
| 15:28:29 |
vRemote(ipsecSetSAD.rmt) ``/usr/local/v6eval//bin/freebsd-i386//ipsecSetSAD.rmt -t freebsd-i386 -u root -p v6eval -d cuau0 -o 1 src="3ffe:501:ffff:ff05:200:ff:fe00:c1c1" dst="3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8" spi=0x1000 mode=transport protocol=ah aalgo=hmac-md5 aalgokey=TAHITEST89ABCDEF ''
Connected
#
# /sbin/setkey -c <<EOD
add 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8
ah 0x1000
-m transport
-A hmac-md5 "TAHITEST89ABCDEF"
;
dump;
EOD
3ffe:501:ffff:ff05:200:ff:fe00:c1c1 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8
ah mode=transport spi=4096(0x00001000) reqid=0(0x00000000)
A: hmac-md5 54414849 54455354 38394142 43444546
seq=0x00000000 replay=0 flags=0x00000040 state=mature
created: Oct 25 11:06:43 2011 current: Oct 25 11:06:43 2011
diff: 0(s) hard: 0(s) soft: 0(s)
last: hard: 0(s) soft: 0(s)
current: 0(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 0 hard: 0 soft: 0
sadb_seq=0 pid=1374 refcnt=1
# # sendMessagesSync: never got /sbin/setkey -c <<EODadd 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8 ah 0x1000 -m transport -A hmac-md5 "TAHITEST89ABCDEF";dump;EOD
echo $status
0~
[EOT]
|
| Target: Set SPD entries: src="3ffe:501:ffff:ff05:200:ff:fe00:c1c1" dst="3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8" upperspec=any direction=in protocol=ah mode=transport | |
| 15:28:34 |
vRemote(ipsecSetSPD.rmt) ``/usr/local/v6eval//bin/freebsd-i386//ipsecSetSPD.rmt -t freebsd-i386 -u root -p v6eval -d cuau0 -o 1 src="3ffe:501:ffff:ff05:200:ff:fe00:c1c1" dst="3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8" upperspec=any direction=in protocol=ah mode=transport ''
Connected
#
# /sbin/setkey -c <<EOD
spdadd 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8
any
-P in ipsec
ah/transport/3ffe:501:ffff:ff05:200:ff:fe00:c1c1-3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8/require
;
spddump;
EOD
3ffe:501:ffff:ff05:200:ff:fe00:c1c1[any] 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8[any] any
in ipsec
ah/transport/3ffe:501:ffff:ff05:200:ff:fe00:c1c1-3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8/require
spid=17 seq=0 pid=1375
refcnt=1
# # sendMessagesSync: never got /sbin/setkey -c <<EODspdadd 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8 any -P in ipsec ah/transport/3ffe:501:ffff:ff05:200:ff:fe00:c1c1-3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8/require;spddump;EOD
echo $status
0~
[EOT]
|
|
*** Target testing phase *** |
|
| 15:28:40 | Start Capturing Packets (Link0) |
| 15:28:40 |
vSend(Link0,echo_request_from_host1_rh_ah) send echo_request_from_host1_rh_ah |
| 15:28:40 | vRecv(Link0,ns_to_router_linkaddr ns_to_router echo_reply_to_host1) timeout:6 cntLimit:0 seektime:0 recv echo_reply_to_host1 |
| 15:28:40 | vRecv(Link0,ns_to_router_linkaddr ns_to_router) timeout:6 cntLimit:0 seektime:0 recv ns_to_router_linkaddr |
| 15:28:45 |
vSend(Link0,na_from_router_linkaddr) send na_from_router_linkaddr |
| NC about Router was PROBE state, but now it's REACHABLE. | |
| 15:28:45 | vRecv(Link0,ns_to_router_linkaddr) timeout:6 cntLimit:0 seektime:0 vRecv() return status=1 |
| 15:28:51 | vRecv(Link0,ns_to_router_linkaddr) timeout:6 cntLimit:0 seektime:0 vRecv() return status=1 |
|
TN received echo reply from NUT to HOST1. |
|
| 15:28:57 |
vSend(Link0,echo_request_from_host1_ah_dm_rh_ipv6h_dst) send echo_request_from_host1_ah_dm_rh_ipv6h_dst |
| 15:28:57 | vRecv(Link0,ns_to_router_linkaddr ns_to_router echo_reply_to_host1) timeout:6 cntLimit:0 seektime:0 vRecv() return status=1 |
|
TN received no echo reply from NUT to HOST1. TN ignored the modified echo request packet. OK |
|
| 15:29:03 | End |
Frame_Ether (length:118) | Hdr_Ether (length:14) | | DestinationAddress = 00:1c:23:09:f4:e8 | | SourceAddress = 00:00:00:00:a0:a0 | | Type = 34525 | Packet_IPv6 (length:104) | | Hdr_IPv6 (length:40) | | | Version = 6 | | | TrafficClass = 0 | | | FlowLabel = 0 | | | PayloadLength = 64 | | | NextHeader = 43 | | | HopLimit = 64 | | | SourceAddress = 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 | | | DestinationAddress = 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8 | | Hdr_Routing (length:24) | | | NextHeader = 51 | | | HeaderExtLength = 2 | | | RoutingType = 0 | | | SegmentsLeft = 0 | | | Reserved = 0 | | | Address = 3ffe:501:ffff:ff05:200:ff:fe00:a0a0 | | Hdr_AH (length:24) | | | NextHeader = 58 | | | PayloadLength = 4 | | | Reserved = 0 | | | SPI = 4096 | | | SequenceNumber = 2 | | | algorithm = aalgo_hmacmd5_012 | | | ICV = 452bcedd df749077 ca479e4e calc(452bcedd df749077 ca479e4e) | | ICMPv6_EchoRequest (length:16) | | | Type = 128 | | | Code = 0 | | | Checksum = 46407 calc(46407) | | | Identifier = 0 | | | SequenceNumber = 0 | | | Payload (length:8) | | | | data = 4563686f 44617461
Frame_Ether (length:70)
| Hdr_Ether (length:14)
| | DestinationAddress = 00:00:00:00:a0:a0
| | SourceAddress = 00:1c:23:09:f4:e8
| | Type = 34525
| Packet_IPv6 (length:56)
| | Hdr_IPv6 (length:40)
| | | Version = 6
| | | TrafficClass = 0
| | | FlowLabel = 0
| | | PayloadLength = 16
| | | NextHeader = 58
| | | HopLimit = 64
| | | SourceAddress = 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8
| | | DestinationAddress = 3ffe:501:ffff:ff05:200:ff:fe00:c1c1
| | ICMPv6_EchoReply (length:16)
| | | Type = 129
| | | Code = 0
| | | Checksum = 46151 calc(46151)
| | | Identifier = 0
| | | SequenceNumber = 0
| | | Payload (length:8)
| | | | data = 4563686f 44617461
===ns_to_router_linkaddr=================================
ng compare _HDR_IPV6_ns_to_router_linkaddr.HopLimit received:64 = 255
ng compare _HDR_IPV6_ns_to_router_linkaddr.DestinationAddress received:3ffe:501:ffff:ff05:200:ff:fe00:c1c1 = oneof(v6("fe80::200:ff:fe00:a0a0"),v6merge("FF02:0:0:0:0:1:FF00:0000",104,v6("fe80::200:ff:fe00:a0a0")))
ng meta Packet_IPv6.ICMPv6_NS != Packet_IPv6.ICMPv6_EchoReply
===ns_to_router=================================
ng compare _HDR_IPV6_ns_to_router.HopLimit received:64 = 255
ng compare _HDR_IPV6_ns_to_router.DestinationAddress received:3ffe:501:ffff:ff05:200:ff:fe00:c1c1 = oneof(v6("3ffe:501:ffff:ff03:200:ff:fe00:a0a0"),v6merge("FF02:0:0:0:0:1:FF00:0000",104,v6("3ffe:501:ffff:ff03:200:ff:fe00:a0a0")))
ng meta Packet_IPv6.ICMPv6_NS != Packet_IPv6.ICMPv6_EchoReply
===echo_reply_to_host1=================================
Frame_Ether (length:86) | Hdr_Ether (length:14) | | DestinationAddress = 00:00:00:00:a0:a0 | | SourceAddress = 00:1c:23:09:f4:e8 | | Type = 34525 | Packet_IPv6 (length:72) | | Hdr_IPv6 (length:40) | | | Version = 6 | | | TrafficClass = 0 | | | FlowLabel = 0 | | | PayloadLength = 32 | | | NextHeader = 58 | | | HopLimit = 255 | | | SourceAddress = fe80::21c:23ff:fe09:f4e8 | | | DestinationAddress = fe80::200:ff:fe00:a0a0 | | ICMPv6_NS (length:32) | | | Type = 135 | | | Code = 0 | | | Checksum = 1988 calc(1988) | | | Reserved = 0 | | | TargetAddress = fe80::200:ff:fe00:a0a0 | | | Opt_ICMPv6_SLL (length:8) | | | | Type = 1 | | | | Length = 1 | | | | LinkLayerAddress = 00:1c:23:09:f4:e8 ===ns_to_router_linkaddr=================================
Frame_Ether (length:86) | Hdr_Ether (length:14) | | DestinationAddress = 00:1c:23:09:f4:e8 | | SourceAddress = 00:00:00:00:a0:a0 | | Type = 34525 | Packet_IPv6 (length:72) | | Hdr_IPv6 (length:40) | | | Version = 6 | | | TrafficClass = 0 | | | FlowLabel = 0 | | | PayloadLength = 32 | | | NextHeader = 58 | | | HopLimit = 255 | | | SourceAddress = fe80::200:ff:fe00:a0a0 | | | DestinationAddress = 3ffe:501:ffff:ff03:21c:23ff:fe09:f4e8 | | ICMPv6_NA (length:32) | | | Type = 136 | | | Code = 0 | | | Checksum = 22446 calc(22446) | | | RFlag = 1 | | | SFlag = 1 | | | OFlag = 1 | | | Reserved = 0 | | | TargetAddress = fe80::200:ff:fe00:a0a0 | | | Opt_ICMPv6_TLL (length:8) | | | | Type = 2 | | | | Length = 1 | | | | LinkLayerAddress = 00:00:00:00:a0:a0
Frame_Ether (length:118) | Hdr_Ether (length:14) | | DestinationAddress = 00:1c:23:09:f4:e8 | | SourceAddress = 00:00:00:00:a0:a0 | | Type = 34525 | Packet_IPv6 (length:104) | | Hdr_IPv6 (length:40) | | | Version = 6 | | | TrafficClass = 0 | | | FlowLabel = 0 | | | PayloadLength = 64 | | | NextHeader = 43 | | | HopLimit = 64 | | | SourceAddress = 3ffe:501:ffff:ff05:200:ff:fe00:c1c1 | | | DestinationAddress = 3ffe:501:ffff:ff03:200:ff:fe00:b0b0 | | Hdr_Routing (length:24) | | | NextHeader = 51 | | | HeaderExtLength = 2 | | | RoutingType = 0 | | | SegmentsLeft = 0 | | | Reserved = 0 | | | Address = 3ffe:501:ffff:ff05:200:ff:fe00:a0a0 | | Hdr_AH (length:24) | | | NextHeader = 58 | | | PayloadLength = 4 | | | Reserved = 0 | | | SPI = 4096 | | | SequenceNumber = 3 | | | ICV = calc() | | | Padding = 99cfcc2f 94694266 d34af5e7 | | ICMPv6_EchoRequest (length:16) | | | Type = 128 | | | Code = 0 | | | Checksum = 41123 calc(7333) | | | Identifier = 0 | | | SequenceNumber = 0 | | | Payload (length:8) | | | | data = 4563686f 44617461