.______ .______ .______ ._______ ._______ ._______ _____._
:_ _ : __ : __ : .___ : __ / : .___ __ _:|
| | || ____|| ____|| : | || |> | : | | | :|
| . | || : | : | : || |> | : | | |
|. ____/ | |___| |___ _. ___/ |_______/ _. ___/ | |
:/ |___| |___| :/ :/ |___|
: : :
Copyright 2019 Soluciones nacionales de ingeniería y tecnología de Sandia, LLC (NTESS). Según los términos del contrato DE-NA0003525 con NTESS, el gobierno de EE. UU. conserva ciertos derechos sobre este software.
Dr.ROBOT es una herramienta para el Reconocimiento y Enumeración de Dominios . Al utilizar contenedores para reducir la sobrecarga de lidiar con dependencias, inconsistencias entre sistemas operativos y diferentes idiomas, Dr.ROBOT está diseñado para ser altamente portátil y configurable.
Caso de uso : Reúna tantos servidores públicos como posea una organización. Consultar recursos DNS nos permite desarrollar rápidamente una gran lista de posibles objetivos sobre los que puede realizar más análisis.
Nota : Dr.ROBOT no es sólo un pony de un solo truco. Puede personalizar fácilmente las herramientas que se utilizan para recopilar información, de modo que pueda disfrutar de los beneficios de utilizar lo último y lo mejor junto con sus favoritos probados en batalla.
Dr.ROBOT agrega archivos de configuración, plantillas, registros, archivos de salida y archivos db a su directorio $HOME
en .drrobot
La estructura del directorio se verá así:
-rw-r--r-- 1 0 Sep 16 12:15 ansible_inventory
drwxr-xr-x 5 160 Sep 16 12:18 ansible_plays
-rw-r--r-- 1 13576 Sep 16 12:41 config.json
drwxr-xr-x 4 128 Sep 17 10:48 dbs
drwxr-xr-x 21 672 Sep 16 13:51 docker_buildfiles
drwxr-xr-x 4 128 Sep 16 15:38 logs
drwxr-xr-x 3 96 Sep 16 12:46 output
Si alguna vez rompe su configuración y no puede guardarla, puede eliminar el archivo config.json en su directorio $HOME
y volver a ejecutar Dr.ROBOT, lo que generará un nuevo archivo de configuración para usted.
git clone
cd gitrepo
pip install -r requirements.txt
pip install -e .
drrobot --help
usage: drrobot [-h] [--proxy PROXY] [--dns DNS] [--verbose] [--dbfile DBFILE]
{gather,inspect,upload,rebuild,dumpdb,output,serve} ...
Docker DNS recon tool
positional arguments:
{gather,inspect,upload,rebuild,dumpdb,output,serve}
gather Runs initial scanning phase where tools under the
webtools/scannerscategory will run and gather
information used in the following phases
inspect Run further tools against domain information gathered
from previous step.Note: you must either supply a file
which contains a list of IP/Hostnames orThe targeted
domain must have a db under the dbs folder
upload Upload recon data to Mattermost/Slack
rebuild Rebuild the database with additional files/all files
from previous runtime
dumpdb Dump contents of database (ip,hostname,banners) to a
text file with hostname for filename
output Generate output in specified format. Contains all
information from scans (images, headers, hostnames,
ips)
serve Serve database file in docker container using django
optional arguments:
-h, --help show this help message and exit
--proxy PROXY Proxy server URL to set DOCKER http_proxy too
--dns DNS DNS server to add to resolv.conf of DOCKER containers
--verbose Display verbose statements
--dbfile DBFILE Specify what db file to use for saving data too
git clone
cd gitrepo
pipenv sync
pipenv shell
drrobot --help
usage: drrobot [-h] [--proxy PROXY] [--dns DNS] [--verbose] [--dbfile DBFILE]
{gather,inspect,upload,rebuild,dumpdb,output,serve} ...
Docker DNS recon tool
positional arguments:
{gather,inspect,upload,rebuild,dumpdb,output,serve}
gather Runs initial scanning phase where tools under the
webtools/scannerscategory will run and gather
information used in the following phases
inspect Run further tools against domain information gathered
from previous step.Note: you must either supply a file
which contains a list of IP/Hostnames orThe targeted
domain must have a db under the dbs folder
upload Upload recon data to Mattermost/Slack
rebuild Rebuild the database with additional files/all files
from previous runtime
dumpdb Dump contents of database (ip,hostname,banners) to a
text file with hostname for filename
output Generate output in specified format. Contains all
information from scans (images, headers, hostnames,
ips)
serve Serve database file in docker container using django
optional arguments:
-h, --help show this help message and exit
--proxy PROXY Proxy server URL to set DOCKER http_proxy too
--dns DNS DNS server to add to resolv.conf of DOCKER containers
--verbose Display verbose statements
--dbfile DBFILE Specify what db file to use for saving data too
Ejecutar esto detrás de un proxy fue una molestia. Para que esto sea menos doloroso, creamos un directorio de certificados en $HOME/.drrobot/*
donde puede agregar sus archivos crt. Como parte del proceso de compilación del dockerfile, ahora generamos archivos tar con los certificados para que se puedan ejecutar aplicaciones, como Amass.
Con Dr.ROBOT se incluye un archivo docker-compose.yml. Este archivo contiene un archivo de redacción simple para servir a Minio y los archivos recopilados durante el tiempo de ejecución.
Para utilizar:
cd /path/to/drrobot/
docker-compose up
Esta herramienta depende en gran medida de Docker.
Vea las instrucciones de instalación aquí:
Puede hacer que cualquier módulo sea compatible con Ansible.
Consulte la guía de instalación para obtener instrucciones.
brew install gnu-tar
eval $(ssh-agent)
ssh-add /path/to/keyfile
Para agregar su propia herramienta, consulte Configuración para comenzar.
Para conocer el uso, consulte Uso para comenzar.