Day22 Kali漏洞扫描
关注泷羽Sec和泷羽Sec-静安公众号,这里会定期更新与 OSCP、渗透测试等相关的最新文章,帮助你理解网络安全领域的最新动态。后台回复“OSCP配套工具”获取本文的工具
对应OSCP官方教材第八章。
漏洞扫描:安全评估的自动化基石
漏洞扫描(简称“漏扫”),作为网络安全领域不可或缺的核心技术手段,贯穿于安全评估的始终。其本质是通过集成海量漏洞验证脚本(POC)与利用脚本(EXP),向目标系统发送特定探测请求,并根据返回响应特征自动化识别潜在安全弱点的过程。
核心价值与定位:
- 效率引擎: 面对海量资产(如数十甚至上百个站点、服务器),手工检测效率低下且难以覆盖。漏扫工具凭借其自动化、批量化的特性,成为快速发现大面积、已知漏洞的首选武器,是安全审计流程中至关重要的第一步。
- 风险探照灯: 在复杂的网络环境中,“你永远不知道漏洞扫描会发生什么”。它是主动暴露未知风险、预防潜在攻击的有效途径。
- 技术与场景融合: 技术本身无高下之分,“黑猫白猫,抓到老鼠就是好猫”。自动化漏扫与精细化手工测试并非对立,而是互补。最佳实践是:先利用漏扫进行广覆盖、批量化的初步筛查,再对高风险目标或复杂逻辑进行深度手工验证,形成“广撒网+深挖潜”的高效组合拳。
工作原理与流程: 一个典型的漏洞扫描流程包含以下关键步骤:
- 主机发现: 识别网络中存活的目标设备。
- 端口扫描: 探测目标设备开放的网络端口。
- 指纹识别: 基于服务响应(如Banner、协议行为、文件特征)判断操作系统、应用、服务及其版本(需注意版本伪装现象,如某些Tomcat版本统一返回相同头部)。
- 服务与行为分析: 深入探测服务细节、暴露的文件、目录等。
- 漏洞特征匹配/利用验证: 运用庞大的POC/EXP库进行探测。部分高级扫描会进行试探性攻击以降低误报(但需谨慎评估风险)。
漏洞扫描核心总结
1. 手动扫描与自动扫描的辩证关系
| 维度 | 手动扫描 | 自动扫描 |
|---|---|---|
| 优势 | 精准发现逻辑漏洞;绕过防护机制;隐蔽性高(适合红队);对目标干扰小 | 快速覆盖大规模目标;建立安全基准;标准化漏洞验证(如CVE匹配) |
| 劣势 | 效率极低(难以处理大型目标);高度依赖经验;易遗漏重复性漏洞 | 高误报/漏报率;难以发现复杂业务逻辑漏洞;攻击特征明显易触发告警 |
| 适用场景 | 关键系统深度测试、红队隐蔽渗透、漏洞二次验证 | 初筛阶段、合规性检查、周期性安全巡检 |
结论: 二者非对立关系,应遵循 “先自动化广覆盖,后手工精准打击” 的策略。渗透测试的核心价值在于 超越工具的人工分析能力。
2. 互联网扫描 vs. 内网扫描的关键差异
| 影响因素 | 互联网扫描 | 内网扫描 |
|---|---|---|
| 网络条件 | 带宽受限、高延迟、跳数多;防火墙/IPS严格过滤 | 高带宽、低延迟;内网设备可能老旧易崩溃 |
| 可见性 | 仅暴露面服务(ICMP/ARP常被阻断) | 全端口可见(可ARP发现主机) |
| 扫描策略 | 低速扫描(防触发警报);优先非破坏性POC | 可高速扫描;支持侵入式检测(需评估设备耐受性) |
操作要点:
- 速度控制:初始使用低速率扫描,验证结果质量后逐步提速。
- 发现机制:互联网目标需使用TCP SYN等替代ICMP/ARP。
- 风险评估:内网扫描警惕对老旧设备的DoS风险。
3. 认证扫描 vs. 非认证扫描的深度对比
| 层面 | 认证扫描 | 非认证扫描 |
|---|---|---|
| 原理 | 凭据登录系统(SSH/WMI),访问内部资源 | 纯网络发包探测,无系统权限 |
| 检测深度 | 补丁状态、注册表、配置文件、敏感文件(如Program Files) | 仅开放服务漏洞、Banner版本、弱口令等表层风险 |
| 准确性 | 误报率极低(直接验证漏洞存在性) | 误报率高(依赖版本特征猜测) |
| 配置挑战 | Linux需SSH;Windows需破解UAC/WMI防火墙限制 | 开箱即用,无配置依赖 |
适用场景:
-
认证扫描:合规审计(如PCI DSS)、系统上线前深度检查。
-
非认证扫描:外部攻击面评估、应急响应快速筛查。
注意: Windows环境需解决UAC限制,否则认证扫描可能失败。
本章导读: 本章将深入剖析漏洞扫描的技术原理、核心工作流程、主流工具(如Nessus, AWVS, Nmap, GVM等)的应用模式(重点探讨认证与非认证扫描的实施细节与场景选择),分析其优势与局限性(精度问题、版本识别挑战),并探讨如何有效评估扫描结果、管理误报/漏报,以及如何将自动化扫描与手工测试有机结合,构建高效、全面的安全评估体系。理解漏洞扫描的本质和最佳实践,是每一位安全从业者夯实基础、提升效率的关键一步。
🛠️ Nessus安装和使用
官网下载链接:https://www.tenable.com/downloads/nessus?loginAttempted=true
# 1. 更新系统
sudo apt update && sudo apt upgrade -y
# 2. 下载Nessus .deb包(官网获取最新URL)
wget https://www.tenable.com/downloads/api/v2/pages/nessus/files/<最新版本>.deb
# 3. 校验文件完整性(需与官网SHA256匹配)
sha256sum Nessus-*.deb
# 4. 安装
sudo dpkg -i Nessus-*.deb
# 5. 启动服务
sudo systemctl start nessusd
# 6. 访问控制台
https://localhost:8834后续配置:
- 选择 Nessus Essentials → 填写邮箱获取激活码 → 创建本地管理员账户
- 首次初始化需1小时+(自动下载13万+插件库)

