mcpField
S
scanning-infrastructure-with-nessus

scanning-infrastructure-with-nessus

github.com/mukul975安全35.2k81 次安装8 周前更新
代码仓库

关于 scanning-infrastructure-with-nessus

面向使用 Tenable Nessus 评估网络基础设施的安全团队,介绍扫描策略配置、凭据扫描与非凭据扫描、结果分析和报告导出。

主要功能

  1. 01配置扫描策略
  2. 02运行凭据扫描与非凭据扫描
  3. 03扫描主机、服务和 Web 应用
  4. 04按严重级别查看发现
  5. 05以多种格式导出结果

适用场景

  1. 01评估服务器和网络设备
  2. 02执行定期漏洞审计
  3. 03检查补丁和合规状态
  4. 04通过扫描报告跟踪修复进度

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mukul975/anthropic-cybersecurity-skills --skill scanning-infrastructure-with-nessus

安装后在 Claude Code 中输入/scanning-infrastructure-with-nessus确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
assets/
template.md
references/
api-reference.md
standards.md
workflows.md
scripts/
agent.py
process.py

详细介绍

使用 Nessus 扫描基础设施

概述

Tenable Nessus 是业界领先的漏洞扫描器,用于识别网络基础设施中的安全弱点,包括服务器、工作站、网络设备和操作系统。本技能涵盖配置扫描策略、运行经过身份验证和未经身份验证的扫描、解读结果,以及将 Nessus 集成到持续漏洞管理工作流中。

适用场景

  • 在涉及使用 nessus 扫描基础设施的安全评估中
  • 遵循相关安全事件的事件响应流程时
  • 执行定期安全测试或审计活动时
  • 通过动手测试验证安全控制时

前置条件

  • 已安装并激活 Nessus Professional 或 Essentials 许可证
  • 可访问目标系统的网络(防火墙规则允许扫描器 IP)
  • 用于经过身份验证的扫描的管理员凭据
  • 了解 TCP/IP 网络和常见服务
  • 获得扫描目标环境的书面授权

核心概念

Nessus 架构

Nessus 以客户端-服务器应用程序的形式运行,Nessus 扫描器引擎作为服务(nessusd)在主机系统上运行。它采用基于插件的架构,包含超过 200,000 个插件,这些插件由 Tenable 的研究团队每周更新。每个插件都会针对特定漏洞、错误配置或合规性检查进行测试。

扫描类型
  1. 主机发现 - 使用 ICMP、TCP、UDP 和 ARP 识别在线主机
  2. 基本网络扫描 - 涵盖常见漏洞的默认策略
  3. 高级扫描 - 可精细选择插件的自定义策略
  4. 凭据补丁审计 - 检查已安装补丁的身份验证扫描
  5. Web 应用测试 - 扫描特定于 Web 的漏洞
  6. 合规性审计 - 根据 CIS、DISA STIG、PCI DSS 基准进行检查
插件系列

Nessus 将插件归类为多个系列,包括:

  • 操作系统:Windows、Linux、macOS、Solaris
  • 网络设备:Cisco、Juniper、Palo Alto、Fortinet
  • Web 服务器:Apache、Nginx、IIS、Tomcat
  • 数据库:Oracle、MySQL、PostgreSQL、MSSQL
  • 服务:DNS、SMTP、FTP、SSH、SNMP

工作流

步骤 1:初始配置
# Start Nessus service
sudo systemctl start nessusd
sudo systemctl enable nessusd

# CLI management with nessuscli
/opt/nessus/sbin/nessuscli update --all
/opt/nessus/sbin/nessuscli fix --list

# Verify plugin count
/opt/nessus/sbin/nessuscli update --plugins-only
步骤 2:创建扫描策略

通过 https://localhost:8834 上的 Nessus Web UI 配置自定义扫描策略:

  1. 前往 Policies > New Policy > Advanced Scan
  2. 配置 General 设置:名称、描述、目标
  3. 设置 Discovery 设置:
    • 主机发现:Ping 方法(ICMP、针对端口 22、80、443 的 TCP SYN)
    • 端口扫描:扫描常见端口或全部 65535 个端口的 SYN 扫描
    • 服务发现:探测所有端口以发现服务
  4. 配置 Assessment 设置:
    • 准确性:覆盖默认准确性设置(减少误报)
    • Web 应用:扫描 Web 服务器时启用
  5. 选择与目标环境相关的插件系列
步骤 3:配置凭据

对于经过身份验证的扫描,请在 Credentials 选项卡下配置凭据:

  • SSH:用户名/密码或 SSH 密钥对
  • Windows:通过 SMB、WMI 使用域凭据
  • SNMP:团体字符串(v1/v2c)或 USM 凭据(v3)
  • 数据库:Oracle、MySQL、PostgreSQL 连接字符串
  • VMware:vCenter 或 ESXi 凭据
步骤 4:运行扫描
# Using Nessus REST API via curl
# Authenticate and get token
curl -k -X POST https://localhost:8834/session \
  -d '{"username":"admin","password":"password"}' \
  -H "Content-Type: application/json"

# Create scan
curl -k -X POST https://localhost:8834/scans \
  -H "X-Cookie: token=<TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "uuid": "<TEMPLATE_UUID>",
    "settings": {
      "name": "Infrastructure Scan Q1",
      "text_targets": "192.168.1.0/24",
      "enabled": true,
      "launch": "ON_DEMAND"
    }
  }'

# Launch scan
curl -k -X POST https://localhost:8834/scans/<SCAN_ID>/launch \
  -H "X-Cookie: token=<TOKEN>"

# Check scan status
curl -k -X GET https://localhost:8834/scans/<SCAN_ID> \
  -H "X-Cookie: token=<TOKEN>"
步骤 5:分析结果

Nessus 按严重程度对发现项进行分类:

  • 严重(CVSS 9.0-10.0):需要立即修复
  • 高(CVSS 7.0-8.9):在 7-14 天内修复
  • 中(CVSS 4.0-6.9):在 30 天内修复
  • 低(CVSS 0.1-3.9):在下一个维护窗口期间修复
  • 信息性:无需立即采取行动
步骤 6:导出和报告
# Export via REST API
curl -k -X POST "https://localhost:8834/scans/<SCAN_ID>/export" \
  -H "X-Cookie: token=<TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"format":"nessus"}'

# Supported formats: nessus (XML), csv, html, pdf

最佳实践

  1. 在维护窗口期间安排扫描,以尽量减少对生产环境的影响
  2. 使用身份验证扫描,可多发现 45-60% 的漏洞
  3. 将脆弱系统(医疗设备、旧版 SCADA)排除在激进扫描之外
  4. 为不同的网络分段维护单独的扫描策略
  5. 每次扫描前更新插件,以发现最近披露的 CVE
  6. 手动验证关键发现后,再提交给修复团队
  7. 实施扫描结果趋势跟踪,以跟进修复进度
  8. 将扫描结果存储在 Tenable.sc 或 Tenable.io 中,以便集中管理

常见陷阱

  • 仅运行未通过身份验证的扫描(会漏掉 45-60% 的漏洞)
  • 未获得书面授权就进行扫描(违反法律和道德规范)
  • 忽视扫描对生产系统性能的影响
  • 未调整插件,导致出现过多误报
  • 启动扫描前未验证扫描器的网络连接
  • 使用默认扫描策略,未根据环境进行自定义

相关技能

  • performing-authenticated-vulnerability-scan
  • prioritizing-vulnerabilities-with-cvss-scoring
  • implementing-continuous-vulnerability-monitoring
  • performing-network-vulnerability-assessment

评论

支持 Markdown