🛡️ Methodology Checklist

  • Start Nessus: sudo systemctl start nessusd
  • Log in at https://localhost:8834
  • Create new scan: choose Advanced Scan or Basic Network Scan
  • Input target IPs/CIDRs matching scope
  • Add credentials under Credentials tab (SSH, SMB, SNMP)
  • Launch scan and monitor progress
  • Triage results: Critical → High → Medium → Low
  • Export and integrate into engagement documentation

🎯 Operational Context

Think Dumber First: Start with an Advanced Scan policy — it gives maximum control over credentials, performance, and plugin selection. Save scan policy before running — recreating policy settings is tedious. Always download both .nessus (XML) and CSV formats for documentation. Name scans with date and target subnet for audit trail.

When you land here: Need to run an authenticated VA scan. Start Nessus (sudo systemctl start nessusd). Create policy → create scan → configure credentials → launch. Monitor progress in the UI. Export results in multiple formats after completion.


⚡ Tactical Cheatsheet

CommandTactical Outcome
sudo dpkg -i [NESSUS_PACKAGE].debInstall Nessus Debian package
sudo systemctl start nessusd.serviceStart Nessus service
sudo systemctl status nessusd.serviceCheck service status
sudo apt install vnstat && sudo vnstat -l -i tun0Monitor scan bandwidth impact
./nessus_report_downloader.rbCLI report download via API

🔬 Deep Dive & Workflow

Access: https://[TARGET_IP]:8834 | Default lab creds: htb-student / HTB_@cademy_student!

Scan Templates

TemplateUse Case
Host DiscoveryPing sweep — find live hosts, no vuln checking
Basic Network ScanStandard choice — full system scan
Advanced ScanGranular plugin/performance tuning
Credentialed Patch AuditLogs in to check missing patches (most accurate)
Web Application TestsOWASP Top 10 style scanning

Scan Configuration Key Settings

  • Discovery → Port Scan: All Ports (critical for non-standard services like VNC)
  • Discovery → Fragile Devices: Disable “Scan Network Printers” (crashes printers)
  • Assessment → Brute Force: Can use built-in Hydra with wordlists
  • Assessment → RID Brute Force: Windows/AD user enumeration (UID 1000-1200 range)
  • Advanced → Safe Checks: ALWAYS ENABLED — prevents crashing services
  • Advanced → Performance → Throttle: Slow down on network congestion

Credentialed Scanning

The gold standard for internal assessments. Supports:

  • Windows: Password, Kerberos, LM/NTLM Hash
  • Linux: SSH (Password, Public Key, Certificate)
  • Services: HTTP Form Auth, FTP, Telnet, IMAP
OSUsernamePassword
Linuxhtb-student_admHTB_@cademy_student!
WindowsadministratorAcademy_VA_adm1!

Verify auth succeeded: Look for Plugin 110723 (Target Credential Status) or 10394 (SMB Log In Possible). “Authentication Failure - Local Checks Not Run” = credentials failed.

Scan Policies (Reusable Templates)

Create saved configs: New Policy → select base (Advanced Scan) → customize → save → appears under “User Defined” tab.

Use case: Save “Web Focus” policy that enables web spidering + disables Safe Checks, or “Stealth” policy with low packet rates.

Scan Issues & Mitigation

IssueSymptomFix
Firewall blocking0 hosts up OR all ports openDisable “Ping remote host”
Fragile hostsLegacy/OT/SCADA crashExclude IPs or use nessusd.rules
Network congestionHigh latency, dropped packetsReduce “Max Concurrent Checks Per Host”
Service crashesDaemons stoppingEnable “Safe Checks”
VPN instability during examUnstable connectionPause scan, reduce concurrent checks

Export Formats

FormatBest Use
PDF/HTMLExecutive reports, appendix
CSVAnalytics (Splunk), large dataset filtering
.nessus XMLTool imports (EyeWitness, Metasploit)
.dbFull archival, scanner migration

Never submit raw Nessus PDF as final deliverable. Use it as supplementary data only.

Plugin Rules (False Positive Suppression)

ResourcesPlugin RulesNew Rule → set “Hide this result” for specific Host + Plugin ID.

Exam Strategy

  • Scans take 1-2 hours — analyze vulnerabilities as they appear, don’t wait for completion
  • Found credentials? → immediately run Credentialed Patch Audit → finds Critical vulns blind scans miss
  • Bad VPN? → use nessus_report_downloader.rb → choose .nessus (option 0) — smallest file

Notable Plugin IDs

Plugin IDDescription
10394Microsoft Windows SMB Login Possible
110723Target Credential Status
10396Accessible SMB Shares
10335VNC Server Detected
26925VNC Server Password Strength

🛠️ Troubleshooting & Edge Cases

ProblemCauseFix
Nessus daemon won’t startPort 8834 in use or service crashsudo systemctl restart nessusd; check netstat -tlnp | grep 8834; review /opt/nessus/var/nessus/logs/nessusd.messages
Scan completes but shows 0 hosts scannedNetwork ACL blocking scannerPing from Nessus host to target; check Windows Firewall; pre-authorize scanner IP on target network
Plugin feed update failsInternet connectivity blocked from Nessus hostRun nessuscli update --all; if air-gapped, download offline feed from Tenable portal and import manually
SMB credential test shows ‘Authentication failure’Wrong credential format or SMB signingVerify creds manually: smbclient -U [USER]%[PASS] -L //[TARGET]; ensure domain format: DOMAIN\user
License expired — scans won’t launchTrial or professional license lapsedGenerate new activation code from Tenable.com portal; nessuscli fetch --register [ACTIVATION_CODE]

📝 Reporting Trigger

Finding Title: (Nessus is the scanning platform — export findings as CSV for import into report template. Critical and High plugin results require manual verification. Include Nessus plugin ID and CVE reference for each finding. Screenshot scanner UI showing vulnerability detail as evidence.)