This page looks best with JavaScript enabled

Importando datos a Bloodhound desde la terminal con Bloodhound-import

 ·   ·   3 min read  ·  Autor - Snifer

Este post será uno de los más cortos durante esta etapa del blog, ya que esta utilidad nos facilita el importar los ficheros del ingestor de Bloodhound dentro de neo4j para posteriormente verlo en Bloodhound.

En más de una ocasión me topé con que no puedo cargar a Bloodhound los .json obtenidos mayormente me sucedió por el peso de los mismos o directamente no permitía hacer el import.

Revisando alguna forma o utilidad llegué a bloodhound-import el cual cumplirá con la tarea mencionado con anterioridad.

Instalación

La instalación que recomiendo realizar es con pip para que el mismo ayude a satisfacer todas las dependencias.

1
pip install bloodhound_import

Vale aclarar que bloodhound-import se encuentra desarrollado en Python 3, por lo tanto, debes de tener pip3 para ello.

Uso de bloodhound-import

Como siempre la mayoría de las herramientas tienen la ayuda en este caso con el flag -h

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
 bloodhound-import  -h 
usage: bloodhound-import.py [-h] [-du DATABASE_USER] [-dp DATABASE_PASSWORD] [--database DATABASE] [-p PORT] [-s SCHEME] [-v] files [files ...]

positional arguments:
  files                 Files to parse.

optional arguments:
  -h, --help            show this help message and exit
  -du DATABASE_USER, --database-user DATABASE_USER
                        Username to connect to neo4j, if not specified will try to auto detect a config file.
  -dp DATABASE_PASSWORD, --database-password DATABASE_PASSWORD
                        Password to connect to neo4j, if not specified will try to auto detect a config file.
  --database DATABASE   The host neo4j is running on.
  -p PORT, --port PORT  Port of neo4j
  -s SCHEME, --scheme SCHEME
                        URI Scheme used to c

Viendo esto lo que debemos de utilizar es los flags de -du y -dp los cuales son los credenciales de acceso a neo4j deberías de poner las que correspondan, en caso de que uses otro puerto y no por defecto lo configuras con -p.

Adicionalmente, tenemos que especificar los ficheros a importar pudiendo hacerlo uno a uno o de forma masiva con el comodín *.json como lo vemos a continuación.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
bloodhound-import -du neo4j -dp exegol4thewin *.json
[INFO] 2022-02-11 02:15:38,771 - Parsing 4 files
[INFO] 2022-02-11 02:15:38,771 - Parsing bloodhound file: 20220210181423_computers.json
[INFO] 2022-02-11 02:15:39,100 - Completed file: 20220210181423_computers.json
[INFO] 2022-02-11 02:15:39,100 - Parsing bloodhound file: 20220210181423_domains.json
[INFO] 2022-02-11 02:15:39,109 - Completed file: 20220210181423_domains.json
[INFO] 2022-02-11 02:15:39,109 - Parsing bloodhound file: 20220210181423_groups.json
[INFO] 2022-02-11 02:15:39,117 - Completed file: 20220210181423_groups.json
[INFO] 2022-02-11 02:15:39,117 - Parsing bloodhound file: 20220210181423_users.json
[INFO] 2022-02-11 02:15:39,148 - Completed file: 20220210181423_users.json
[INFO] 2022-02-11 02:15:39,148 - Done

Si todo marcha correctamente tendremos la respuesta de Done, si accedemos a Bloodhound contaremos con los datos cargados.

Conoces alguna otra utilidad o herramienta que nos permita trabajar con Bloodhound?, la próxima semana estaremos con quickwin.

Regards,
Snifer

Share on
Support the author with

Avatar
WRITTEN BY
Snifer
Creador del proyecto Snifer@L4b's, Consultor en Seguridad Informática.