Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
dnschef-ng — DNSChef (NG) — DNS-прокси для специалистов по пентесту и аналитиков вредоносного ПО | Kitploit
Инструменты/GitHubGitHub/byt3bl33d3r/dnschef-ng
Эксфильтрация данныхСбор информацииСетевая безопасностьАнализ вредоносных программТестирование на ПроникновениеRed TeamingАнализ DNSArchived
GitHubbyt3bl33d3r/dnschef-ng

dnschef-ng

DNSChef (NG) — DNS-прокси для специалистов по пентесту и аналитиков вредоносного ПО

Репозиторий
17316312 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

[!NOTE] Это обновлённая версия DNSChef, изначально написанного @iphelix``` _ _ __
| | v0.7 | | / |
| | __ ___ | | | | ______ _ __ __ _ / | '_ \/ __|/ __| '_ \ / _ \ _|______| '_ \ / _ | | (| | | | _ \ (__| | | | __/ | | | | | (| | _,|
| ||/_|| ||___|| || ||_, | / | |_/ D O C U M E N T A T I O N

DNSChef — это высококонфигурируемый DNS-прокси для специалистов по тестированию на проникновение и аналитиков вредоносного ПО. DNS-прокси (также известный как «Fake DNS») — это инструмент, используемый для анализа сетевого трафика приложений и других целей. Например, DNS-прокси можно использовать для подмены запросов к «badguy.com», чтобы они указывали на локальную машину для блокировки или перехвата, а не на реальный хост в Интернете.

Существует несколько DNS-прокси. Большинство из них просто перенаправляют все DNS-запросы на один IP-адрес или реализуют лишь примитивную фильтрацию. DNSChef был разработан в рамках теста на проникновение, когда возникла потребность в более гибко настраиваемой системе. В результате DNSChef — это кроссплатформенное приложение, способное подделывать ответы на основе включающих и исключающих списков доменов, поддерживающее несколько типов DNS-записей, сопоставление доменов с подстановочными знаками, проксирование настоящих ответов для несопоставленных доменов, внешние конфигурационные файлы, IPv6 и многие другие функции. Подробное описание каждой функции и рекомендуемые сценарии использования приведены ниже.

Использование DNS-прокси рекомендуется в ситуациях, когда невозможно заставить приложение напрямую использовать какой-либо другой прокси-сервер. Например, некоторые мобильные приложения полностью игнорируют настройки HTTP-прокси операционной системы. В таких случаях использование DNS-прокси, например DNSChef, позволяет обмануть приложение и заставить его перенаправлять соединения на нужный адрес.

## Новые возможности

- Требуется Python 3.11+
- Поддерживает передачу файлов через DNS (пока только через `A`, `AAAA`, `TXT`...)
- Конфигурационный файл теперь в формате TOML
- Опциональный HTTP API (позволяет запрашивать логи и обновлять конфигурацию удалённо)
- Полностью асинхронный для повышения производительности (использует AsyncIO)
- Структурированное логирование и ряд улучшений качества жизни
- Теперь является Python-пакетом
- Поддержка Docker
- Включён ряд PR и исправлений из оригинального репозитория

## Установка

Для установки последнего релиза следует использовать [pipx](https://pypa.github.io/pipx/) (если только ты не говнюк, который любит грязные стейки):

    pipx install dnschef-ng

Если вам нужен HTTP API (требуются дополнительные зависимости):
    
    pipx install dnschef-ng[api]

Установите последнюю версию из Git, используя pipx:

     pipx install git+https://github.com/byt3bl33d3r/dnschef-ng.git

Установите последнюю версию из Git с помощью pipx вместе с зависимостями для HTTP API:

     pipx install "git+https://github.com/byt3bl33d3r/dnschef-ng.git#egg=dnschef-ng[api]"

## Настройка DNS-прокси

Прежде чем начать использовать DNSChef, необходимо настроить вашу машину на использование DNS-сервера, на котором запущен этот инструмент. У вас есть несколько вариантов в зависимости от операционной системы:

- **Linux** — Отредактируйте */etc/resolv.conf*, добавив в самое начало строку с вашим хостом для анализа трафика (например, добавьте «nameserver 127.0.0.1», если вы работаете локально). Кроме того, можно добавить адрес DNS-сервера с помощью таких инструментов, как Network Manager. В Network Manager откройте *Параметры IPv4*, выберите *Только автоматические (DHCP) адреса* или *Вручную* из выпадающего списка *Метод* и отредактируйте текстовое поле *DNS-серверы*, указав IP-адрес, на котором запущен DNSChef.

- **Windows** — Выберите *Сетевые подключения* в *Панели управления*. Затем выберите одно из подключений (например, «Local Area Connection»), щёлкните по нему правой кнопкой мыши и выберите «Свойства». В появившемся диалоговом окне выберите *Интернет-протокол (TCP/IP)* и нажмите «Свойства». Наконец, выберите переключатель *Использовать следующие адреса DNS-серверов* и введите IP-адрес, на котором запущен DNSChef. Например, если вы работаете локально, введите 127.0.0.1.

- **OS X** — Откройте *Системные настройки* и нажмите на значок *Сеть*. Выберите активный интерфейс и заполните поле *DNS-сервер*. Если вы используете AirPort, вам нужно нажать кнопку *Дополнительно...* и изменить DNS-серверы там. В качестве альтернативы можно отредактировать */etc/resolv.conf* и добавить поддельный DNS-сервер в самое начало (например, «nameserver 127.0.0.1»).

- **iOS** — Откройте *Настройки* и выберите *Основные*. Затем выберите *Wi-Fi* и нажмите на синюю стрелку справа от активной точки доступа в списке. Измените запись DNS, чтобы она указывала на хост, на котором запущен DNSChef. Убедитесь, что вы отключили сотовую связь (если она доступна).

- **Android** — Откройте *Настройки* и выберите *Беспроводные сети*. Нажмите на *Настройки Wi-Fi* и выберите *Дополнительно*, нажав кнопку *Опции* на телефоне. Установите флажок *Использовать статический IP-адрес* и настройте собственный DNS-сервер.

Если у вас нет возможности изменить DNS-настройки устройства вручную, у вас всё ещё есть несколько вариантов, включая такие техники, как [ARP Spoofing](http://en.wikipedia.org/wiki/ARP_spoofing), [Rogue DHCP](http://www.yersinia.net/doc.htm) и другие творческие методы.

Наконец, вам нужно настроить поддельный сервис, на который DNSChef будет направлять все запросы. Например, если вы пытаетесь перехватывать веб-трафик, необходимо поднять отдельный веб-сервер на порту 80 или настроить веб-прокси (например, Burp) для перехвата трафика. DNSChef будет направлять запросы на ваш хост с прокси/сервером, на котором правильно настроены соответствующие сервисы.

## Запуск DNSChef

DNSChef — это кроссплатформенное приложение, разработанное на Python, которое должно работать на большинстве платформ с интерпретатором Python. Это руководство будет сосредоточено на Unix-окружениях, однако все примеры ниже были протестированы и работают в Windows.

Давайте попробуем DNSChef в его самой базовой функции мониторинга. Выполните следующую команду от имени root (требуется для запуска сервера на порту 53):

    # ./dnschef.py
        
              _                _          __  
             | | version 0.2  | |        / _| 
           __| |_ __  ___  ___| |__   ___| |_ 
          / _` | '_ \/ __|/ __| '_ \ / _ \  _|
         | (_| | | | \__ \ (__| | | |  __/ |  
          \__,_|_| |_|___/\___|_| |_|\___|_|  
                       [email protected]  

    [*] DNSChef started on interface: 127.0.0.1 
    [*] Using the following nameservers: 8.8.8.8
    [*] No parameters were specified. Running in full proxy mode

Без параметров DNSChef запускается в режиме полного проксирования. Это означает, что все запросы будут просто перенаправляться на вышестоящий DNS-сервер (по умолчанию 8.8.8.8) и возвращаться обратно запрашивающему хосту. Например, давайте запросим запись «A» для домена и посмотрим на результат:

    $ host -t A thesprawl.org
    thesprawl.org has address 108.59.3.64

DNSChef выведет следующую строку журнала, показывающую время, IP-адрес источника, тип запрошенной записи и, что самое важное, какое имя было запрошено:

    [23:54:03] 127.0.0.1: proxying the response of type 'A' for thesprawl.org

Этот режим полезен для простого мониторинга приложений, когда нужно выяснить, с какими доменами оно взаимодействует.
Скачать инструмент