探测内网存活主机

0x00 前言

  本篇源自学习网上一些优秀的内容,记录而成,以备忘,本篇仅列举在测试试验比较好用的方法。右键查看图片更清晰!

  Github Wiki : 探测内网存活主机

0x01 Netbios协议探测

  可以获得内网主机的主机名和MAC地址等信息。

1 nmap扫描

# nmap -sU --script nbstat.nse -p137 172.16.80.0/21 -T4

2 msf扫描

msf5 > use auxiliary/scanner/netbios/nbname

3 nbtscan扫描

项目地址:http://www.unixwiz.net/tools/nbtscan.html

下载链接http://www.unixwiz.net/tools/nbtscan-1.0.35.exe

nbtscan-1.0.35.exe -m 172.16.80.0/24

0x02 ICMP协议探测

它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

1 CMD下ping扫描

for /l %i in (1,1,255) do @ ping 172.16.80.%i -w 1 -n 1|find /i "ttl="

写入文件,写入C盘需要管理员权限,可使用管理员权限运行,或者切换盘符,内网存活主机保存在b.txt中。

E:Tools>@for /l %i in (1,1,255) do @ping -n 1 -w 40 172.16.80.%i & if errorlevel 1 (echo 172.16.80.%i>>./a.txt) else (echo 172.16.80.%i >>./b.txt)

2 nmap扫描

# nmap -sn -PE -T4 172.16.80.0/24    # 扫描
# nmap -sn -PE -T4 172.16.80.0/24 | grep -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' # 提取ip地址

    

 0x03 UDP协议探测

1 nmap扫描

nmap -sU -T5 -sV --max-retries 1 -p 137 172.16.80.0/24

2 msf扫描

msf5 > use auxiliary/scanner/discovery/udp_probe
msf5 > use auxiliary/scanner/discovery/udp_sweep

0x04 SMB协议探测

msf smb_version

msf5 > use auxiliary/scanner/smb/smb_version

0x05 MSF探测辅助模块汇总

auxiliary/scanner/discovery/arp_sweep    #基于arp协议发现内网存活主机,这不能通过代理使用
auxiliary/scanner/portscan/ack           #基于tcp的ack回复进行端口扫描,默认扫描1-10000端口
auxiliary/scanner/portscan/tcp           #基于tcp进行端口扫描,默认扫描1-10000端口
auxiliary/scanner/discovery/udp_sweep    #基于udp协议发现内网存活主机
auxiliary/scanner/discovery/udp_probe    #基于udp协议发现内网存活主机
auxiliary/scanner/netbios/nbname         #基于netbios协议发现内网存活主机
 
auxiliary/scanner/ftp/ftp_version        #发现内网ftp服务,基于默认21端口
auxiliary/scanner/ssh/ssh_version        #发现内网ssh服务,基于默认22端口
auxiliary/scanner/telnet/telnet_version  #发现内网telnet服务,基于默认23端口
auxiliary/scanner/dns/dns_amp            #发现dns服务,基于默认53端口
auxiliary/scanner/http/http_version      #发现内网http服务,基于默认80端口
auxiliary/scanner/http/title             #探测内网http服务的标题
auxiliary/scanner/smb/smb_version        #发现内网smb服务,基于默认的445端口   
auxiliary/scanner/mssql/mssql_schemadump  #发现内网SQLServer服务,基于默认的1433端口
auxiliary/scanner/oracle/oracle_hashdump  #发现内网oracle服务,基于默认的1521端口 
auxiliary/scanner/mysql/mysql_version    #发现内网mysql服务,基于默认3306端口
auxiliary/scanner/rdp/rdp_scanner        #发现内网RDP服务,基于默认3389端口
auxiliary/scanner/redis/redis_server     #发现内网Redis服务,基于默认6379端口
auxiliary/scanner/db2/db2_version        #探测内网的db2服务,基于默认的50000端口
auxiliary/scanner/netbios/nbname         #探测内网主机的netbios名字

0x06 参考链接

  [总结]多种方式探测内网存活主机

    https://www.cnblogs.com/-mo-/p/11908260.html

  https://github.com/Micropoor/Micro8

原文地址:https://www.cnblogs.com/Hi-blog/p/How-To-Detect-Alive-Host.html