Was ein xZubi wissen muss
nmap – bester Netzwerkscanner (seit 01.09.1997 laut wikipedia)
Wow, nmap ist also dreiundzwanzig geworden, herzlichen Glückwunsch! Gefeiert wird das mit der am 03.10.2020 erschienenen Version 7.90. Die Verbesserungen finden sich im offiziellen Changelog unter nmap.org. Nmap gehört quasi zum Standard Repertoire eines jeden Fachinformatikers für Systemintegration. Zum lebenslangen Lernen gehört auch, sich mit neuen Technologien zu befassen und mal etwas auszuprobieren. In unserem snippets Github Repo haben wir ein Beispiel Dockerfile hinterlegt, welches es uns ermöglicht nmap in einem Docker Container zu deployen. Das resultierende Docker Container Image benötigt nur schlanke 15,2MiB und verfügt trotzdem über die “–script” Funktionalität.
Möglich macht dies der Multistage Build Prozess. Zuerst wird im Dockerfile der Build-Prozess hier als “builder” bezeichnet durchlaufen. Hierbei wird nmap und seine Abhängigkeiten über den “traditionellen” configure / make / make install Weg im ersten Abschnitt gebaut.
FROM ubuntu:20.04 as Builder
Danach folgt der “FROM scratch” Abschnitt für unseren “tiny” Container, in dem wir die notwendigen Dateien aus unserem “builder” kopieren und nutzbar machen.
FROM scratch COPY --from=Builder /root/tiny_nmap/ / COPY --from=Builder /root/git/nmap/nmap / CMD ["./nmap"]
Worin liegt hier nun der Vorteil? Im resultierenden Container gibt es nur nmap und seine Abhängigkeiten. Die Angriffsfläche des Container ist somit auf ein Minimum reduziert. Einen SSL/TLS Sicherheitsscan für eine Webseite, können wir dann aus dem Docker Container heraus wie folgt ausführen:
§ docker run --rm tiny_nmap "./nmap" "-sS" "-sV" "--script" "ssl*" "-p 443" ""
Bekommt man den Scanner auch als SaaS Lösung in die “Cloud”? Nun … das ist doch eine tolle Aufgabe für einen Azubi.
Der Grundstein ist gelegt.