Skip to content

Security Tools: Trivy – Docker Container auf Sicherheitslücken durchsuchen

Container sind nach wie vor in alle Munde. Wer der Einfachheit halber mit Docker hantiert, der sollte regelmäßig die Aktualität der verwendeten Images prüfen. Nicht erst seit Log4j verbergen sich unerwünschte Sicherheitslücken in veralteten Images.

trivy

Trivy

Das Open-Source-Tool Trivy bietet die Möglichkeit lokale Images, direkt im Filesystem oder entfernte Repositorys nach Lücken zu scannen. Das Programm scannt unter anderen Base Images wie Alpine, Debian, Ubuntu, CentOS, SUSE, Photon OS, Paketmanager und andere Abhängigkeiten mithilfe der eigenen Schwachstellendatenbank ab.

Die Trivy Datenbank basiert auf NVD und diverser Security Meldungen einzelner Programmiersprachen (siehe).

Installation Trivy Security Scanner Debian/Ubuntu

sudo apt-get install wget apt-transport-https gnupg lsb-release
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add -
echo deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main | sudo tee -a /etc/apt/sources.list.d/trivy.list
sudo apt-get update
sudo apt-get install trivy

Einen Scan mit Trivy anstoßen

Um die Übersicht der Scanergebnisse zu behalten, empfiehlt es sich, die Ausgabe auf kritische Lücken zu beschränken

trivy image --severity HIGH,CRITICAL IMAGENAME

trivy-scan

Das Tool erlaubt es ebenfalls einen HTML Report zu veröffentlichen

trivy image --format template --template "@contrib/html.tpl" -o report.html golang:1.12-alpine

trivy-ergebnisse

Trivy kann auch das Filesystem untersuchen.

trivy fs /path/to/project

Schlussendlich kann auch direkt via GitHub gescannt werden.

trivy repo https://github.com/knqyf263/trivy-ci-test

Fazit

Wer Docker im Einsatz hat, sollte die verwendeten Images regelmäßig auf Sicherheitslücken und Abhängigkeiten prüfen. Der Profi baut seine Images sicher selbst und weiß, was er tut, allerdings übersieht ein DevOp auch dort mal Abhängigkeiten. Auch hier schafft Trivy praktische Abhilfe, denn es lässt ich schnell in CI Workflows, beispielsweise von Gitlab integrieren.

Download

Kali Linux Tools unter Debian/Ubuntu installieren

Nachdem unter dem Katoolin3 Artikel ein Kommentar zum kaputten Installationsscript aufgetaucht ist, möchte ich schnell ein Alternative zur Installation von Kali Tools unter Debian/Ubuntu vorstellen. Extra Scripte sind hierzu nicht mehr nötig.

kali-tools

Kali Linux Tools unter Debian/Ubuntu installieren

Eigentlich wird lediglich das Kali Linux Repository benötigt, danach können Abhängigkeiten und die gewünschten Pakete installiert werden. (Achtung das kann etwas dauern)

sudo bash -c "echo deb http://http.kali.org/kali kali-rolling main contrib non-free >> /etc/apt/sources.list

sudo apt-get update && sudo apt-get upgrade

Nun können zum Beispiel die 10 beliebtesten Tools installiert werden.

Folgende Tools sind in diesem Paket enthalten:  netcat, wireshark, burpsuite,aircrack-ng, john the ripper, sqlmap, metasploit, hydra, nmap, responder und crackmapexec

sudo apt-get install kali-tools-top10

Alternativ können auch andere Pakete gewählt werden. Diese lassen sich einfach via apt ausfindig machen.

