scanning-infrastructure-with-nessus

Automates Nessus vulnerability scans and parses results into severity-ranked reports.

4|Updated Apr 28, 2026
One-click install
npx skills add https://github.com/braydos-h/BreachPilot --skill scanning-infrastructure-with-nessus-braydos-h
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: scanning-infrastructure-with-nessus
Source: https://github.com/braydos-h/BreachPilot/tree/main/skills/scanning-infrastructure-with-nessus
Command: npx skills add https://github.com/braydos-h/BreachPilot --skill scanning-infrastructure-with-nessus-braydos-h

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, defusedxml, pandas, jinja2, urllib3, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Running infrastructure vulnerability scans with Tenable Nessus involves repetitive manual steps: creating scan policies, launching scans, polling for completion, exporting results, and manually triaging hundreds of findings. This Skill automates the full scan lifecycle through the Nessus REST API and turns raw .nessus XML output into prioritized, actionable reports. ## Core Features & Use Cases - Automated Scan Lifecycle: Authenticate to Nessus, create scans from templates, launch them, poll status until completion, and export results in nessus, csv, html, or pdf formats. - Result Parsing and Risk Scoring: Parse .nessus XML files with defusedxml and pandas to compute severity breakdowns, per-host risk scores, top vulnerabilities, and exploitable-finding counts. - Report Generation: Produce HTML summary reports with severity cards, top vulnerability tables, and host risk rankings, plus a reusable report template aligned with NIST SP 800-115 and PCI DSS. - Use Case: A security engineer needs a weekly authenticated scan of a 192.168.1.0/24 segment. The Skill creates and launches the scan, waits for completion, exports the results, and generates an HTML report ranking hosts by risk score. ## Quick Start Ask the agent to run an authenticated Nessus scan against your target subnet and generate a severity-ranked HTML vulnerability report from the results.

Frequently Asked Questions about scanning-infrastructure-with-nessus

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate a Nessus scan with the REST API?▼

Authenticate via POST /session to get a token, create a scan with POST /scans using a template UUID and targets, launch it with POST /scans/{id}/launch, then poll GET /scans/{id} until the status is completed before exporting results.

How to parse Nessus .nessus XML files in Python?▼

Use defusedxml.ElementTree to safely parse the XML, iterating over ReportHost and ReportItem elements to extract plugin ID, severity, CVSS score, CVE, and solution fields. The extracted findings can be loaded into a pandas DataFrame for severity summaries and host risk scoring.

What Python libraries are required for Nessus scan automation?▼

The scripts require requests for REST API calls, defusedxml for secure XML parsing, and pandas for tabular analysis of findings. Jinja2 is listed as an optional requirement in the automation script header.

Does Nessus scanning work without credentials?▼

Yes, unauthenticated scans work but detect significantly fewer vulnerabilities. Authenticated scanning via SSH, Windows SMB/WMI, or SNMP credentials detects roughly 45-60% more vulnerabilities by checking installed patches and local configurations.

Why does my Nessus scan show SSL certificate errors?▼

Nessus uses a self-signed certificate by default on https://localhost:8834, causing TLS verification failures in scripts. Set SKIP_TLS_VERIFY=true or pass verify_ssl=False in lab environments, but use proper certificates in production.

What are the limitations of automated Nessus scanning?▼

Scans are point-in-time snapshots and may include false positives requiring manual validation of critical findings. Aggressive scans can impact fragile systems like medical devices or legacy SCADA, and network segmentation or firewall rules can create coverage gaps.