主机发现工具
主机发现工具
当我们加入一个网段时,不知道该网段主机存活的数量,首先我们要先进行主机存活发现
ping
ping命令通常用户查看网络连接状态;得到服务器的IP地址,还有网络连接的延迟,另外可以通过TTL判断出目标的操作系统,在网上的服务器中,一般该值都被修改
在linux中,ping命令会一直进行ping目标主机,需要我们手动进行停止;而Windows中,只会进行ping目标主机四次会自动停止,这里我们使用的kali linux
通过 wiresahrk
抓包可以清楚,ping命令发送的是icmp数据包进行探测
ping -c 次数
来指定ping 的次数
ping命令的缺陷就是发送的ICMP数据包,容易别防火墙拦截,而且只能对单个目标进行探测
arping
arping 和 ping 非常的类似,arp使用的是地址解析协议进行探测主机的存活,而一般默认防火墙不会对 arp 协议进行过滤
参数 | 作用 |
---|---|
-i | 指定网卡 |
-c | 指定次数 |
`arping -i eth0 -c 3 172.16.1.80',对172.16.1.80主机进行ARP探测
arping命令默认使用ARP协议,比ping命令较good就是可以穿过一些默认策略的防火墙
genlist(已被移除)
genlist是
BT5(Kali前世)
中带的一个工具,现kali已移除。
参数 | 作用 |
---|---|
-s | 显示网段存活的主机 |
genlist -s 172.16.1.\*
对 172.16.1 网段进行主机存活扫描
genlist很人性轻巧,只回显存活的主机,使用的ARP协议。缺点就是已被移除
fping
fping 可以对整个网段进行存活和不存活扫描
参数 | 作用 |
---|---|
-a | 显示存活的主机 |
-u | 显示不存活的主机 |
-g | 生成目标列表 |
-f | 从文件中读取目标 |
-r | 扫描次数 默认为3 |
常用:fping -ag -r 1 172.16.1.0/24 > ag.txt
,对 172.16.1 网段进行存活扫描,并将存活主机保存到 ag.txt 中
ag.txt中的内容
也可以从文件中读取目标地址,比如我们在比赛中,子网掩码为 255.255.0.0,这个时候扫描的范围就大了。
我们可以使用Ptyhon生成一个target.txt文件,并使用 fping 进行存活扫描
Python代码如下,该脚本会生成一个 172.16.0.0 ~ 172.16.255.255 的地址
for i in range(1,256):
for j in range(1,256):
with open('./target.txt','a+',encoding='utf-8') as f:
f.write('172.16.' + str(i) + '.' + str(j) + '\n')
f.close()
然后读取文件扫描fping -af -r 1 target.txt
fping使用的ICMP协议,扫描容易被过滤,但是fping扫描功能强大
nbtscan
nbtscan 是基于Windows上的NetBios 的存活扫描工具
参数 | 作用 |
---|---|
-r | 指定扫描网段 |
-f | 指定文件进行扫描 |
-e | 只显示主机名称 |
-q | 避免不必要的信息 |
nbtscan -r 172.16.1.0/24
,对 172.16.1 网段进行存活扫描
nbtscan 扫描 Windows 真的非常的迅速,几乎在一瞬间就完成,并且显示目标的主机名已经MAC地址
其实不加 -r
参数也可以对网段进行存活扫描
读取文件进行扫描nbtscan -f target.txt
-e
和-q
真的很鸡肋,可以说是没用的参数
netdiscover
netdiscover 一个功能很强的二层发现工具,具体咱懂得也不多,知道能主机发现就OK了。
参数 | 作用 |
---|---|
-i | 指定网卡 |
-r | 指定网段 |
netdiscover -r eth0 -i 172.16.1.0/24
,对 172.16.1 网段进行主机存活扫描
扫描信息会进行实时刷新,非常的好用
arp-scan
arp-scan是一个轻量的扫描工具,一般用于扫描本地网卡网段里面的主机
arp-scan -l
扫描的很快
nmap
nmap请见 [https://www.cnblogs.com/Junglezt/p/15516027.html](https://www.cnblogs.com/Junglezt/p/15516027.html