sudo apt search kali-tools-*
  • kali-tools-802-11 - Kali Linux 802.11 attacks tools
  • kali-tools-bluetooth - Kali Linux bluetooth attacks tools
  • kali-tools-crypto-stego - Kali Linux Cryptography and Steganography tools
  • kali-tools-database - Kali Linux database assessment tools menu
  • kali-tools-exploitation - Kali Linux exploitation tools menu
  • kali-tools-forensics- Kali Linux forensic tools menu
  • kali-tools-fuzzing - Kali Linux fuzzing attacks tools
  • kali-tools-gpu/ - Kali Linux GPU tools
  • kali-tools-hardware - Kali Linux hardware attacks tools
  • kali-tools-information-gathering - Kali Linux information gathering menu
  • kali-tools-passwords Kali Linux password cracking tools menu
  • kali-tools-post-exploitation Kali Linux post exploitation tools menu
  • kali-tools-reporting Kali Linux reporting tools menu
  • kali-tools-reverse-engineering Kali Linux reverse engineering menu
  • kali-tools-rfid - Kali Linux RFID tools
  • kali-tools-sdr - Kali Linux SDR tools
  • kali-tools-sniffing-spoofing - Kali Linux sniffing & spoofing tools menu
  • kali-tools-social-engineering - Kali Linux social engineering tools menu
  • kali-tools-top10 - Kali Linux's top 10 tools
  • kali-tools-voip - Kali Linux VoIP tools
  • kali-tools-vulnerability - Kali Linux vulnerability analysis menu
  • kali-tools-web - Kali Linux webapp assessment tools menu
  • kali-tools-windows-resources - Kali Linux Windows resources
  • kali-tools-wireless - Kali Linux wireless tools menu

Unter kali.org/tools/kali-meta findet ihr weitere Informationen zu den ob erwähnten Paketen.

sudo apt search sipvicious

Wem das alles zu viel ist, der sucht einfach nach dem gewünschten Paket und installiert dieses.

kali-tools

Bei dieser Auswahl an Tools, die schnell jeder bestehenden Installation hinzugefügt werden können, kann der Winter kommen und ihr könnt viele neue Programme testen und ausprobieren. Aber bitte nur in einer Testumgebung.

Nagios - Icinga: Debian Bullseye check_interfaces schlägt fehl

icinga-logo

Ein kurzer Tipp fürs Interface Monitoring mit Icinga oder Nagios unter Debian.

Nach einem Update auf Debian Bullseye kann es vorkommen, dass einige Check Plugins fehlschlagen. So geschehen mit check_interfaces.

Das Plugin bringt nur noch folgende Ausgabe:

Plugin-Ausgabe
/usr/lib/nagios/plugins/check_interfaces: error while loading shared libraries: libnetsnmp.so.30: cannot open shared object file: No such file or directory

Zunächst kann man natürlich versuchen, die nötigen Dateien auf anderen Systemen zu suchen oder das Paket libsnmp40 zu installieren, leider bringt dies unnötige Arbeit, bzw. keine Abhilfe.

Die Lösung ist ein einfaches neu builden des Plugins:

debian_bullseye

apt-get update
apt-get -y install git build-essential libsnmp-dev

wget https://github.com/NETWAYS/check_interfaces/archive/refs/tags/v1.4.tar.gz

tar xvf v1.4.tar.gz

cd check_interfaces-1.4/

./configure --libexecdir=/usr/lib/nagios/plugins

make
make install

Der Zielpfad kann natürlich je nach Check Plugin Verzeichnis angepasst werden. Nach dem erneuten Builden unter Debian Bullseye sollte das Plugin wieder ohne Probleme funktionieren.

10 wichtige Befehle um Windows schnell und einfach zu reparieren

Für Windows gibt es verschiedene Varianten, um ein System auf Schäden zu prüfen und zu reparieren. Die bekannteste dürfte der Befehl DISM (Deployment Image Servicing and Management) sein. Diese befindet sich unter c:\windows\system32  kann aber einfach über die Kommandozeile oder PowerShell aufgerufen werden.

dism

Windows – Reparatur bei Problemen mit DISM und SFC

Voraussetzung für die Verwendung von DISM oder sfc ist eine Kommandozeile oder eine PowerShell mit Administratorrechten. Ansonsten erhaltet ihr den Fehler: 740.

Prüfung von Windows auf Beschädigungen

Dism /Online /Cleanup-Image /ScanHealth

Windows auf beschädigte Systemdateien testen

Dism /Online /Cleanup-Image /CheckHealth

Wiederherstellung von Windows und Prüfung auf beschädigte Systemdateien

Dism /Online /Cleanup-Image /RestoreHealth

Wiederherstellung von Windows und Prüfung auf beschädigte Systemdateien mithilfe eines sauberen Images

