Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
hashr — Erstellt forensische Datei-Hash-Sets aus Datenträger-Images, Paketen und Archiven aus GCP, AWS und lokalen Quellen, mit Deduplizierung und PostgreSQL/Spanner-Export für DFIR-Workflows. | Kitploit
Tools/GitHubGitHub/google/hashr
FestplattenforensikHash-AnalyseForensikDigitale ForensikIncident Response
GitHubgoogle/hashr

hashr

Erstellt forensische Datei-Hash-Sets aus Datenträger-Images, Paketen und Archiven aus GCP, AWS und lokalen Quellen, mit Deduplizierung und PostgreSQL/Spanner-Export für DFIR-Workflows.

Repository anzeigen
130938vor 7 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

HashR: Erstelle deine eigenen Hash-Sets



Inhaltsverzeichnis

  • HashR: Erstelle deine eigenen Hash-Sets
    • Inhaltsverzeichnis
    • Über
    • Voraussetzungen
    • HashR-Binary erstellen und Tests ausführen
    • HashR einrichten
      • HashR mit Docker
      • Betriebssystemkonfiguration & erforderliche Drittanbieter-Tools
      • Speicher für Verarbeitungsaufgaben einrichten
        • PostgreSQL-Speicher einrichten
        • Cloud Spanner einrichten
      • Importeure einrichten
        • GCP (Google Cloud Platform)
        • AWS (Amazon Web Services)
        • GCR (Google Container Registry)
        • Windows
        • WSUS
        • TarGz
        • Deb
        • RPM
        • Zip (und andere zip-ähnliche Formate)
        • ISO 9660
      • Exporteure einrichten
        • Postgres-Exporteur einrichten
        • GCP-Exporteur einrichten
      • Zusätzliche Flags

Über

HashR ermöglicht es dir, eigene Hash-Sets basierend auf deinen Datenquellen zu erstellen. Es ist ein Tool, das Dateien und Hashes aus Eingabequellen extrahiert (z. B. rohes Festplatten-Image, GCE-Festplatten-Image, ISO-Datei, Windows-Update-Paket, .tar.gz-Datei usw.).

HashR besteht aus den folgenden Komponenten:

  1. Importeure, die dafür verantwortlich sind, die Quelle in den lokalen Speicher zu kopieren und alle erforderlichen Vorverarbeitungsschritte durchzuführen.
  2. Core, der sich um das Extrahieren des Inhalts aus der Quelle mit image_export.py (Plaso), Caching und Deduplizierung auf Repository-Ebene sowie die Vorbereitung der extrahierten Dateien für die Exporteure kümmert.
  3. Exporteure, die dafür verantwortlich sind, Dateien, Metadaten und Hashes an die angegebenen Daten-Sinks zu exportieren.

Derzeit implementierte Importeure:

  1. GCP, extrahiert Dateien aus Basis-GCP-Festplatten-Images
  2. Windows, extrahiert Dateien aus Windows-Installationsmedien im ISO-13346-Format.
  3. WSUS, extrahiert Dateien aus Windows-Update-Paketen.
  4. GCR, extrahiert Dateien aus Container-Images, die in der Google Container Registry gespeichert sind.
  5. TarGz, extrahiert Dateien aus .tar.gz-Archiven.
  6. Deb, extrahiert Dateien aus Debian-Softwarepaketen.
  7. RPM, extrahiert Dateien aus RPM-Softwarepaketen.
  8. Zip, extrahiert Dateien aus .zip- (und zip-ähnlichen) Archiven.

Sobald Dateien extrahiert und gehasht wurden, werden die Ergebnisse an die Exporteure übergeben. Derzeit implementierte Exporteure:

  1. PostgreSQL, lädt die Daten in eine PostgreSQL-Instanz hoch.
  2. Cloud Spanner, lädt die Daten in eine GCP-Spanner-Instanz hoch.

Du kannst auswählen, welche Importeure du ausführen möchtest; jeder hat unterschiedliche Anforderungen. Mehr dazu findest du in den folgenden Abschnitten.

Voraussetzungen

HashR benötigt ein Linux-Betriebssystem, um ausgeführt zu werden. Dies kann eine physische, virtuelle oder Cloud-Maschine sein. Im Folgenden sind die optimalen Hardware-Anforderungen aufgeführt:

  1. 8-16 Kerne
  2. 128 GB Arbeitsspeicher
  3. 2 TB schneller lokaler Speicher (SSDs bevorzugt)

HashR läuft wahrscheinlich auch auf Maschinen mit geringeren Spezifikationen, dies wurde jedoch nicht gründlich getestet.

HashR-Binary erstellen und Tests ausführen

