Nessus

Die „Free“-Variante läuft 7 Tage und lässt das Scanning von maximal 32 verschiedenen IP-Adressen zu.

Begriffe:

  • Audits: In der Tenable Audit-Sprache geschriebene Security-Benchmarks (z.B. CIS). Diese Audit-Dateien werden von Tenable Sensors ausgeführt.

  • CVSS: Common Vulnerability Scoring System

  • EPSS: Exploit Prediction Scoring System

  • NASL: Nessus Attack Scripting Language

  • Plugins: In der Nessus Attack Scripting Language (NASL) geschriebene Programme, um Schwachstellen zu erkennen. Die Plugins enthalten Informationen über die Schwachstellen, eine vereinfachte Reihe von Abhilfemassnahmen und den Algorithmus, mit dem das Vorhandensein des Sicherheitsproblems getestet wird.

  • VPR: Tenable-calculated Vulnerability Priority Rating

Nessus Professional vs Nessus Expert

Mit Nessus Professional lassen sich auch Webseiten auf Schwachstellen scannen - allerdings sind tiefgehende Tests wie das Erkennen von SQL Injections, Cross-Site Scripting (XSS) oder andere typische Webanwendungsschwachstellen in Nessus Professional begrenzt.

Installation

Download der Trial-Versionen auf https://www.tenable.com/downloads/nessus:

curl --request GET \
    --url 'https://www.tenable.com/downloads/api/v2/pages/nessus/files/Nessus-10.8.3-el9.x86_64.rpm' \
    --output 'Nessus-10.8.3-el9.x86_64.rpm'

dnf -y localinstall Nessus-10.8.3-el9.x86_64.rpm
systemctl enable --now nessusd.service

Nach der Installation erfolgt der Zugriff per Browser auf https://nessus:8834.

Falls die Installation fehlschägt, kann man diese per /opt/nessus/sbin/nessuscli update && systemctl restart nessusd wiederholen.

Lizenz erneuern

Die Nessus-Lizenz ist abgelaufen? Nach dem Kauf findet sie sich auf https://community.tenable.com/s/products. So wird sie erneuert:

systemctl start nessusd
/opt/nessus/sbin/nessuscli fetch --register xxxx-xxxx-xxxx-xxxx
systemctl restart nessusd

Backup und Restore

Backups werden automatisiert und täglich erzeugt, und finden sich in /opt/nessus/var/nessus/backups/. Die Variable backup_days_to_keep konfiguriert deren Anzahl (Default: 30).

Manuell angestossene Backups landen immer in /opt/nessus/var/nessus/:

/opt/nessus/sbin/nessuscli backup --create backup-$(date --iso-8601).tar.gz

Restore:

/opt/nessus/sbin/nessuscli backup --restore backup-filename.tar.gz

Settings

Nessus wird unter „Settings > Advanced“ konfiguriert. Entweder

  • man klickt auf den zu konfigurierenden Eintrag (key)

  • oder man nutzt /opt/nessus/sbin/nessuscli fix --set key=value

User/Benutzer

Nessus Pro / Expert sind seit Nessus v7 nur noch Single User Scanner - es lassen sich keine weiteren Benutzer anlegen. Wer das benötigt, muss zusätzliche Produkte bei Tenable lösen.

Policies

Unter „Scans > Policies“ lassen sich eigene Scan-Konfigurationen definieren und als .nessus-Dateien ex-/importieren.

Prüfung auf Compliance - am Beispiel von CIS

Zur Prüfung einer Maschine auf CIS-Compliance die passenden Compliance-Files

herunterladen und auf der Nessus-Maschine in einem beliebigen Ort entpacken (z.B. /opt/nessus-compliance-audit).

Der Scan einer Maschine auf CIS-Compliance auf der Kommandozeile: /opt/nessus/bin/nasl -t target-host /opt/nessus/lib/nessus/plugins/unix_compliance_check.nbin | tee /opt/nessus-compliance-audit/result.txt. Anschliessend folgenden Dialog beantworten:

Which file contains your security policy? /opt/nessus-compliance-audit/portal_audits/Unix/CIS_CentOS_8_Server_v1.0.1_L1.audit

SSH username to connect with : root
How do you want to authenticate ? (key or password) [password] password
SSH password : ****
What level of docker support ? (host/containers/all) [host] : host

Built on 2025-01-06