Dism /Image:C:\offline /Cleanup-Image /RestoreHealth /Source:c:\test\windowimage
#alternativ geht dies auch im Online Modus
Dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test\windowimage /LimitAccess

Start des System File Checkers  (ein etwas älteres Tool zu Systemreparatur)

sfc /scannow

Bootphasen Reparatur

Sollte sich das System schon so weit verabschiedet haben, dass ein Bootvorgang scheitert, können zusätzlich Maßnahmen ergriffen werden, um zum Beispiel den Boot Sektor zu reparieren. Mit dem Wiederherstellungsmodus ist das aus einer bestehenden Windows Installation möglich.

Computerreparaturoptionen -> Problembehandlung -> Erweiterte Optionen -> Eingabeaufforderung.

Ist auch der Wiederherstellungsmodus nicht erreichbar, sollte von einem extra Windows Stick gebootet werden.

Microsoft selbst beschreibt 4 Bootphasen, welche teilweise mit verschiedenen Befehlen repariert werden können.

Bootphasen

Bootloader Phase reparieren

Boot Codes und Boot Sektor der Systempartition reparieren

bootrec /fixmbr
bootrec /fixboot

Suche nach verwaisten Windows Installationen im Bootmanager

bootrec /scanos

Windows Boot Konfigurationsdaten neu aufbauen

bootrec /rebuildbcd

# Sollte kein verwaistes System gefunden werden kann wie folgt weit gesucht werden (windows installation: 0)
bcdedit /export c:\bcdbackup
attrib c:\\boot\\bcd -r –s -h
ren c:\\boot\\bcd bcd.old
bootrec /rebuildbcd

#Scanning all disks for Windows installations. Please wait, since this may take a while ...
#Successfully scanned Windows installations. Total identified Windows installations: 1
#D:\Windows  
#Add installation to boot list? Yes/No/All:

Als letzten Befehl noch der Klassiker um eine defekte Festplatte zu reparieren

Festplatte prüfen und reparieren

chkdsk /f /r

 

Die 30 besten VS Code Erweiterungen für Administratoren und DevOps

Wie bereits im letzten Artikel erwähnt, gibt es mit Visual Studio Code einen starken Editor, welcher sich mit Hilfe von Erweiterungen für jeden Einsatzzweck anpassen lässt.

Ich möchte euch einige davon vorstellen, welche sich für den Einsatz im Administrations- oder DevOps Bereich eignen.

