ASA對TCP序列號擾亂測試

一.概述:

聽了yeslab的秦珂老師的ASA的課程,講到ASA對TCP的隨機初始化序列號擾亂功能,於是搭建環境進行測試,發現其實不僅對TCP初始化的序列號進行擾亂,對後續的TCP包序列號也會進行擾亂。

----後記:聽了後面的教程,才知道之所以叫初始化序列號擾亂,是因爲後續的變化都基於初始的序列號之上的,比如未擾亂前第一個SYN包ISN序列號爲A,第四個包的序列號爲B,擾亂後的第一個SYN包ISN序列號爲A',擾亂後的第四個包的序列號的B',那麼B-A=B'-A',即它們的差值總是相同的。

二.基本思路和結論:
A.搭建環境在ASA兩側進行抓包測試
B.抓包軟件顯示的相對隨機號,實際數據纔是真正的序列號
C.ASA不僅僅對TCP初始化包進行序列號擾亂,對其他的包也進行序列號擾亂
D.通過policy-map可以禁止讓ASA對序列號進行擾亂
三.測試拓撲:
223453812.jpg
四.基本配置:
A.Outside路由器:
interface Ethernet0/0
ip address 202.100.1.1 255.255.255.0
no shut
line vty 0 4
password cisco
login
ip route 0.0.0.0 0.0.0.0 202.100.1.10
B.ASA842防火牆:
interface GigabitEthernet0
nameif Outside
security-level 0
ip address 202.100.1.10 255.255.255.0
interface GigabitEthernet1
nameif DMZ
security-level 50
ip address 192.168.1.10 255.255.255.0
interface GigabitEthernet2
nameif Inside
security-level 100
ip address 10.1.1.10 255.255.255.0
C.Inside路由器:
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.0
no shut
ip route 0.0.0.0 0.0.0.0 10.1.1.10
五.TCP序列號擾亂測試:
A.沒有NAT情況下,Inside路由器Telnet Outside路由器

Inside路由器TCP第一個包:

223604839.jpg

----從抓包的註釋relative sequence number可以看到seq 0其實是相對值,真正的值爲D6D2CFDC。

Outside路由器TCP第一個包

223717681.jpg

---從兩個圖對比很容易看出,兩邊的syn包的序列號是不相同的,雖然相對值都是0。
Inside路由器TCP第四個包:
223822384.jpg
outside路由器TCP第四個包:

223933997.jpg

---四個截圖序列號的值:未擾亂前第一個包D6D2CFDC,未擾亂前第四個包D6D2CFDD,增加值爲1,擾亂後第一個包2F67830F,擾亂後四個包2F678310,增加值也爲1,這就是抓包軟件顯示相對值爲1的原因。

B.NAT情況下,Inside路由器Telnet Outside路由器

①PAT配置:

object network Inside_net
subnet 10.1.1.0 255.255.255.0
nat (Inside,Outside) dynamic interface

②抓包測試:
----發現跟沒有NAT情況相同,不僅僅是TCP初始化進行序列號擾亂,其他的包也會進行序列號擾亂

六.TCP序列號擾亂避免:

A.配置policy-map並應用:

access-list telnet extended permit tcp any any eq telnet
class-map noseqrandom
match access-list telnet
policy-map noseqrandom
class noseq
set connection random-sequence-numberdisable
service-policy noseqrandom interface Inside
B.Inside路由器telnet Outside路由器並在兩邊抓包測試:
----抓包可以發現兩邊的序列號保持一致(截圖略)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章