Vander
Staff member
- Nov 10, 2019
- 468
- 1,156
Инструмент Python 3.5+, который использует asyncio для асинхронного перебора доменных имен.
Это быстро. Тесты на небольших хостах VPS показывают около 100 тысяч DNS-резолюций за 1,5-2 минуты. Box amazon M3 использовалась для отправки 1 млн запросов чуть более чем за 3 минуты. Ваш результат может отличаться. Вероятно, лучше избегать использования Google резолверов, если вас интересует исключительно скорость.
Отказ от ответственности
DNS-серверы вашего интернет-провайдера и домашнего маршрутизатора, вероятно, отстой. Придерживайтесь VPS с быстрыми резольверами (или настройте свои собственные), если вам нужна скорость.
Предупреждение:
- Этот инструмент способен отправлять большие объемы DNS-трафика. Мы не несем ответственности, если вы атакуете чьи-то DNS-серверы.
Code:
pip install aiodnsbrute
- Настоятельно рекомендуется использовать virtualenv.
Альтернативная установка:
В качестве альтернативы вы можете использовать обычный способ:
Code:
$ git clone https://github.com/blark/aiodnsbrute.git
$ cd aiodnsbrute
$ python setup.py install .
Получение справки:
Code:
aiodnsbrute --help
Примеры использования:
Запуск перебора с некоторыми пользовательскими параметрами:
Code:
aiodnsbrute -w wordlist.txt -vv -t 1024 domain.com
Code:
aiodnbrute -f - -o json domain.com
Code:
aiodnsbrute -r resolvers.txt -f - -o json google.com | jq '.[] | select(.ip[] | startswith("172."))'
Code:
$ aiodnsbrute foo.com
[*] Brute forcing foo.com with a maximum of 512 concurrent tasks...
[*] Using recursive DNS with the following servers: ['50.116.53.5', '50.116.58.5', '50.116.61.5']
[!] Wildcard response detected, ignoring answers containing ['23.23.86.44']
[*] Wordlist loaded, proceeding with 1000 DNS requests
[+] www.foo.com 52.73.176.251, 52.4.225.20
100%|██████████████████████████████████████████████████████████████████████████████| 1000/1000 [00:05<00:00, 140.18records/s]
[*] Completed, 1 subdomains found
Code:
aiodnsbrute --gethostbyname domain.com
Code:
aiodnsbrute -r resolvers.txt domain.com
- Возможно, вы захотите сделать ulimit -n, чтобы узнать, сколько открытых файлов разрешено. Вы также можете увеличить это число с помощью той же команды, например ulimit -n <2048>.