Um eine HashR-Binary zu erstellen, führe den folgenden Befehl aus:``` shell env GOOS=linux GOARCH=amd64 go build hashr.go

Um Tests für das Kernpaket hashR auszuführen, müssen Sie den Spanner-Emulator starten:``` shell
gcloud emulators spanner start

Um dann alle Tests auszuführen, führen Sie den folgenden Befehl aus:``` shell go test -timeout 2m ./...

## HashR einrichten

### HashR in OSDFIR Infrastructure

Sie können HashR als Teil des [OSDFIR-Infrastructure-Projekts](https://github.com/google/osdfir-infrastructure/tree/main/charts/hashr) bereitstellen. Diese Bereitstellung führt HashR als Kubernetes-Cronjobs aus und ermöglicht eine einfache
Integration mit Timesketch.

### HashR mit Docker

Um HashR in einem Docker-Container auszuführen, besuchen Sie den [Docker-spezifischen Leitfaden](https://github.com/google/hashr/blob/main/docker/README.md).

### OS-Konfiguration und erforderliche Drittanbieter-Tools

HashR übernimmt die schwere Arbeit (Parsen von Datenträger-Images, Volumes, Dateisystemen) mithilfe von Plaso. Sie müssen den Plaso-Docker-Container mit dem folgenden Befehl abrufen:``` shell
docker pull log2timeline/plaso

Zudem muss 7z, das vom WSUS importer für die rekursive Extraktion von Windows-Update-Paketen verwendet wird, auf dem Rechner installiert sein, auf dem HashR läuft:``` shell sudo apt install p7zip-full

Sie müssen dem Benutzer, unter dem HashR ausgeführt wird, erlauben, bestimmte Befehle über sudo auszuführen. Angenommen, Ihr Benutzer ist `hashr`, erstellen Sie eine Datei `/etc/sudoers.d/hashr` und fügen Sie Folgendes ein:``` shell
hashr ALL = (root) NOPASSWD: /bin/mount,/bin/umount,/sbin/losetup,/bin/rm

Der Benutzer, unter dem HashR ausgeführt wird, muss auch in der Lage sein, Docker auszuführen. Angenommen, Ihr Benutzer ist hashr, fügen Sie ihn wie folgt zur Docker-Gruppe hinzu:``` shell sudo usermod -aG docker hashr

### Einrichtung des Speichers für Verarbeitungsaufgaben

HashR muss Informationen über verarbeitete Quellen speichern. Außerdem speichert es zusätzliche Telemetriedaten zu Verarbeitungsaufgaben: Verarbeitungszeiten, Anzahl der extrahierten Dateien usw. Sie können zwischen folgenden Optionen wählen:

1. PostgreSQL
1. Cloud (GCP) Spanner

#### Einrichten des PostgreSQL-Speichers

Es gibt viele Möglichkeiten, Ihre PostgreSQL-Instanz zu betreiben und zu warten. Eine der einfachsten Möglichkeiten ist der Betrieb in einem Docker-Container. Befolgen Sie die folgenden Schritte, um einen PostgreSQL-Docker-Container einzurichten.

Schritt 1: Ziehen Sie das PostgreSQL-Docker-Image.``` shell
docker pull postgres

Schritt 2: Initialisieren und starten Sie den PostgreSQL-Container im Hintergrund. Achten Sie darauf, das Passwort anzupassen.``` shell docker run -itd -e POSTGRES_DB=hashr -e POSTGRES_USER=hashr -e POSTGRES_PASSWORD=hashr -p 5432:5432 -v /data:/var/lib/postgresql/data --name hashr_postgresql postgres

Schritt 3: Erstellen Sie eine Tabelle, die zum Speichern von Verarbeitungsaufträgen verwendet wird.``` shell
cat scripts/CreateJobsTable.sql | docker exec -i hashr_postgresql psql -U hashr -d hashr

Um PostgreSQL zum Speichern von Informationen über Verarbeitungsaufgaben zu verwenden, müssen Sie die folgenden Flags angeben: -storage postgres -postgres_host <host> -postgres_port <port> -postgres_user <user> -postgres_password <pass> -postgres_db <db_name>

Einrichten von Cloud Spanner

Sie können wählen, die Daten über Verarbeitungsaufträge in Cloud Spanner zu speichern. Dazu benötigen Sie ein Google Cloud-Projekt. Der Hauptvorteil dieser Einrichtung ist, dass Sie mithilfe von Google Data Studio problemlos Dashboards erstellen und direkt eine Verbindung zur Cloud-Spanner-Instanz herstellen können, was Überwachung und Debugging ermöglicht, ohne Abfragen gegen Ihre PostgreSQL-Instanz ausführen zu müssen.

Tool herunterladen