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.

PostgreSQL 13 Cluster auf PostgreSQL 14 aktualisieren

Die neue Version 14 der Datenbanksoftware ist bereits einige Tage verfügbar.

Es gibt dazu einen ausführlichen Release Log, den ihr euch gerne zu Gemüte führen dürft.

postgres

Installation und Update auf PostgreSQL 14 unter Debian/Ubuntu

# Create the file repository configuration:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

# Import the repository signing key:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

# Update the package lists:
sudo apt-get update

# Install the latest version of PostgreSQL.
sudo apt-get -y install postgresql-14

# Sicherung erstellen
sudo su postgres
pg_dumpall > Sicherung
exit

#Vorhandene Cluster anzeigen
pg_lsclusters

#Neues Cluster anhalten
sudo pg_dropcluster --stop 14 main

#Vorhandenes Cluster aktualisieren
sudo pg_upgradecluster 13 main

 postgres14_updateNachdem die Datenbanken aktualisiert und getestet wurden, kann die alte Version gelöscht werden.

sudo pg_ctlcluster 14 main status

pg_ctl: server is running (PID: 60700)
/usr/lib/postgresql/14/bin/postgres "-D" "/var/lib/postgresql/14/main" "-c" "config_file=/etc/postgresql/14/main/postgresql.conf"

sudo pg_isready

/var/run/postgresql:5433 - accepting connections
sudo pg_dropcluster 13 main

 

Serverumzug mit Serendipity - Datenbank Update notwendig

Vor einiger Zeit ist ITrig auf einen neuen Server umgezogen.

Nach dem Umzug wollte das Blog nicht mehr so richtig funktionieren. Auch der Adminbereich war nicht mehr erreichbar und zeigte komische Fehler an. Nach etwas Recherche war schnell klar, dass bei Serendipity Pfade leider hart in der Datenbank stehen, welche nicht mehr auf die neue Serverstruktur passten.

Da diese Schritte nicht in der Umzugsanleitung der S9y Seite vorhanden sind, bzw. ich sie einfach nicht gefunden habe, möchte ich hier das Vorgehen dokumentieren.

s9y-logo

Serendipity Blog Pfad in der Datenbank anpassen

Zunächst wird die Ausgabe des aktuellen Pfads geprüft.

mysql -uroot -p
USE s9y_db;
SELECT * FROM `serendipity_config` WHERE name='serendipityPath'

               serendipityPath               /alterPfad/html/www/

Nun kann der Pfad auf die neue Struktur aktualisiert werden.

UPDATE `serendipity_config` set value = '/neuerPfad/' WHERE name = 'serendipityPath';

Ein weiterer Wert, der vielleicht angepasst werden muss ist serendipityHTTPPath.

SELECT * FROM `serendipity_config` WHERE name='serendipityHTTPPath'

UPDATE `serendipity_config` set value = '/NeuerPfad/' WHERE name = 'serendipityHTTPPath';

Sollte sich zusätzlich die URL geändert haben, dann kann auch diese direkt angepasst werden.

SELECT * FROM `serendipity_config` WHERE name = 'defaultBaseURL';

UPDATE `serendipity_config` set value = 'https://neuedomain.de' WHERE name = 'defaultBaseURL';

Nun sollte das System wieder wie gewohnt auf dem neuen Server erreichbar sein.

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.