文章目录
- 一、Nmap常见参数介绍
- 二、工控常见协议识别
- 三、工控设备指纹识别
- 3.1 S7
- 3.2 Modbus
- 3.3 IEC 60870-5-104
- 3.4 DNP3
- 3.5 EtherNet/IP
- 3.6 BACnet
- 3.7 Tridium Niagara Fox
- 3.8 Crimson V3
- 3.9 OMRON FINS
- 3.10 PCWorx
- 3.11 ProConOs
- 3.12 MELSEC-Q
- 四、测试
一、Nmap常见参数介绍
-sT 表示TCP全连接扫描
-sS 表示TCP半开扫描,该选项扫描的最大好处是,扫描动作极少会被记录,更具有隐蔽性!
-sP Ping扫描 快速发现网络,扫描网段
-Pn 非ping扫描,不执行主机发现,可以跳过防火墙 ( 常用)
-sV 探测打开端口对应服务的版本信息
-O 操作系统检测
-iL [ip地址列表文件] 扫描一个目标列表
-oX xml 将结果以xml格式输出
-n 不反向解析IP地址到域名
-sU UDP扫描
二、工控常见协议识别
https://github.com/hi-KK/ICS-Protocol-identify
三、工控设备指纹识别
3.1 S7
nmap -sS -Pn -p 102 --script s7-info -iL 123.txt -oX 123.xml
3.2 Modbus
nmap -sS -Pn -p 502 --script modicon-info -iL 123.txt -oX 123.xml
3.3 IEC 60870-5-104
nmap -Pn -n -d --script iec-identify.nse --script-args='iec-identify.timeout=500' -p 2404 <host>
3.4 DNP3
nmap --script dnp3-info -p 20000 <host>
3.5 EtherNet/IP
nmap --script enip-info -sU -p 44818 <host>
3.6 BACnet
nmap --script bacnet-info -sU -p 47808 <host>
3.7 Tridium Niagara Fox
nmap --script fox-info.nse -p 1911 <host>
3.8 Crimson V3
nmap --script cr3-fingerprint -p 789 <host>
3.9 OMRON FINS
nmap --script omron-info -sU -p 9600 <host>
nmap --script ormontcp-info -p 9600 <host>
nmap --script ormonudp-info -sU -p 9600 <host>
3.10 PCWorx
nmap --script pcworx-info -p 1962 <host>
3.11 ProConOs
nmap --script proconos-info -p 20547 <host>
3.12 MELSEC-Q
nmap -script melsecq-discover -sT -p 5007 <host>
nmap -script melsecq-discover-udp.nse -sU -p 5006 <host>
四、测试
Windows server2003:192.168.157.135
Kali:192.168.157.134
首先启动windows2003下的S7工控模拟器
启动完毕如下图:
可以看到相关的版本信息等等
使用kali进行探测
Kali:nmap -sS -Pn -p 102 --script s7-info 192.168.157.135
可以扫描到目标主机102端口的相关信息版本号等等
也可以使用下面的命令,将目标ip存入123.txt,结果会以xml格式输出至123.xml
nmap -sS -Pn -p 102 --script s7-info -iL 123.txt -oX 123.xml