Normale Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeBlogs

GitHub aktualisiert RSA SSH Host-Key

24. März 2023 um 10:55

Kurz notiert für alle, die GitHub nutzen, um ihre Git-Repositories zu speichern. Laut einem Artikel auf dem GitHub-Blog sah sich das Team durch einen Leak eines RSA-SSH-Private-Keys diese Woche gezwungen, heute am 24. März 2023 um 05:00 UTC (06:00 Uhr deutscher Zeit) die Keys zu tauschen.

Da nach TOFU-Prinzip vom SSH-Client der Key gespeichert wird, der bei der ersten Nutzung verwendet wurde, werden nachträgliche Änderungen auf Host-Seite als Man-in-the-Middle-Angriff (MitM-Angriff) vermutet. Deswegen sollte der alte, nun komprimittierte Key aus der known_hosts entfernt werden. Wie das geht, habe ich auf dem Blog hier schon einmal beschrieben.

Bei der erneuten, jetzt wieder "erstmaligen" Verbindung mit github.com sollte in jeden Fall der neue Key unbedingt mit der verlinkten GitHub-Dokumentationsseite abgeglichen werden, da man sonst erst recht MitM-Angriffen ausgesetzt ist. In der Regel wird spätestens jetzt ein auf einem neuen Verfahren wie ed25519 basierender Host-Key angeboten, was man auch nutzen sollte.

Atom-Editor eingestellt

31. Januar 2023 um 17:44

Wie GitHub bereits im Juni 2022 verlauten ließ, wurde der Editor Atom eingestellt. Dabei wurde am 15. Dezember 2022 das Repository archiviert und die Entwicklung somit vollständig beendet. Atom erschien im Jahr 2014 und wurde direkt durch GitHub entwickelt und stellte eine Alternative zu Editoren wie Sublime Text oder Notepad++ dar. Der Editor hat dabei nachhaltig die Welt der Desktop-Anwendungen verändert.

Der Grund hierfür liegt in der Basis, die anfangs noch Atom Shell hieß, aber später in Electron umbenannt wurde – ein Begriff, den viele sicherlich kennen werden. Electron wiederum nutzt Chromium als Basis, sodass die Entwicklung plattformunabhängiger Anwendungen ermöglicht wird, bei denen die eigentliche Anwendung lediglich innerhalb der Chromium-Browserinstanz ausgeführt wird.

Electron

Electron wird dabei kontrovers diskutiert. Es fällt auf der einen Seite der Ressourcenverbrauch auf, der entsteht, wenn mehrere Electron-Anwendungen mehrere Chromium-Browserinstanzen ausführen, die dann den RAM belagern. Auch sind Anwendungen nicht gerade klein – so ist eine Größe von über 100 MB selbst für kleinere Anwendungen nicht unüblich. Nicht allzuletzt wird der Kern der Anwendung auch in JavaScript und mit Paketen aus dem npm-Ökosystem ausgeführt. All das sind Faktoren, die zu einer hohen Komplexität und regelmäßigen Sicherheitsaktualisierungen führen, welche nicht außer Acht gelassen werden dürfen. Auf der anderen Seite stellt Electron aber eine Alternative zu verschiedensten Desktop-Frameworks wie Qt oder wxWidgets dar, steht unter der MIT-Lizenz und ermöglicht dank HTML, CSS und JavaScript eine mitunter einfachere Entwicklung von grafisch hochwertigen Anwendungen. Ob die Vorteile die Nachteile aufwiegen, bleibt dem Einzelfall überlassen.

Electron wird von Anwendungen wie Discord, Microsoft Teams oder auch Microsoft Visual Studio Code eingesetzt. Letztere Anwendung wird auch Atom beerben, da es nach dem Aufkauf von GitHub durch Microsoft nur eine Frage der Zeit war, bis einer der beiden Editoren weichen muss. GitHub selber möchte sich mit der Entscheidung vor allem auf die GitHub Codespaces konzentrieren, die Visual Studio Code in den Webbrowser bringen.

Mittlerweile gibt es im übrigen auch Alternativen zu Electron. Eine davon ist Tauri. Das Rust-Framework bietet dabei ähnliche Funktionen, baut intern aber nicht auf Chromium, sondern auf den jeweiligen WebView der OS-Plattform auf. Hier ist ein kurzer Einführungsartikel zu Tauri zu finden.

Aktueller Sicherheitshinweise zu Atom

Obgleich ich diesen Artikel deutlich früher schreiben wollte, gibt es heute einen wichtigen Anlass dazu: wer Atom noch einsetzt, sollte diesen Artikel beachten, da GitHub einige Zertifikate für Atom und GitHub Desktop zurückziehen musste und ggfs. ein Downgrade der Versionen erforderlich ist.