扫描核心操作流程
1. 新建扫描

| 扫描类型 | 适用场景 | 关键配置 |
|---|---|---|
| 基本网络扫描 | 常规漏洞探测 | 默认设置(仅扫公共端口) |
| 认证补丁审核 | 内网深度检测 | 需填SSH/Windows凭据 |
| 高级扫描 | 自定义漏洞检测 | 可禁用插件/指定端口 |
2. 目标配置
-
格式:IP/IP段/域名(例:
10.11.1.73) -
端口控制:
路径:设置 → 发现 → 端口扫描 修改 "Port Scan Range":0-65535(全端口)或指定端口(如111)
3. 认证扫描配置

路径:凭据 → SSH
→ 认证方法:Password
→ 用户名:root
→ 密码:[目标密码]4. 单插件扫描
路径:插件 → 点击"全部禁用"
→ 展开分类(如RPC)→ 启用特定插件(如"NFS Exported Share Information Disclosure")5. 结果分析
- 过滤高危漏洞:点击”过滤器” →
可被利用 = true - 关闭分组视图:右上角齿轮 → 禁用分组
- 导出报告:支持PDF/CSV/HTML格式

操作避坑指南
- 资源警告:全端口扫描需8GB+内存,避免扫描期间运行其他重负载任务
- 账户锁定:在配置中关闭 “Brute Force” 选项(路径:扫描策略 → 高级)
- Windows认证失败:确认目标开启WMI服务且防火墙放行135/445端口
- 插件更新:定期执行
sudo /opt/nessus/sbin/nessuscli update - 破解:默认只能扫16个IP,破解请关注公众号回复本文开头的关键字获取。
🔍 Nmap漏洞扫描深度解析
核心机制: Nmap通过NSE脚本引擎(Nmap Scripting Engine)实现漏洞扫描,700+个Lua脚本分为两类:
vuln类:漏洞检测(如http-vuln-cve2017-5638)exploit类:精简漏洞利用(如smb-vuln-cve-2017-7494)
⚠️ 安全风险分级(执行前必看):
| 级别 | 特征 | 典型脚本 |
|---|---|---|
safe | 仅信息收集 | http-title.nse |
intrusive | 可能崩溃服务 | http-slowloris.nse |
🖥️ 关键操作命令:
# 查看所有漏洞扫描脚本
ls /usr/share/nmap/scripts | grep vuln
# 检查脚本功能(强烈建议使用AI解析)
nmap --script-help <脚本名> # 例如:nmap --script-help http-vuln*
# 安全扫描(仅用safe类)
nmap -sV --script "safe and vuln" <目标IP>
# 漏洞探测(vuln类脚本)
nmap -sV --script=vuln <目标IP>
# 精确调用指定脚本
nmap -sV --script=http-vuln-cve2021-41773 <目标IP>
# 扫描结果保存
nmap -sV -oX report.xml --script=vuln <目标IP>

