
이 도구는 여러 OSINT (Open Source Intelligence) 도구의 결과를 집계하여 회사와 관련된 하위 도메인을 열거하는 데 사용할 수 있습니다.
.______ .______ .______ ._______ ._______ ._______ _____._
:_ _ \ : __ \ : __ \ : .___ \ : __ / : .___ \ \__ _:|
| | || \____|| \____|| : | || |> \ | : | | | :|
| . | || : \ | : \ | : || |> \| : | | |
|. ____/ | |___\| |___\ \_. ___/ |_______/ \_. ___/ | |
:/ |___| |___| :/ :/ |___|
: : :
Copyright 2019 National Technology & Engineering Solutions of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with NTESS, the U.S. Government retains certain rights in this software.
Dr.ROBOT은 **도메인 정찰 및 열거(Domain Reconnaissance and Enumeration)**를 위한 도구입니다. 컨테이너를 활용하여 의존성, 운영 체제 간 불일치, 다양한 언어 처리에 따른 오버헤드를 줄임으로써, Dr.ROBOT은 높은 이식성과 구성 가능성을 갖도록 설계되었습니다.
사용 사례: 조직이 보유한 공개 서버를 최대한 많이 수집합니다. DNS 리소스를 쿼리하면 추가 분석을 수행할 수 있는 대규모의 잠재적 대상 목록을 빠르게 개발할 수 있습니다.
참고: Dr.ROBOT은 단순한 하나의 기능만 있는 도구가 아닙니다. 정보를 수집하는 데 사용되는 도구를 쉽게 사용자 정의하여, 검증된 즐겨 사용하는 도구와 함께 최신 도구의 이점을 누릴 수 있습니다.
Dr.ROBOT은 설정 파일, 템플릿, 로그, 출력 파일, 데이터베이스 파일을 $HOME 디렉토리 아래 .drrobot에 추가합니다.
디렉토리 구조는 다음과 같습니다:
-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
설정 파일을 복구할 수 없을 정도로 망가뜨린 경우, $HOME 디렉토리의 config.json 파일을 삭제하고 Dr.ROBOT을 다시 실행하면 새 설정 파일이 생성됩니다.
git clone <URL>
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 <URL>
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
프록시 뒤에서 실행하는 것은 번거로운 일이었습니다. 이를 완화하기 위해 $HOME/.drrobot/* 아래에 certs 디렉토리를 생성하여 crt 파일을 추가할 수 있습니다. Dockerfile 빌드 과정의 일환으로 이제 인증서를 포함하는 tar 파일을 생성하여 Amass와 같은 애플리케이션이 실행될 수 있도록 합니다.
Dr.ROBOT에는 docker-compose.yml 파일이 포함되어 있습니다. 이 파일은 Minio와 런타임 중 수집된 파일을 제공하기 위한 간단한 compose 파일을 포함합니다.
사용 방법:
cd /path/to/drrobot/
docker-compose up
이 도구는 Docker에 크게 의존합니다.
설치 지침은 다음을 참조하십시오:
모든 모듈을 Ansible에서 지원하도록 만들 수 있습니다.
설치 지침은 설치 가이드를 참조하십시오.
brew install gnu-tareval $(ssh-agent)
ssh-add /path/to/keyfile
자신만의 도구를 추가하려면 설정을 참조하여 시작하십시오.
사용 방법은 사용법을 참조하여 시작하십시오.