Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
hashr — Genera conjuntos de hashes forenses de archivos a partir de imágenes de disco, paquetes y archivos comprimidos en GCP, AWS y fuentes locales, con deduplicación y exportación a PostgreSQL/Spanner para flujos de trabajo DFIR. | Kitploit
Herramientas/GitHubGitHub/google/hashr
Forensia de DiscoAnálisis de HashAnálisis ForenseForensia DigitalRespuesta a Incidentes
GitHubgoogle/hashr

hashr

Genera conjuntos de hashes forenses de archivos a partir de imágenes de disco, paquetes y archivos comprimidos en GCP, AWS y fuentes locales, con deduplicación y exportación a PostgreSQL/Spanner para flujos de trabajo DFIR.

Ver Repositorio
130938hace 7 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

HashR: Genera tu propio conjunto de hashes



Tabla de contenidos

  • HashR: Genera tu propio conjunto de hashes
    • Tabla de contenidos
    • Acerca de
    • Requisitos
    • Compilar el binario de HashR y ejecutar pruebas
    • Configurar HashR
      • HashR usando docker
      • Configuración del sistema operativo y herramientas de terceros requeridas
      • Configurar el almacenamiento para tareas de procesamiento
        • Configurar almacenamiento PostgreSQL
        • Configurar Cloud Spanner
      • Configurar importadores
        • GCP (Google Cloud Platform)
        • AWS (Amazon Web Services)
        • GCR (Google Container Registry)
        • Windows
        • WSUS
        • TarGz
        • Deb
        • RPM
        • Zip (y otros formatos similares a zip)
        • ISO 9660
      • Configurar exportadores
        • Configurar el exportador de Postgres
        • Configurar el exportador de GCP
      • Opciones adicionales

Acerca de

HashR te permite construir tus propios conjuntos de hashes basados en tus fuentes de datos. Es una herramienta que extrae archivos y hashes de fuentes de entrada (por ejemplo, imágenes de disco crudas, imágenes de disco GCE, archivos ISO, paquetes de actualización de Windows, archivos .tar.gz, etc.).

HashR consta de los siguientes componentes:

  1. Importadores, que son responsables de copiar la fuente al almacenamiento local y realizar cualquier preprocesamiento necesario.
  2. Núcleo (Core), que se encarga de extraer el contenido de la fuente usando image_export.py (Plaso), el almacenamiento en caché y la deduplicación a nivel de repositorio, y de preparar los archivos extraídos para los exportadores.
  3. Exportadores, que son responsables de exportar archivos, metadatos y hashes a los sumideros de datos indicados.

Importadores implementados actualmente:

  1. GCP, que extrae archivos de imágenes de disco GCP base
  2. Windows, que extrae archivos de medios de instalación de Windows en formato ISO-13346.
  3. WSUS, que extrae archivos de paquetes de actualización de Windows.
  4. GCR, que extrae archivos de imágenes de contenedores almacenadas en Google Container Registry.
  5. TarGz, que extrae archivos de archivos .tar.gz.
  6. Deb, que extrae archivos de paquetes de software Debian.
  7. RPM, que extrae archivos de paquetes de software RPM.
  8. Zip, que extrae archivos de archivos .zip (y similares a zip).

Una vez que los archivos se extraen y se generan los hashes, los resultados se pasan a los exportadores. Exportadores implementados actualmente:

  1. PostgreSQL, que sube los datos a una instancia de PostgreSQL.
  2. Cloud Spanner, que sube los datos a una instancia de GCP Spanner.

Puedes elegir qué importadores quieres ejecutar; cada uno tiene requisitos diferentes. Puedes encontrar más información sobre esto en las secciones siguientes.

Requisitos

HashR requiere un sistema operativo Linux para ejecutarse; puede ser una máquina física, virtual o en la nube. A continuación se indican los requisitos óptimos de hardware:

  1. 8-16 núcleos
  2. 128 GB de memoria
  3. 2 TB de almacenamiento local rápido (se prefieren SSD)