⚙️ 脚本管理技巧:
# 查看脚本分类(script.db数据库)
grep 'categories' /usr/share/nmap/scripts/script.db
# 过滤高风险脚本(排除intrusive)
nmap --script "vuln and not intrusive" <目标IP>
# 更新NSE脚本库
sudo nmap --script-updatedb
📌 最佳实践:
- 未知脚本必查:
nmap --script-help <脚本名>或丢给AI解读- 生产环境先用
--script-trace预览探测行为- 高危操作前在测试环境验证
🛡️ GVM(Greenbone漏洞管理器)部署指南
原为OpenVAS,是Nessus的开源分支,提供企业级漏洞管理能力。
⚡ 快速部署命令(Kali Linux):
# 安装组件
sudo apt update && sudo apt install -y gvm*
# 初始配置(约15分钟,需联网)
sudo gvm-setup # 自动生成管理员账户
# 更新漏洞数据库(首次需20GB磁盘空间)
sudo gvm-feed-update
# 启动服务
sudo gvm-start # Web控制台:https://127.0.0.1:9392
# 验证安装
sudo gvm-check-setup # 显示各组件状态
🖥️ 常用操作:
# 启动/停止服务
sudo gvm-start | sudo gvm-stop
# 重置管理员密码
sudo runuser -u _gvm -- gvmd --user=admin --new-password=<新密码>
# 手动更新数据库(每日执行)
sudo crontab -e # 添加:0 0 * * * sudo gvm-feed-update🌐 基础使用流程:
- 访问
https://localhost:9392→ 用admin和安装时生成的密码登录 - 创建扫描任务:
- 目标配置:指定IP/域名范围
- 扫描策略:选择
Full and fast(平衡模式) - 认证设置:添加SSH/Windows凭证提升扫描深度
- 导出报告:支持PDF/CSV/XML格式
💡 高级技巧:
- 联动Nmap:将
nmap -oX生成的XML报告导入GVM分析- 定制策略:禁用暴力破解选项防账户锁定
- 计划任务:设置每周全盘扫描 + 每日增量扫描
🔍 AWVS 安装使用
Acunetix Web Vulnerability Scanner (AWVS) 是全球顶尖的 Web 应用漏洞扫描器,专注于自动化检测网站与 API 的安全漏洞。
🔑 核心特性:
| 类别 | 能力 |
|---|---|
| 扫描范围 | SQL 注入、XSS、SSRF、JWT 漏洞、敏感信息泄露等 13000+ 漏洞 |
| 技术深度 | 支持现代 Web 技术(SPA、WebSocket、GraphQL 等) |
| 部署模式 | 支持本地安装(Windows/Linux)和云平台(Acunetix Online) |
| 合规性 | 满足 PCI DSS、HIPAA、ISO 27001 等安全标准 |
📌 定位:与传统网络扫描器(Nessus)互补,专精 Web 层漏洞挖掘。
📥 安装指南(Kali Linux)
⚠️ 前提条件:
- 硬件:≥4 核 CPU / 8GB RAM / 20GB 磁盘空间
- 系统:Kali Linux 2023+(或 Ubuntu/Debian)
- 授权:需官网获取 14 天试用密钥(或购买商业许可)
🛠️ 安装步骤:
# 1. 下载安装包(需注册官网获取下载链接)
wget https://dl.acunetix.com/acu/24.3/acuinstall.sh
# 2. 赋予执行权限
chmod +x acuinstall.sh
# 3. 安装依赖
sudo apt install -y libxcb-xinerama0 libxkbcommon-x11-0
# 4. 启动安装(默认端口:13443)
sudo ./acuinstall.sh --install-license YOUR_LICENSE_KEY
# 5. 访问控制台
https://localhost:13443💡 重要提示:首次登录需设置管理员邮箱与密码(保存至
/var/lib/acunetix/.config)
🚀 基础使用教程
1. 创建扫描任务
-
目标配置
- 输入 URL(如
https://example.com) - 启用 深度爬虫(识别 SPA 动态内容)
- 设置 认证登录(支持 Cookie/表单/OAuth)
- 输入 URL(如
-
扫描策略
模式 特点 快速扫描 耗时短,仅查高危漏洞 全扫描 覆盖所有漏洞检测模块(推荐) 自定义扫描 手动选择检测项(如仅查 API)
2. 扫描结果分析
- 漏洞分级: 🔴 高危(SQLi、RCE)→ 🟠 中危(XSS)→ 🟢 低危(信息泄露)
- 利用验证: 支持 POC 重放(验证漏洞真实性)
- 报告导出: 支持 PDF/HTML/XML(含修复建议)
3. 高级功能
- API 扫描:导入 Swagger/Postman 文件
- 敏感数据监控:实时检测 Git 泄露、密钥硬编码
- CI/CD 集成:Jenkins/GitLab 插件自动化扫描
⚠️ 避坑指南
| 问题 | 解决方案 |
|---|---|
| 扫描崩溃 | 限制并发请求(Settings → Scan Settings → Max Requests) |
| 误报率高 | 启用 Proof-Based Scanning 二次验证 |
| 登录失效 | 使用 AcuSensor 代理抓取认证流量 |
| 社区版限制 | 避开「Acunetix 360 Free」,仅支持 3 页面扫描 |
相似功能新产品推荐
Nessus和AWVS作为入门熟悉的工具可用,但是再实际测试过程中误报和漏扫率高。安全技术更新换代快,以下是我个人对这些产品的经验看法,和推荐目前比较好用的几个工具。
⚖️ 商业 vs 开源核心差异分析
首先,这些产品分为商业版和开源版,两者的区别有:
🏭 商业工具依赖维度
graph TB A[商业产品] --> B(专属漏洞实验室) A --> C(0day快速响应) A --> D(自动化合规报告) A --> E(私有漏洞情报) F[公司经营风险] --> G[产品更新放缓] F --> H[漏洞库滞后] F --> I[误报率上升]
🌐 开源工具生存逻辑
graph TB J[开源项目] --> K(社区贡献者) J --> L(GitHub Star驱动) J --> M(企业赞助) N[技术门槛] --> O[需自行维护规则库] N --> P[适配定制化环境] N --> Q[漏洞验证脚本开发]
📊 关键能力对比
| 能力维度 | 商业工具 | 开源工具 |
|---|---|---|
| 漏洞响应速度 | 0day通常<24小时 | 依赖社区更新(平均3-7天) |
| 合规支持 | 自动生成符合审计的报告 | 需手动整理 |
| 使用成本 | 年费5000−50000+ | 免费但需时间成本 |
| 定制灵活性 | 闭源不可修改 | 可二次开发 |
🛡️ 中国网络安全市场主流产品图谱
| 产品名称 | 厂商 | 主打能力 | 行业占有率 |
|---|---|---|---|
| 奇安信网神漏洞扫描系统 | 奇安信 | 等保2.0合规驱动 · 信创生态适配(麒麟/统信) · 0day响应<12小时 | 政府/央企(≥35%) |
| 安恒明鉴漏洞扫描器 | 安恒信息 | Web3.0深度检测 · API安全治理 · 结合「北斗」AI引擎 | 金融/医疗(28%) |
| 绿盟极光漏洞扫描系统 | 绿盟科技 | 攻防演练模式 · ICS/OT工控支持 · 漏洞利用链可视化 | 能源/制造业(20%) |
| 长亭洞鉴 | 长亭 | 动态流量分析 · RASP结合 · 云原生漏洞挖掘 | 互联网/云平台(18%) |
| 启明星辰天镜 | 启明星辰 | 资产管理优先 · 漏洞生命周期管理 · 等保测评报告自动生成 | 教育/运营商(15%) |
🆚 国产 VS 国际产品关键差异
| 维度 | 国内产品优势 | 国际产品劣势 |
|---|---|---|
| 合规支持 | 内置等保2.0/关基条例模板 | 需定制开发 |
| 漏洞响应 | CNNVD/CNVD同步<6小时 | CVE中心依赖(时差延迟) |
| 信创适配 | 深度支持国产OS/数据库 | 仅兼容Windows/Linux主流版 |
| 定价策略 | 按IP/年收费(含驻场服务) | 订阅制(美元结算+高溢价) |
🚀 免费替代方案推荐
-
XRay 社区版(长亭开源)
# 被动代理扫描 ./xray webscan --listen 127.0.0.1:7777 -
Goby 社区版
- 资产测绘免费 · 漏洞扫描限量
-
Yakit+Nuclei
- Yakit是集成化单兵安全能力平台,用Yaklang语言编写
- Nuclei有丰富的开源模板,也可以自行编写漏洞模板,或让AI编写
- Yakit支持直接导入Nuclei模板扫描
🔔 想要获取更多网络安全与编程技术干货?
关注 泷羽Sec-静安 公众号,与你一起探索前沿技术,分享实用的学习资源与工具。我们专注于深入分析,拒绝浮躁,只做最实用的技术分享!💻
扫描下方二维码,马上加入我们,共同成长!🌟
👉 长按或扫描二维码关注公众号
或者直接回复文章中的关键词,获取更多技术资料与书单推荐!📚