欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

程序员文章站 2022-05-17 08:34:25
...

三层发现

二层发现使用的技术是arp协议。
三层使用的是IP、ICMP协议。
ICMP协议:internet控制管理协议,用来做网络的控制管理使用的。主要的作用是进行一些路径的发现、主机网络通断的侦测。
三层协议优点:

  • 可路由
  • 速度比较快。
    缺点:
  • 速度比二层慢
  • 经常被边界防火墙过滤。发数据包,但是目标机器没有给我相应,我的扫描软件就会判断目标机器是不在线的状态,就会出现错误的判断结果,这是无法回避的问题。

1.ping

ping命令使用的是ICMP的其中两种类型的数据包。
ICMP协议会根据ICMP包头的type字段,一共有0-15个定义,每种定义都表示一种不同的包的类型,他的用途也不一样。
我们在发送ping包的时候,我们发送ping包的机器发出的就是ICMP的type8,即第8号类型的数据包,而接收到ping包的机器,如果他没有防火墙过滤,可以正常的ping包的返回相应,他返回的其实是ICMP的type0,0号类型的ICMP数据包。

windows发送ping包默认发送4个,Linux会不停止的发送ping包。
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

ping命令

ping 1.1.1.1 -c 5 #ping 1.1.1.1,发送5个ping包
#-c:ping包的个数
ping -R ip #和traceroute命令作用类似
ping 1.1.1.1 -c 1 |grep "fytes from" |cut -d " " -f 4 |cut -d ":" -f 1 #只获取到最后返回的ip结果

第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
本机发送的ping包,数据包头中type=8:
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
收到的响应的ping包,数据包头中type=0
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

2.traceroute

traceroute #追踪路由

第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
补充:
ip包头里的ttl值,不同操作系统的ttl不同,可以通过抓包看到。
linux或unix系统默认ttl值是64,每经过一跳路由器会减1,经过多少跳,最终会减掉多少把这个包到达目标服务器。

traceroute和ping不同的是,traceroute会先设定自己的ttl值是1,当把这个包发送到第一跳路由器,路由器会减1变成0,这一跳路由器看到包的ttl值已经变成0,就会直接回一个包,并且会提示ttl值已经到头了“time to exceeded in transit”,通过ttl值方式来实现每一跳路由器的追踪。

2.scapy

先定义IP包头,再定义ICMP包头,然后再发出去
IP的上层协议类型是ICMP

sr1(IP(dst="192.168.1.1")/ICMP(), timeout=1)

第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

3.nmap

之前讲过namp做二层扫描的时候,是发送arp包,使用“-sn”参数。namp做三层扫描,也是使用“-sn”参数
区别在于:
nmap做二层扫描,发送的是arp包。
nmap做三层扫描,发送的是icmp包。抓包分析,nmap还发送了tcp的包,tcp是四层的协议,其实nmap没有严格意义上的一个参数是只发送icmp包的。他通常会使用综合大量的多种技术对一个目标进行探测。
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)
第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

4.fping

fping 1.1.1.1 -c 1 #对1.1.1.1只发送10个ping包
fping -g 192.168.1.100 192.168.1.200 -c 1 #对192.168.1.100-200之间的ip进行扫描,每个ip只发送一个包
fping -g 192.168.1.0/24 #对192.168.1.0一个地址段进行扫描
fping -f iplist.txt

5.hping

几乎可以完成所有的TCP/IP协议包,类似scapy,功能强大,同时还可以对基于TCP的服务器进行压力测试,发大量的ping包,发各种各样特殊定制出来的包头内容。

hping3 192.168.1.1 --icmp -c 2
for addr in $(seq 1 254); do hping3 192.168.1.$addr --icmp -c 1 >> iplist.txt & done

第七章(三)—主动信息收集(ping、traceroute、scapy、nmap、hping三层发现)

相关标签: kail