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

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

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

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

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

Категории

Все категории
Loading categories
mallory — HTTP/HTTPS прокси через SSH | Kitploit
Инструменты/GitHubGitHub/justmao945/mallory
Утилиты общего назначенияВеб-прокси и перехватСетевая безопасность
GitHubjustmao945/mallory

mallory

HTTP/HTTPS прокси через SSH

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

Популярное

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

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

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

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

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

mallory

HTTP/HTTPS прокси через SSH.

Установка

  • Локальная машина: go install github.com/justmao945/mallory/cmd/mallory@latest
  • Удаленный сервер: нужен наш старый друг sshd

Конфигурация

Файл конфигурации

Путь по умолчанию: $HOME/.config/mallory.json, можно указать при запуске программы

mallory -config path/to/config.json

Содержимое:

  • id_rsa — путь к файлу закрытого ключа, можно создать с помощью ssh-keygen
  • local_smart — локальный адрес для HTTP-прокси с интеллектуальным определением хоста назначения
  • local_normal аналогичен local_smart, но отправляет весь трафик через удаленный SSH-сервер без определения хоста назначения
  • remote — удаленный адрес SSH-сервера
  • blocked — список доменов, которым требуется прокси; все остальные домены будут подключаться напрямую
{
  "id_rsa": "$HOME/.ssh/id_rsa",
  "local_smart": ":1315",
  "local_normal": ":1316",
  "remote": "ssh://[email protected]:22",
  "blocked": [
    "angularjs.org",
    "golang.org",
    "google.com",
    "google.co.jp",
    "googleapis.com",
    "googleusercontent.com",
    "google-analytics.com",
    "gstatic.com",
    "twitter.com",
    "youtube.com"
  ]
}

Список заблокированных в файле конфигурации автоматически перезагружается при обновлении; также можно сделать это вручную:

# отправить сигнал для перезагрузки
kill -USR2 <pid of mallory>

# или использовать команду reload, отправив HTTP-запрос
mallory -reload

Системная конфигурация

  • Установите HTTP и HTTPS прокси на localhost с портом 1315 для использования со списком блокировки
  • Установите переменные окружения http_proxy и https_proxy в localhost:1316 для использования в терминале

Получение правильного суффикса для домена

mallory -suffix www.google.com

Простая команда для перенаправления всего трафика на заданный порт

# установка: go get github.com/justmao945/mallory/cmd/forward

# весь трафик через порт 20022 будет перенаправлен на destination.com:22
forward -network tcp -listen :20022 -forward destination.com:22

# вы можете подключиться по SSH к destination:22 через localhost:20022
ssh root@localhost -p 20022

TODO

  • возвращать HTTP-ошибку при невозможности соединения
  • автоматически добавлять хост в список при невозможности соединения
  • поддержка нескольких удаленных серверов

Docker-контейнер

Рассмотрим следующий файл конфигурации:

$ cat mallory.json
{
  "id_rsa": "/tmp/id_rsa",
  "local_smart": ":1315",
  "local_normal": ":1316",
  "remote": "ssh://[email protected]:22"
}

Вы можете запустить контейнер (zoobab/mallory), смонтировав файл конфигурации, SSH-ключ и пробросив 2 порта:

$ docker run -v $PWD/mallory.json:/root/.config/mallory.json -p 1316:1316 -p 1315:1315 -v $PWD/.ssh/id_rsa:/tmp/id_rsa zoobab/mallory
mallory: 2020/03/30 16:51:10 main.go:22: Starting...
mallory: 2020/03/30 16:51:10 main.go:23: PID: 1
mallory: 2020/03/30 16:51:10 config.go:103: Loading: /root/.config/mallory.json
mallory: 2020/03/30 16:51:10 main.go:30: Connecting remote SSH server: ssh://[email protected]:22
mallory: 2020/03/30 16:51:10 main.go:38: Local normal HTTP proxy: :1316
mallory: 2020/03/30 16:51:10 main.go:48: Local smart HTTP proxy: :1315

Мой вариант использования: подключение к кластеру Kubernetes (OpenShift), установленному за SSH-бастионом:

$ export http_proxy=http://localhost:1316
$ export https_proxy=https://localhost:1316
$ oc login https://master.mycluster.zoobab.com:8443
Authentication required for https://master.mycluster.zoobab.com:8443 (openshift)
Username: bhenrion
Password:
Login successful.
Скачать инструмент