Die 30 besten VS Code Erweiterungen

  1. Ansible Language: Zu dieser Erweiterung muss wenig gesagt werden. Ihr erhaltet YAML Support mit Syntax Highlighting, Autovervollständigung und der mitgelieferte YAML bzw. Ansible Linter zeigt euch Fehler adhoc an. ansible

  2. Apache Syntax Support: Der Name ist Programm und eure Apache Config Files erstrahlen beim Editieren in neuem Glanz, dank Syntax Highlighting.

  3. Atom Keymap: Solltet ihr aus der Atom Editor Welt kommen und eure alten Shortcuts vermissen, dann hilft das Plugin ungemein.

  4. Better Jinja: Das Arbeiten mit Jinja Templates kann schnell in die Verzweiflung führen. Durch diese Erweiterung erhaltet ihr neben Jinja auch Support für HTML, Markdown, YAML, CSS, Docker, Python und uvm. in euren Dateien. jinja

  5. Better TomlTom's Obvious, Minimal Language kommt immer mal wieder vor. Einige werden die Dateien von Gitlab kennen. Die Extension sorgt für bessere Lesbarkeit beim Editieren.

  6. Confluence: Atlassians Wiki Lösung findet sich sehr häufig in Unternehmen. Aus diesem Grund kommen einige sicher öfters mit deren Markup in Berührung. Hier gibt es Unterstützung für Confluence® and Jira® Markup.

  7. Debian Package Syntax Highlighting: Nur für diejenigen, die öfters mit DEB Paketen zu tun haben.

  8. Docker: Eigentlich schon essentiell, Docker Unterstützung für VS Code. docker

  9. Git History: Für Git fast unverzichtbar. Bereitet Logs auf, nimmt Grafiken zu Hand, kann vergleichen usw.

  10. Git Lens: Der selbst ernannte Supercharger. Bietet ähnlich wie Git History eine schöne Log Übersicht. Zusätzlich dazu kommen Features wie Revision Navigation, History Anzeige in der Status Bar oder der aktuellen Zeile.

  11. Gremlins Tracker: Wer kenn es nicht, ein unerwünschtes Leerzeichen sorgt im Code für Aufregung. Gremlins werden sie von dieser Erweiterung genannt und als solche auch in der Sidebar sichtbar gemacht. gremlins

  12. Hugo Language Support: NutzerInnen des Frameworks wird mit Syntax Highlighting und Snippets das Webseiten bauen erleichtert.

  13. Indent Rainbow: Einer meiner Favoriten, macht Nichts anderes als Einrückung kolorieren. Das hilft nicht nur bei YAML Dateien ungemein. 

  14. Jinja Syntax Highlighting: Jinja kann durchaus hilfreich sein, leider geht auch schnell die Übersicht im Code verloren. Durch Syntax-Hervorhebung kann dem aber vorgebeugt werden.

  15. Kubernetes: Die Beschreibung im Marketplace sagt eigentlich alles:  Develop, deploy and debug Kubernetes applications

  16. Nginx Configuration Language Support: Autovervollständigung bei der NGINX Konfiguration, nicht mehr und nicht weniger. Allerdings nicht mehr ganz aktuell. nginx

  17. Notepad++ Keymap: Für Umsteiger eignet sich diese Notepad++ Keymap.

  18. OpenSSL Utilities: Auf ITrig hatte ich bereits Anleitungen, wie Private Key, CSR oder self-signed Zertifikate über die Kommandozeile erstellt werden. Die Erweiterung erlaubt euch das Erstellen ohne weitere Kenntnisse der CLI Befehle direkt in Visual Studio Code. privkey

  19. Prettier: Schöner programmieren mit Prettier - Code formatter. Das Tools formatiert euren Code automatisch. Unterstützt werden JavaScript, TypeScript, Flow, JSX, JSON, CSS, SCSS, Less, HTML, Vue, Angular, GraphQL, Markdown, YAML.

  20. Projekt Manager: Wenn an mehreren Projekten gleichzeitig gearbeitet wird, kann es sinnvoll sein die Verwaltung dieser zu verbessern.

  21. Rainbow Brackets: Es wird wieder bunt. Regenbogenfarben für die runden Klammern, die eckigen Klammern und die verschnörkelten Klammern.

  22. Remote SSH: Dateien direkt auf Servern editieren kann durchaus praktisch sein.

  23. Salt-lint. Einfacher Linter für States und Pillars

  24. Saltstack: Analog zum Salt-Linter ist dieser Syntax Highlighter für Saltstack ein Muss. saltstack

  25. Snort:  NIDS/NIPS in Farbe.

  26. Sort: Wörter alphabetisch sortieren, einfach shift+alt+s  drücken

  27. Tomcat for Visual Code: Tomcat Server direkt aus VS Code starten und war Pakete debuggen.

  28. Toml Language Support: Ein weiterer Formater für Toml Dateien.

  29. XML Support: Alles was es für XML braucht in einem Plugin.

  30. YAML: Voller YAML Support mit Kubernetes Unterstützung. yaml

Themes

Damit die Arbeit noch mehr Spaß macht, gibt es ebenfalls viele Themes, sowie Icon Sets.

Hier eine kleine Auswahl an Themes, welche ich gerne einsetze.

  1. SynthWave 84 (die 80er sind zurück)
  2. Dracula Theme (schönes ausgewogenes Theme)
  3. Material Icons (Icons für die Ordner und Dateistruktur)
  4. Solarized Dark (Blau und Grüntöne, ist bei VSCode dabei)
  5. Monokai Pro (Theme und Icon Set zusammen)

synthwave

Eine schöne Übersicht mit Vorschauen vieler Themes bietet vscodethemes.com

Download

Schlussendlich fehlt wohl noch ein Link zu Visual Studio Code. Denn was helfen Erweiterungen, wenn der Editor fehlt.

Download VSCode