HashR probablemente puede ejecutarse en máquinas con especificaciones menores, sin embargo, esto no fue probado a fondo.

Compilar el binario de HashR y ejecutar pruebas

Para compilar un binario de hashr, ejecuta el siguiente comando:``` shell env GOOS=linux GOARCH=amd64 go build hashr.go

Para ejecutar las pruebas del paquete principal hashR, necesitas ejecutar el emulador de Spanner:``` shell
gcloud emulators spanner start

A continuación, para ejecutar todas las pruebas, ejecuta el siguiente comando:``` shell go test -timeout 2m ./...

## Configurando HashR

### HashR en OSDFIR Infrastructure

Puede implementar HashR como parte del [proyecto OSDFIR Infrastructure](https://github.com/google/osdfir-infrastructure/tree/main/charts/hashr)
Esta implementación ejecutará HashR como cronjobs de kubernetes y permite una fácil
integración con Timesketch.

### HashR usando docker

Para ejecutar HashR en un contenedor docker, visite la [guía específica de docker](https://github.com/google/hashr/blob/main/docker/README.md)

### Configuración del SO y herramientas de terceros requeridas

HashR se encarga del trabajo pesado (análisis de imágenes de disco, volúmenes y sistemas de archivos) usando Plaso. Debe extraer el contenedor docker de Plaso usando el siguiente comando:``` shell
docker pull log2timeline/plaso

También necesitamos que 7z, que es utilizado por el importador de WSUS para la extracción recursiva de paquetes de Windows Update, esté instalado en la máquina que ejecuta HashR:``` shell sudo apt install p7zip-full

Debes permitir que el usuario bajo el cual se ejecutará HashR pueda ejecutar ciertos comandos mediante sudo. Suponiendo que tu usuario es `hashr`, crea un archivo `/etc/sudoers.d/hashr` y añade:``` shell
hashr ALL = (root) NOPASSWD: /bin/mount,/bin/umount,/sbin/losetup,/bin/rm

El usuario bajo el cual se ejecutará HashR también necesitará poder ejecutar docker. Suponiendo que tu usuario es hashr, agrégalo al grupo docker de esta manera:``` shell sudo usermod -aG docker hashr

### Configuración del almacenamiento para tareas de procesamiento

HashR necesita almacenar información sobre las fuentes procesadas. También almacena telemetría adicional sobre las tareas de procesamiento: tiempos de procesamiento, número de archivos extraídos, etc. Puedes elegir entre usar:

1. PostgreSQL
1. Cloud (GCP) Spanner

#### Configuración del almacenamiento PostgreSQL

Hay muchas formas de ejecutar y mantener tu instancia de PostgreSQL; una de las más sencillas sería ejecutarla en un contenedor Docker. Sigue los pasos a continuación para configurar un contenedor Docker de PostgreSQL.

Paso 1: Descarga la imagen de Docker de PostgreSQL.``` shell
docker pull postgres

Paso 2: Inicialice y ejecute el contenedor PostgreSQL en segundo plano. Asegúrese de ajustar la contraseña.``` 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

Paso 3: Crea una tabla que se utilizará para almacenar trabajos de procesamiento.``` shell
cat scripts/CreateJobsTable.sql | docker exec -i hashr_postgresql psql -U hashr -d hashr

Para usar PostgreSQL con el fin de almacenar información sobre tareas de procesamiento, debes especificar las siguientes opciones: -storage postgres -postgres_host <host> -postgres_port <port> -postgres_user <user> -postgres_password <pass> -postgres_db <db_name>

Configuración de Cloud Spanner

Puedes elegir almacenar los datos sobre los trabajos de procesamiento en Cloud Spanner. Para ello necesitarás un proyecto de Google Cloud. La principal ventaja de esta configuración es que puedes crear fácilmente paneles (dashboards) usando Google Data Studio y conectarte directamente a la instancia de Cloud Spanner, lo que permite la supervisión y la depuración sin ejecutar consultas contra tu instancia de PostgreSQL.

Descargar herramienta