解读 Nmap 扫描结果以发现潜在漏洞
在此步骤中,你将学习如何解析 Nmap 扫描结果以收集更详细的信息,这对于识别潜在漏洞至关重要。知道一个端口是开放的很有用,但知道该端口上运行的确切软件和版本则强大得多。
开放端口本身并不是漏洞。风险来自于运行在该端口上的服务。如果服务已过时或配置不当,它可能会被利用。
要了解有关服务的更多信息,你可以使用 Nmap 的版本检测功能,并加上 -sV 标志。这将探测开放的端口以确定服务和版本信息。
运行以下命令对 localhost 执行版本扫描:
nmap -sV localhost
输出现在将更加详细。请密切关注 VERSION 列。
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00012s latency).
Not shown: 998 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0)
3001/tcp open ssl/nessus?
8000/tcp open http SimpleHTTPServer 0.6 (Python 3.10.12)
Nmap done: 1 IP address (1 host up) scanned in 6.54 seconds
如你所见,Nmap 现在已识别出运行的服务具体版本。例如,在端口 8000 上,它不再是通用的 Web 服务(http-alt),而是明确的 SimpleHTTPServer 0.6 (Python 3.10.12)。
有了这些版本信息,安全分析师(或攻击者)就可以在在线漏洞数据库(如 CVE)中搜索已知会影响“SimpleHTTPServer 0.6 (Python 3.10.12)”的漏洞利用。这是基础漏洞扫描的基本过程。