2 Punkte von GN⁺ 2024-06-06 | 1 Kommentare | Auf WhatsApp teilen

Entropy

Entropy ist ein CLI-Tool, das Codebasen nach Zeilen mit hoher Entropie scannt, um geheime Informationen zu finden.

Installation

Installation aus dem Quellcode mit Go (empfohlen)

  • go install github.com/EwenQuim/entropy@latest
  • Der Befehl entropy kann verwendet werden
  • Zusätzliche Optionen: entropy -h, entropy -top 20 -ext go,py,js, entropy -top 5 -ignore-ext min.js,pdf,png,jpg,jpeg,zip,mp4,gif my-folder my-file1 my-file2
  • Installation in einer Zeile: go run github.com/EwenQuim/entropy@latest

Installation mit Brew

  • In Arbeit (WIP)

Installation mit Docker

  • docker run --rm -v $(pwd):/data ewenquim/entropy /data
  • Zusätzliche Optionen: docker run --rm -v $(pwd):/data ewenquim/entropy -h, docker run --rm -v $(pwd):/data ewenquim/entropy -top 20 -ext go,py,js /data, docker run --rm -v $(pwd):/data ewenquim/entropy -top 5 /data/my-folder /data/my-file
  • Das Image ist auf Docker Hub verfügbar
  • Die Option -v wird verwendet, um das aktuelle Verzeichnis in den Container zu mounten
  • Am Ende des Befehls muss /data hinzugefügt werden, sonst durchsucht das Tool das Innere des Containers statt des lokalen Dateisystems

Andere Projekte

  • Fuego: ein Go-Framework zum Erzeugen von OpenAPI-Dokumentation aus Codebasen
  • Renpy-Graphviz: ein Tool zum Erzeugen von Graphen aus Screens und Labels der Ren'Py-Game-Engine

Meinung von GN⁺

  • Mehr Sicherheit: Geheime Informationen können in einer Codebasis automatisch gefunden werden und so die Sicherheit verbessern.
  • Benutzerfreundlichkeit: Verschiedene Installationsmethoden machen es einfach, das Tool zu installieren und zu verwenden.
  • Ähnliche Tools: Werkzeuge mit ähnlicher Funktionalität sind unter anderem git-secrets und truffleHog.
  • Punkte für die Einführung: Bei der Nutzung des Tools sollten Größe und Komplexität der Codebasis berücksichtigt werden, und Zeilen mit hoher Entropie bedeuten nicht zwingend, dass es sich um geheime Informationen handelt.
  • Vor- und Nachteile der technischen Wahl: Der Einsatz von Entropy kann Sicherheitsvorfälle verhindern, es können jedoch False Positives auftreten, sodass eine zusätzliche Prüfung nötig ist.

1 Kommentare

 
GN⁺ 2024-06-06
Hacker-News-Kommentare
  • Verwendung eines Perl-Skripts: Es wird vorgeschlagen, mit einem Perl-Skript die Entropie von Text zu messen. Bei kurzen Zeilen gibt es das Problem, dass sie sich nicht gut komprimieren lassen.
  • Datenbank-Passwörter: Das Problem wurde gelöst, indem alle Datenbank-Passwörter auf abcd gesetzt wurden.
  • Fragen zur Nutzung von Entropie: Es wird nach einem guten Artikel gesucht, der erklärt, wie sich Entropie für Textanalysen einsetzen lässt. Es gibt Fragen zur Definition von Entropie und zu ihrer Wirksamkeit.
  • Problem der Entropie-Definition: Die Definition der Entropie von Text ist mehrdeutig. Es wird eine bessere Methode benötigt, um die Entropie natürlicher Sprache mit der zufälliger Zeichenketten zu vergleichen.
  • Verwandte Projekte: Verwandte Projekte wie TruffleHog, detect-secrets und Semgrep Secrets werden vorgestellt.
  • Ausdruck von Dankbarkeit: Es wird DrJones dafür gedankt, vor einigen Jahren eine Frage zur Entropie gestellt zu haben, und ein dazu passender guter Artikel wird verlinkt.
  • Lob für das CLI-Tool: Es wird als nützliches CLI-Tool gelobt, und auch der Go-Code wird als hervorragend bezeichnet.
  • Das Programm ent: Es erinnert an das seit Langem genutzte Programm ent.
  • Verwendung von Sprachmodellen: Es wird vorgeschlagen, dass Sprachmodelle wie Llama 3 Überraschung pro Token modellieren und so Bereiche mit hoher Entropie erkennen könnten.
  • Vorschlag zur Verbesserung des CLI-Tools: Es wird vorgeschlagen, ein Flag hinzuzufügen, das .gitignore automatisch einliest und entsprechende Inhalte ausschließt, sowie verschiedene Strategien zur Secret-Erkennung zu ergänzen.
  • Methode des Kompressionsvergleichs: Es wird vorgeschlagen, eine Datei zu komprimieren und die komprimierte Größe mit der Originalgröße zu vergleichen. Verschlüsselte Dateien lassen sich schlechter komprimieren als Code.