1.本文章結合作者在平時工作中經歷,對工控資產嗅探所使用的工具進行簡單分析與驗證,工控資產地址可以通過shodan、fofa、zoomeye等網站進行收集。
2.利用Nmap工具可以對S7、modbus的plc設備進行掃描探測,
Nmap 6.4 腳本目錄位于:/usr/share/nmap/scripts, 共有448個腳本。
如下所示:
腳本分類如下:
腳本參數:
-sC: 等價于 –script=default,使用默認類別的腳本進行掃描
–script=
–script-args=
–script-args-file=filename: 使用文件來為腳本提供參數
–script-trace: 顯示腳本執行過程中發送與接收的數據
–script-updatedb: 更新腳本數據庫
–script-help=
腳本使用方式:
執行單個腳本:nmap –script /path/to/script.nse
執行多個腳本:nmap –script /path/to/script.nse,/another/path/script2.nse
執行文件夾包含的所有腳本:nmap –script/path/to/folder/
描述:探測modbus協議的設備
輸入:nmap -sV –script modbus-discover 166.169.57.136 -p 502
輸出:
描述:探測EthernetIP協議的設備
輸入:nmap -p 44818 –script enip-enumerate.nse 221.206.153.114
輸出:
描述:探測CoDeSyS協議的設備
輸入:nmap -p 1200,2455 –script codesys-v2-discover 178.242.1.44
輸出:
描述:探測NiagaraFox協議的設備
輸入:nmap -p 1911 –script fox-info 67.176.19.167
輸出:
描述:探測S7協議的設備
輸入:nmap -p 102 –script s7-enumerate.nse 79.135.33.188
輸出:
…
其它工控組件如下,使用參考:https://github.com/digitalbond/Redpoint#bacnet-discover-enumeratense
3.用plcscan工具可以對S7、modbus的plc設備進行掃描探測
S7協議plc設備探測
第一步:新建ip.list,將要掃描的ip寫入其中
第二步:在plcscan目錄下輸入python plcscan.py –hosts-list=ip.list –ports=102命令進行掃描并觀察結果
備注:也可以通過輸入python plcscan.py 178.139.130.34 –ports=102 進行指定ip掃描,如下圖所示
modbus協議設備探測
第一步:新建ip.list,將要掃描的ip寫入其中
第二步:在plcscan目錄下輸入python plcscan.py –hosts-list=ip.list –ports=502命令進行掃描并觀察結果
備注:也可以通過輸入python plcscan.py 178.139.130.34 –ports=502 進行指定ip掃描,如下圖所示
nS7和modbus協議設備探測
第一步:新建ip.list,將要掃描的ip寫入其中
第二步:在plcscan目錄下輸入python plcscan.py –hosts-list=ip.list 命令進行掃描并觀察結果
4.利用ISF工具對s7、cip、enip、profine-dcp協議工控設備