
期限切れドメインのカテゴリ化/レピュテーションとArchive.orgの履歴をチェックし、フィッシングやC2ドメイン名の有望な候補を特定します。
著者 Joe Vest (@joevest) & Andrew Chiles (@andrewchiles)
ドメイン名の選択は、ペネトレーションテスト、特にRed Team活動の準備において重要な要素です。以前に良性の目的で使用され、適切にカテゴリ分類されていたドメインは、数ドルで購入できることがよくあります。そのようなドメインを使用することで、チームはフィッシングやC2関連タスクにおいて、レピュテーションベースのWebフィルターやネットワークの出力制限を回避できます。
このPythonベースのツールは、Expireddomains.netの検索エンジンに素早く問い合わせて、過去に使用履歴のある期限切れ/利用可能なドメインを取得するために作成されました。その後、オプションでSymantec Site Review(BlueCoat)、IBM X-Force、Cisco Talosなどのサービスに対してドメインレピュテーションを照会します。ツールの主な出力は、タイムスタンプ付きのHTMLテーブル形式のレポートです。
更新履歴とリリースノートについてはCHANGELOGを参照してください!
Pythonの必要条件をインストール
pip3 install -r requirements.txt
オプション - 追加のOCRサポート依存関係をインストール
Debian/Ubuntu: apt-get install tesseract-ocr python3-pil
MAC OSX: brew install tesseract
pipenv --python 3.7
pipenv install
オプション - 追加のOCRサポート依存関係をインストール
apt-get install tesseract-ocr python3-pilイメージをビルド
docker build -t domainhunter .
引数を指定して実行
docker run -it domainhunter [args]
usage: domainhunter.py [-h] [-a] [-k KEYWORD] [-c] [-f FILENAME] [--ocr]
[-r MAXRESULTS] [-s SINGLE] [-t {0,1,2,3,4,5}]
[-w MAXWIDTH] [-V]
Finds expired domains, domain categorization, and Archive.org history to determine good candidates for C2 and phishing domains
optional arguments:
-h, --help show this help message and exit
-a, --alexa Filter results to Alexa listings
-k KEYWORD, --keyword KEYWORD
Keyword used to refine search results
-c, --check Perform domain reputation checks
-f FILENAME, --filename FILENAME
Specify input file of line delimited domain names to
check
--ocr Perform OCR on CAPTCHAs when challenged
-r MAXRESULTS, --maxresults MAXRESULTS
Number of results to return when querying latest
expired/deleted domains
-s SINGLE, --single SINGLE
Performs detailed reputation checks against a single
domain name/IP.
-t {0,1,2,3,4,5}, --timing {0,1,2,3,4,5}
Modifies request timing to avoid CAPTCHAs. Slowest(0)
= 90-120 seconds, Default(3) = 10-20 seconds,
Fastest(5) = no delay
-w MAXWIDTH, --maxwidth MAXWIDTH
Width of text table
-V, --version show program's version number and exit
Examples:
./domainhunter.py -k apples -c --ocr -t5
./domainhunter.py --check --ocr -t3
./domainhunter.py --single mydomain.com
./domainhunter.py --keyword tech --check --ocr --timing 5 --alexa
./domaihunter.py --filename inputlist.txt --ocr --timing 5
デフォルトを使用して最新100件のドメインをチェックし、レピュテーションを確認する
python3 ./domainhunter.py
直近に期限切れ・削除された1000件のドメインを検索するが、レピュテーションはチェックしない
python3 ./domainhunter.py -r 1000
単一ドメインに対してすべてのレピュテーションチェックを実行
python3 ./domainhunter.py -s mydomain.com
[*] Downloading malware domain list from http://mirror1.malwaredomains.com/files/justdomains
[*] Fetching domain reputation for: mydomain.com
[*] BlueCoat: mydomain.com
[+] mydomain.com: Technology/Internet
[*] IBM xForce: mydomain.com
[+] mydomain.com: Communication Services, Software as a Service, Cloud, (Score: 1)
[*] Cisco Talos: mydomain.com
[+] mydomain.com: Web Hosting (Score: Neutral)
ドメインリストに対して、OCRでCAPTCHAを処理し最大速度ですべてのレピュテーションチェックを実行
python3 ./domainhunter.py -f <domainslist.txt> -t 5 --ocr
キーワード「dog」で利用可能なドメインを検索、最大結果数25、レピュテーションチェックを実行
python3 ./domainhunter.py -k dog -r 25 -c
____ ___ __ __ _ ___ _ _ _ _ _ _ _ _ _____ _____ ____
| _ \ / _ \| \/ | / \ |_ _| \ | | | | | | | | | \ | |_ _| ____| _ \
| | | | | | | |\/| | / _ \ | || \| | | |_| | | | | \| | | | | _| | |_) |
| |_| | |_| | | | |/ ___ \ | || |\ | | _ | |_| | |\ | | | | |___| _ <
|____/ \___/|_| |_/_/ \_\___|_| \_| |_| |_|\___/|_| \_| |_| |_____|_| \_\
Expired Domains Reputation Checker
Authors: @joevest and @andrewchiles
DISCLAIMER: This is for educational purposes only!
It is designed to promote education and the improvement of computer/cyber security.
The authors or employers are not liable for any illegal act or misuse performed by any user of this tool.
If you plan to use this content for illegal purpose, don't. Have a nice day :)
[*] Downloading malware domain list from http://mirror1.malwaredomains.com/files/justdomains
[*] Fetching expired or deleted domains containing "dog"
[*] https://www.expireddomains.net/domain-name-search/?q=dog
[*] Performing domain reputation checks for 8 domains.
[*] BlueCoat: doginmysuitcase.com
[+] doginmysuitcase.com: Travel
[*] IBM xForce: doginmysuitcase.com
[+] doginmysuitcase.com: Not found.
[*] Cisco Talos: doginmysuitcase.com
[+] doginmysuitcase.com: Uncategorized