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

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

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

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

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

Категории

Все категории
Loading categories
hyperfox — HTTP/HTTPS MITM прокси и рекордер. | Kitploit
Инструменты/GitHubGitHub/malfunkt/hyperfox
Сниффинг и анализ пакетовВеб-прокси и перехватСбор информацииТестирование на Проникновение
GitHubmalfunkt/hyperfox

hyperfox

HTTP/HTTPS MITM прокси и рекордер.

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

Популярное

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

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

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

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

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

Hyperfox

Build Status

Hyperfox — это инструмент аудита безопасности, который проксирует и записывает HTTP- и HTTPS-трафик между двумя точками.

Установка

Вы можете установить последнюю версию hyperfox в /usr/local/bin с помощью следующей команды (требуются права администратора):

root@kitploit:~
curl -sL 'https://raw.githubusercontent.com/malfunkt/hyperfox/master/install.sh' | sh

Если вы предпочитаете не брать конфеты из этого фургона, вы также можете загрузить релиз со страницы релизов и установить его вручную.

Сборка hyperfox из исходного кода

Для сборки hyperfox из исходного кода вам понадобятся Go и C-компилятор:

Используйте go install для сборки и установки hyperfox:

root@kitploit:~
go install github.com/malfunkt/hyperfox

Как это работает?

Hyperfox создает прозрачный HTTP-прокси-сервер и привязывает его к порту 1080/TCP на localhost (-addr 127.0.0.1 -http 1080). Прокси-сервер читает обычные HTTP-запросы и перенаправляет их к целевой точке назначения (заголовок Host используется для определения назначения), когда целевая точка отвечает, Hyperfox перехватывает ответ и пересылает его исходному клиенту.

Все HTTP-коммуникации между источником и назначением перехватываются Hyperfox и записываются в базу данных SQLite, которая создается автоматически. Каждый раз при запуске Hyperfox создается новая база данных (например: hyperfox-00123.db). Вы можете изменить это поведение, явно указав имя базы данных (например: -db traffic-log.db).

Использование

Запустите Hyperfox с конфигурацией по умолчанию:

root@kitploit:~
hyperfox

используйте cURL для запроса любой HTTP-страницы, параметр -x указывает cURL использовать hyperfox в качестве прокси:

root@kitploit:~
curl -x http://127.0.0.1:1080 example.com

вы сможете увидеть запись запрошенной страницы в выводе Hyperfox:

root@kitploit:~
127.0.0.1:44254 - - [11/Apr/2020:19:19:48 -0500] "GET http://example.com/ HTTP/1.1" 200 -1

Пользовательский интерфейс (-ui)

hyperfox-ui

Используйте параметр -ui для включения пользовательского интерфейса Hyperfox, который откроется в новом окне браузера:

root@kitploit:~
hyperfox -db records.db -ui

Приведенная выше команда создает веб-сервер, который привязывается к 127.0.0.1:1984. Если вы хотите изменить адрес или порт привязки, используйте флаг -ui-addr:

root@kitploit:~
hyperfox -db records.db -ui -ui-addr 127.0.0.1:3000

Изменение адреса сервера интерфейса особенно полезно, когда Hyperfox работает на удаленном хосте или хосте без графического интерфейса, и вы хотите увидеть интерфейс с другого хоста.

Включение пользовательского интерфейса также включает минимальный REST API (на 127.0.0.1:4891), который используется фронтенд-приложением.

Обратите внимание, что REST API Hyperfox защищен только случайно сгенерированным ключом, который меняется при каждом запуске Hyperfox; в зависимости от вашего сценария использования это может быть неадекватно.

Запуск Hyperfox UI на мобильном устройстве

Когда параметр -ui-addr отличается от 127.0.0.1, Hyperfox выведет QR-код, чтобы упростить подключение с мобильных устройств:

root@kitploit:~
hyperfox -db records.db -ui -ui-addr 192.168.1.23:1984

Режим SSL/TLS (-ca-cert и -ca-key)

SSL/TLS-соединения защищены сквозным шифрованием и защищены от подслушивания. Hyperfox не сможет видеть ничего, что происходит между клиентом и защищенным назначением. Это справедливо только до тех пор, пока цепочка доверия остается нетронутой.

Предположим, что клиент доверяет корневому сертификату CA, который известен Hyperfox; если это произойдет, Hyperfox сможет выпускать сертификаты, которым будет доверять клиент.

Примеры таких поддельных корневых файлов CA можно найти здесь:

  • Hyperfox CA cert
  • Hyperfox CA key

вы также можете сгенерировать собственный корневой сертификат CA и ключ.

Существует ряд способов установки корневых сертификатов CA в зависимости от вашей операционной системы.

Этот QR-код может пригодиться при установке корневого CA Hyperfox на мобильном устройстве:

Hyperfox root CA certificate

Используйте флаги -ca-cert и -ca-key, чтобы предоставить Hyperfox корневой сертификат CA и ключ, которые вы хотите использовать:

root@kitploit:~
hyperfox -ca-cert rootCA.crt -ca-key rootCA.key

приведенная выше команда создает специальный сервер и привязывает его к 127.0.0.1:10443, этот сервер ожидает поступления SSL/TLS-соединения. Когда поступает новое SSL/TLS-соединение, Hyperfox использует расширение SNI для идентификации целевого сервера имен и создания для него SSL/TLS-сертификата, этот сертификат подписывается предоставленным ключом корневого CA.

Пример перехвата TLS

Запустите Hyperfox с соответствующими параметрами TLS и -http 443 (порт 443 требует прав администратора).

root@kitploit:~
sudo hyperfox -ca-cert ./ca/rootCA.crt -ca-key ./ca/rootCA.key -https 443

Используйте cURL для выполнения HTTPS-запроса к example.com: опция -resolve указывает cURL пропустить проверку DNS и использовать 127.0.0.1 как законный адрес для example.com, а параметр -k указывает cURL принимать любой TLS-сертификат.

root@kitploit:~
curl -k -resolve example.com:443:127.0.0.1 https://example.com

вы сможете увидеть запись запрошенной страницы в выводе Hyperfox:

root@kitploit:~
127.0.0.1:36398 - - [11/Apr/2020:19:36:56 -0500] "GET https://example.com/ HTTP/2.0" 200 -1

Примеры использования

Через /etc/hosts на localhost

Добавьте хост, который хотите проверить, в файл /etc/hosts:

root@kitploit:~
example.com 127.0.0.1

Запустите Hyperfox с нужными параметрами, только помните, что вы должны использовать порты 80 для HTTP и 443 для HTTPS, и это требует прав администратора. В дополнение к -http и -https используйте параметр -dns с действительным DNS-резолвером:

root@kitploit:~
sudo hyperfox -ui -http 80 -dns 8.8.8.8

это заставит Hyperfox пропустить системный DNS-резолвер и использовать альтернативный (помните, что example.com указывает на 127.0.1).

Теперь используйте cURL и попробуйте перейти к назначению:

root@kitploit:~
curl http://example.com

Hyperfox перехватит запрос и выведет его в свой вывод:

root@kitploit:~
127.0.0.1:41766 - - [11/Apr/2020:19:43:30 -0500] "GET http://example.com/ HTTP/1.1" 200 -1

Через ARP-спуфинг в локальной сети

См. MITM-атака с Hyperfox и arpfox.

Участие в разработке

Выберите задачу, исправьте ее и отправьте pull request.

Лицензия

Copyright (c) 2012-today José Nieto, https://xiam.io

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Скачать инструмент