ASA对TCP序列号扰乱测试

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介:
一.概述:

听了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-number disable
service-policy noseqrandom interface Inside
B.Inside路由器telnet Outside路由器并在两边抓包测试:
----抓包可以发现两边的序列号保持一致(截图略)



本文转自 碧云天 51CTO博客,原文链接:http://blog.51cto.com/333234/1303915,如需转载请自行联系原作者
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
基于阿里云,构建一个企业web应用上云经典架构,让IT从业者体验企业级架构的实战训练。
相关文章
|
8天前
|
网络协议 安全 测试技术
手撕测试tcp服务器效率工具——以epoll和io_uring对比为例
手撕测试tcp服务器效率工具——以epoll和io_uring对比为例
54 2
|
网络协议 测试技术
软件测试|TCP三次握手四次挥手
软件测试|TCP三次握手四次挥手
114 0
软件测试|TCP三次握手四次挥手
|
网络协议 Python
Python 计算与伪造TCP序列号
**计算TCP序列号:** 通过发送`TCP SYN`数据包来从依次收到的`SYN/ACK`包中计算TCP序列号之差,查看是否存在可被猜测的规律。
121 0
|
网络协议 Linux 网络安全
2022-渗透测试-信息收集-Metasploit(基于TCP协议)
2022-渗透测试-信息收集-Metasploit(基于TCP协议)
2022-渗透测试-信息收集-Metasploit(基于TCP协议)
|
网络协议 测试技术
软件测试面试题:tcp 和 udp 的区别?
软件测试面试题:tcp 和 udp 的区别?
84 0
|
网络协议 测试技术 网络架构
软件测试面试题:OSI的各个层?tcp/udp位于哪一层?tcp/udp的优缺点?
软件测试面试题:OSI的各个层?tcp/udp位于哪一层?tcp/udp的优缺点?
95 0
|
网络协议 Linux C++
如何进行千万级TCP连接测试
如何进行千万级TCP连接测试
482 0
|
负载均衡 网络协议 Java
Jmeter测试TCP最大连接数
Jmeter测试TCP最大连接数
608 0
|
缓存 网络协议 网络性能优化
测试理论--TCP协议和UDP协议的特点和区别
TCP协议和UDP协议的特点和区别
327 0
|
网络协议 测试技术
gprs实用技巧:gprs模块tcp连接稳定性测试
gprs实用技巧:gprs模块tcp连接稳定性测试
gprs实用技巧:gprs模块tcp连接稳定性测试

热门文章

最新文章