(网络安全)主动信息收集 第四层

由于大多数边界路由器以及防火墙 会对ICMP数据包无应答,因此我们考虑从传输层角度来发现、探测目标主机

基于TCP/UDP进行探测

  • 优点:
    - 结果更可靠一些
    - 被防火墙过滤的概率较低

  • 缺点:
    - 基于状态过滤的防火墙 可能过滤扫描
    - 全端口扫描速度慢

  • TCP探测思路
    - 未经请求的ACK——会收到目标主机返回的RST包 来判断目标是否在线
    - 发送SYN——对方可能会返回SYN/ACK、RST

  • UDP探测思路
    - 向目标主机发送一个udp数据包,如果目标的端口在主机上没有开放,目标主机会返回一个ICMP数据包告诉你你端口不可达

TCP发现

TCP是要经过三次握手之后,双方才开始进行通信
此时当我们没有进行连接,直接向目标主机发送ACK数据包

目标主机会返回给我们一个reset字段


首先利用Scapy构建数据包

i=IP()
t=TCP()
r=(i/t)  //构造数据包
r.display()
r[IP].dst =192.168.1.1  //设置地址
r[TCP].flags='A'
r.display()
a=sr1(r)

在这里插入图片描述

a.display()//查看包中的内容

收到目标主机返回的数据包,其中标志位(Flags)被置为了reset,由此我们得知 目标主机是存活的
在这里插入图片描述
同时我们通过抓包再看一下 可以看到标志位被置为reset
在这里插入图片描述
之后修改目标端口为11111(大概率不开放)
发现同样可以收到reset包

但有时此方法不奏效
(如下图对自己同一网段下的虚拟机发送同样的ack数据包)
在这里插入图片描述

同时 对刚刚不能够收到reset数据包的目标主机来说 更换端口也不会收到reset包
因此有结论: 能否收到来自目标主机的reset包与其端口是否开放无关 与目标主机对畸形数据包的配置有关 但同时 发现ping命令可以探测到目标主机在线 因此 我们要 通过多种工具对主机进行扫描

nmap

nmap 192.168.31.1-100 -PU3333 -sn //sn表示不进行端口扫描 udp方式

在这里插入图片描述
笔者进行第二次扫描时,发现又多出了几个结果 说明多次重复探测是有必要的
对目标地址进行扫描的过程中,进行抓包 又一次印证了 nmap使用的udp探测同样使用的原理是 如果目标主机的端口没有开放 但是主机存活 会返回一个ICMP端口不可达数据报 (同样的 nmap会对存活的主机再进行一次 域名反向解析 )

在这里插入图片描述
nmap 192.168.31.1-100 -PA3333 -sn //ack方式

没有发现任何主机
在这里插入图片描述
原理也是一样 发送畸形数据包 使目标主机返回一个 reset包 不过看来没有奏效
在这里插入图片描述

Hping3

hping3 -2 1.1.1.1 -c 1 //使用 udp进行探测

hping3 1.1.1.1 -c 1 (TCP)
可以看到的是 与nmap不同 hping3将一个标志位全为0的tcp数据包发往了目标 等待目标返回信息

在这里插入图片描述

小结:在目标主机设置禁止ping的情况下,我们可以考虑利用TCP/UDP协议来继续对目标主机进行探测
TCP方法的思路是 向目标主机发送畸形的TCP数据包 对方会返回 reset数据包
UDP方法的思路是 向目标主机关闭的端口发送数据包 对方会返回一个ICMP报文告知你端口不可达 从而判断目标主机是否存活

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值