truffleHog3 – Passwörter und Zugangsdaten in Git, Github, Gitlab oder AWS finden und entfernen

27. November 2022 um 10:09

Bereits im April dieses Jahres wurde Version 3 des Repository-Security-Tools Trufflehog veröffentlicht. Zeit, einen eigenen Artikel über das bekannte Kali Tool zu verfassen.

Was ist Trufflehog

Leaked credentials oder secret keys sollten nicht in Github Repositorys zu finden sein, dennoch passiert dies öfters als gedacht. Genau hier setzt das Tool truffleHog3 an, es scannt Repositorys und mehr auf Geheimnisse wie Zugangsdaten, API Keys usw.

Das Security-Tool durchläuft dabei die gesamte Commit-Historie jedes Branches, prüft jedes diff von jedem commit und sucht nach Geheimnissen.

Möglich wird dies unter anderem durch die Verwendung von regulären Ausdrücken und Entropie.

Mit der Version 3 unterstützt truffleHog inzwischen mehr als 700 verschiedene Key Types von AWS, Azure, Confluent oder Facebook. Eine Übersicht der Detektoren ist hier zu finden.

Folgende Code Quellen werden momentan unterstützt:

  • git
  • github
  • gitlab
  • S3
  • filesystem
  • syslog

Installation

Die Trufflehog Installation erfordert eine funktionierende GO Installation. Alternativ kann auch auf Python Pip zurückgegriffen werden, allerdings wird via Pip momentan keine aktuelle Version angeboten. Für einen Test bietet sich die Docker Variante an.

#Aktuellste Version
git clone https://github.com/trufflesecurity/trufflehog.git
cd trufflehog
go install oder go build

#Via Python Pip (allerdings steht hier nur Version 3.0.x zur Verfügung)
pip3 install trufflehog3

#Die aktuellste Version via Docker Paket laufen lassen

docker run -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --org=trufflesecurity

Anwendungsbeispiele

#Hilfe
trufflehog --help

#github scan mit Optionen
trufflehog github --repo=https://github.com/trufflesecurity/trufflehog

trufflehog github --repo=https://github.com/trufflesecurity/trufflehog --json --only-verified

#AWS scan
trufflehog s3 --bucket=<bucket name> --only-verified

#Dateisystem
trufflehog filesystem --directory=/home/guenny/ansible/repository

Da die aktuellste Version momentan nur via Source/Docker zur Verfügung steht, können Gitlab, S3 und Co nur darüber gescannt werden

  git [<flags>] <uri>
    Find credentials in git repositories.

  github [<flags>]
    Find credentials in GitHub repositories.

  gitlab --token=TOKEN [<flags>]
    Find credentials in GitLab repositories.

  filesystem --directory=DIRECTORY
    Find credentials in a filesystem.

  s3 [<flags>]
    Find credentials in S3 buckets.

  syslog [<flags>]
    Scan syslog

trufflehog


Passwörter und andere Geheimnisse aus Git-Repositories entfernen

Was tun, wenn ein Passwort gefunden wurde?

Git Filter Branch bietet eine Möglichkeit, um dieses Problem zu beheben.

Beispielsweise:

git filter-branch --prune-empty --index-filter "git rm --cached -f --ignore-unmatch löschdatei" -- --all

Git Filter Branch ist ein sehr mächtiges Tool, daher verweist Github selbst auf den BFG Repo Cleaner und git filter-Repo

Mit ersterem lassen sich relativ einfach sensitive Dateien löschen oder ersetzen.

bfg --delete-files id_{dsa,rsa}  my-repo.git
bfg --replace-text passwords.txt  my-repo.git
git push --force

Wenn ein Passwort im letzten Commit vorhanden ist, würde übrigens auch amend ausreichen:

git commit --amend

Fazit

Vergessene Zugangsdaten in Repositorys schaffen unnötige Sicherheitslücken. Diese lassen sich mit TruffleHog einfach aufspüren. Das Tool unterstützt inzwischen weit mehr als nur Github. So lässt sich der gesamte Software Development Life Cycle/SDLC bei Bedarf überwachen.

Mit TruffleHog Enterprise bietet der Hersteller inzwischen eine GUI in der Cloud an, allerdings lässt er sich diese auch bezahlen. Für eine automatisierte Überwachung der eigenen Repositorys lassen sich alle Aufgaben via Kommandozeile erledigen.

Download



Ähnliche Artikel

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

Nuclei - schneller Schwachstellen Scanner mit praktischen Vorlagen

Security: GVM 21.04 - mit Docker in 15 Minuten zum OpenVAS Schwachstellen Scanner

❌
❌