Во время тестирования веб-сайта или веб-приложения на проникновение нам необходимо собрать как можно больше информации о нашей цели.
Сбор информации о DNS также является обязательным для эксперта по безопасности.
В сегодняшней статье мы рассмотрим dnsX – инструмент, созданный компанией projectdiscovery.
Это быстрый и многоцелевой набор инструментов DNS, позволяющий выполнять несколько DNS-запросов по нашему выбору со списком пользовательских резолверов.
Он также поддерживает фильтрацию подстановочных знаков DNS, подобно shuffledns.
Мы узнаем, как установить dnsX на нашу систему Kali Linux и использовать его.
Ключевые особенности dnsX
- Простая и удобная утилита для запроса записей DNS.
- Поддержка запросов A, AAAA, CNAME, PTR, NS, MX, TXT, SOA.
- Поддержка DNS Resolution / Brute-force.
- Поддержка ввода пользовательского резолвера.
- Поддержка нескольких форматов резолверов (TCP/UDP/DOH/DOT).
- Поддержка stdin и stdout.
- Поддержка автоматической обработки подстановочных знаков
Установка dnsX на Kali Linux
После обновления Kali Linux 2022.1 dnsX был добавлен в репозиторий Kali Linux, поэтому установка не составит труда, нам просто нужно выполнить следующую команду в терминале:
sudo apt install dnsx -y
На следующем снимке экрана мы видим результат выполнения вышеуказанной команды:
Готово! dnsX успешно установлен на нашу систему Kali Linux.
Использование dnsX в Kali Linux
Начнем с раздела справки инструмента dnsX.
Для проверки опций выполним следующую команду:
dnsx -h
Вывод:
└─# dnsx -h dnsx is a fast and multi-purpose DNS toolkit allow to run multiple probes using retryabledns library. Usage: dnsx [flags] Flags: INPUT: -l, -list string File input with list of sub(domains)/hosts QUERY: -a Query A record (default) -aaaa Query AAAA record -cname Query CNAME record -ns Query NS record -txt Query TXT record -ptr Query PTR record -mx Query MX record -soa Query SOA record FILTERS: -resp Display DNS response -resp-only Display DNS response only -rcode, -rc string Display DNS status code (eg. -rcode noerror,servfail,refused) RATE-LIMIT: -t, -c int Number of concurrent threads to use (default 100) -rl, -rate-limit int Number of DNS request/second (disabled as default) (default -1) OUTPUT: -o, -output string File to write output -json Write output in JSONL(ines) format DEBUG: -silent Show only results in the output -v, -verbose Verbose output -raw, -debug Display RAW DNS response -stats Display stats of the running scan -version Show version of dnsx OPTIMIZATION: -retry int Number of DNS retries (default 1) -hf, -hostsfile Parse system host file -trace Perform DNS trace -trace-max-recursion int Max recursion for dns trace (default 32767) -flush-interval int Flush interval of output file (default 10) -resume Resume CONFIGURATIONS: -r, -resolver string List of resolvers (file or comma separated) -wt, -wildcard-threshold int Wildcard Filter Threshold (default 5) -wd, -wildcard-domain string Domain name for wildcard filtering (other flags will be ignored)
Теперь давайте начнем использовать его на примере, здесь у нас есть список поддоменов, мы можем выполнить следующую команду для проверки активных поддоменов:
dnsx -l path/to/subdomains.txt
subfinder -silent -d hackthissite.org | dnsx -silent
В приведенной выше команде мы использовали флаг -silent, чтобы сохранить наш терминал чистым.
Команде потребуется некоторое время, чтобы собрать все данные
Также dnsX можно использовать для вывода A записей, для примера:
subfinder -silent -d hackthissite.org | dnsx -silent -a -cname -resp
Также он может извлекать только A записи
Для этого выполним следующую команду:
subfinder -silent -d hackthissite.org | dnsx -silent -a -resp-only
Теперь он будет извлекать только A записи, как показано на следующем снимке экрана:
dnsX можно использовать для извлечения записей CNAME, например:
subfinder -silent -d hackthissite.org | dnsx -silent -cname -resp
Мы можем увидеть коды состояния dns с помощью инструмента dnsX, как мы это сделали в следующей команде:
subfinder -silent -d hackthissite.org | dnsx -silent -rcode noerror,servfail,refused
Этот инструмент dnsX также может выполнять перебор поддоменов для заданного домена или списка доменов, используя флаги -d и -w.
¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.\
см. также:
- 🖧 9 Примеров команд Host для запроса сведений о DNS
- 🔍 dns monster: Пассивная система перехвата/мониторинга DNS
- 🌐 Как выполнить обратный поиск DNS
- 🐳 Как определить DNS в контейнерах Docker
- 🐧 Как очистить кэш DNS в Windows, Chrome, Firefox и Safari
- ⚡️Как проверить роутер на DNS hijacking?
- 🐧 Отравление кэша DNS SAD: временное исправление для серверов и настольных компьютеров Linux