Nmap NSE Vulscan Script

Nmap NSE Vulscan Script

Marc Ruef
von Marc Ruef
Lesezeit: 6 Minuten

Das quelloffene Netzwerkutility nmap kann dank der Nmap Scripting Engine um eigene Mechanismen erweitert werden. Wir haben vor einigen Wochen eine 7-teilige Serie mit dem Titel Nmap NSE Hacking, sie führt in das Thema von NSE-Skripting auf der Basis von Lua ein, veröffentlicht. Im Zuge dieser Publikation haben wir ebenfalls eine NSE-Portierung von httprecon, einem Tool zur Umsetzung von HTTP-Fingerprinting, umgesetzt.

Da wir einen Grossteil unserer netzwerkbasierten Sicherheitsüberprüfungen mit der Hilfe von nmap durchführen, schreiben wir stetig neue NSE-Skripte. Eine der grössten Entwicklungen in diesem Bereich ist das nmap NSE Vulscan script. Dieses erweitert nmap, das ursprünglich als Portscanner konzipiert wurde, um die Funktionalität eines Vulnerability Scanners. Damit können im weitesten Sinn die Möglichkeiten geboten werden, wie sie zum Beispiel mit Lösungen wie Nessus oder Qualys genutzt werden können – Nämlich das Erkennen von potentiellen Schwachstellen.

Das nmap NSE Vulscan Script steht hier zum Download zur Verfügung.

Wir hatten verschiedene Ziele vor Augen, als wir das Vulscan-Skript entwickelt haben. Als erstes ging es darum direkten Nutzen aus Version Detection, eine sehr effiziente Implementierung des Application Fingerprinting durch nmap, zu ziehen. So versucht nmap auf der Basis eines Reiz/Reaktion-Schemas das angebotene Anwendungsprotokoll sowie im gleichen Zug die eingesetzte Server-Software (Hersteller, Produkt, Name, Version und zusätzliche Informationen) zu ermitteln. Diese Daten werden genutzt, um daraus die potentiell vorhandenen Schwachstellen in der gegenwärtigen Installation auszumachen.

Das nmap nse vulscan Skript erkennt qmail

Zu diesem Zweck werden die durch nmap zur Verfügung gestellten Grunddaten weiterverwendet und mit osvdb.org verglichen. Hierbei handelt es sich um eine quelloffene Verwundbarkeitsdatenbank – ähnlich wie unsere VulDB. Dabei unterstützt die gegebene Implementierung zwei unterschiedliche Lookup-Prozeduren:

Standardmässig wird die Title Search umgesetzt. Sie ist sehr effizient, da sie lediglich ein Textfeld der Tabelle vulnerabilities durchsuchen muss. Jedoch kann dieser Modus verhältnismässig viele False-Positives generieren. Durch eine spezielle Fuzzy Search wird versucht die besten Treffer zu bestimmen. Da OSVDB und nmap jedoch nicht immer die gleichen Produktenamen verwenden, kann es hierbei zu Unstimmigkeiten kommen. Eine Vielzahl von fehlerhaften Treffern wird beispielsweise bei einem Apache-Webserver generiert.

Bessere Zuverlässigkeit und damit weniger False-Positives bietet der Correlations Lookup. Dieser Modus wird aktiviert, wenn beim Aufruf von nmap der Parameter --script-args vulscancorrelation=1 verwendet wird. Sodann wird in einem ersten Schritt in der Tabelle products das Produkt bestimmt, um danach über die jeweiligen Zwischentabellen die verknüpften Verwundbarkeiten in der Tabelle vulnerabilities auszumachen. Dieser Prozess ist sehr aufwändig, da die Verknüpfungen berücksichtigt und deshalb verschiedene Tabellen durchsucht werden müssen. Da die Betreuer der OSVDB jedoch nicht alle Schwachstellen mit den jeweils verwundbaren Produkten verknüpft haben, neigt dieser Modus zu False-Negatives.

Wir arbeiten an verschiedenen Massnahmen, die aufgezeigten Schwächen der bereitgestellten Methoden zu eliminieren. Das Vulscan-Skript hilft jedoch sehr gut dabei, potentielle Schwachstellen in bekannten Produkten ausmachen zu können. Damit wird eine einfache und effiziente Grundlage geschaffen, um ein breitflächiges Vulnerability Assessment voranzutreiben und damit einen zielgerichteten Penetration Test angehen zu lassen.

Update 09. Juni 2010

Nach der Veröffentlichung des Skripts wurde durch Fyodor, der Lead Architect von nmap, die Diskussion angestossen, die erweiterte Funktionalität in den Kern des Projekts zu übernehmen:

Anyway, thanks for starting this exciting project and I hope Nmap proper will have this functionality someday.

Über den Autor

Marc Ruef

Marc Ruef ist seit Ende der 1990er Jahre im Cybersecurity-Bereich aktiv. Er hat vor allem im deutschsprachigen Raum aufgrund der Vielzahl durch ihn veröffentlichten Fachpublikationen und Bücher – dazu gehört besonders Die Kunst des Penetration Testing – Bekanntheit erlangt. Er ist Dozent an verschiedenen Hochschulen, darunter ETH, HWZ, HSLU und IKF. (ORCID 0000-0002-1328-6357)

Links

Haben Sie Interesse an einem Penetration Test?

Unsere Spezialisten kontaktieren Sie gern!

×
Cyber Threat Intelligence

Cyber Threat Intelligence

Marc Ruef

3D Printing

3D Printing

Marc Ruef

Contact Tracing App DP3T

Contact Tracing App DP3T

Marc Ruef

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv