Nmap的一个鲜为人知的部分是NSE,即Nmap Scripting Engine,这是Nmap最强大和最灵活的功能之一。它允许用户编写(和共享)简单脚本,以自动执行各种网络任务。Nmap内置了全面的NSE脚本集合,用户可以轻松使用,但用户也可以使用NSE创建自定义脚本以满足他们的个性化需求。
其中,nmap-vulners和vulscan这两个脚本旨在通过为特定服务(如SSH,RDP,SMB等)生成相关的CVE信息来增强Nmap的版本检测。NSE脚本将获取该信息并生成可用于利用该服务的已知CVE。
nmap-vulners NSE脚本报告了过去几年披露的十几个CVE。nmap-vulners CVE按严重程度组织,“9.3”是最严重的,位于列表的顶部。
安装 nmap-vulners
更改为Nmap脚本目录
cd /usr/share/nmap/scripts/
终端中键入来克隆nmap-vulners GitHub存储库(无需配置)
git clone https://github.com/vulnersCom/nmap-vulners.git
安装:Vulscan
将GitHub存储库克隆到Nmap脚本目录中
git clone https://github.com/scipag/vulscan.git
* Vulscan支持许多优秀的漏洞利用数据库:
scipvuldb.csv
cve.csv
osvdb.csv
securityfocus.csv
securitytracker.csv
xforce.csv
expliotdb.csv
openvas.csv
使用Nmap-Vulners进行扫描
nmap --script nmap-vulners -sV -p 80 192.168.1.1
注:该-sV是绝对必要的。使用-sV,告诉Nmap探测版本信息的目标地址。如果Nmap不生成版本信息,则nmap-vulners将没有任何数据来查询Vulners数据库。使用这些NSE脚本时始终使用-sV。
合并为一个命令
nmap --script nmap-vulners,vulscan --script-args vulscandb=scipvuldb.csv -sV -p80 192.168.1.1
更新
为确保数据库完全是最新的,可使用vulscan / utilities / updater /目录中的updateFiles.sh脚本进行更新。
通过在终端中键入命令,切换到updater目录。
cd vulscan/utilities/updater/
chmod命令确保该文件具有执行的适当权限。
chmod +x updateFiles.sh
终端中输入命令来执行和运行脚本。
./updateFiles.sh
完成更新