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

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

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

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

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

Категории

Все категории
Loading categories
TransparentTorProxy — Утилита командной строки для Linux, которая прозрачно направляет весь системный трафик через сеть Tor с использованием nftables. Она обеспечивает быструю смену IP-адреса и простое переключение глобальных настроек прокси для задач, связанных с приватностью. | Kitploit
Инструменты/GitHubGitHub/onyks-os/transparenttorproxy
Оборонительные ИнструментыСниффинг и анализ пакетовСкриптинг и автоматизацияСетевая безопасностьТестирование на ПроникновениеКонфиденциальностьКомандование и УправлениеУтилиты и фреймворки

Популярное

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

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

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

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

Смотреть все инструменты →
Анализ DNS
GitHubonyks-os/transparenttorproxy

TransparentTorProxy

Утилита командной строки для Linux, которая прозрачно направляет весь системный трафик через сеть Tor с использованием nftables. Она обеспечивает быструю смену IP-адреса и простое переключение глобальных настроек прокси для задач, связанных с приватностью.

РепозиторийСайт
375541 день назадПроверено Kitploit
Поделиться

TTP - Transparent Tor Proxy

Инструмент командной строки для Linux, который прозрачно направляет весь системный трафик через сеть Tor с помощью nftables.

Sponsor Linux Python CI Status Documentation

PyPI - Downloads
OpenSSF Best Practices
License

Возможности • Требования • Установка • Использование • Как это работает • Проверка • Участие


TTP Demo


Настройка для каждого приложения не требуется — просто sudo ttp start, и каждое соединение идёт через Tor.

[!CAUTION] TTP — это инструмент, предназначенный для повышения приватности путём маршрутизации трафика через Tor. Однако ни один инструмент не может гарантировать 100% анонимность. Ваша безопасность также зависит от вашего поведения (например, использования обычного браузера вместо Tor Browser, входа в аккаунты и т. д.). Всегда используйте TTP как часть многоуровневой стратегии безопасности.

[!WARNING] Если вы информатор или занимаетесь деятельностью с высоким риском, НЕ используйте TTP. Вместо этого используйте официально проверенные и надёжные инструменты, такие как TailsOS или напрямую Tor Browser. Авторы и участники TTP не несут ответственности за вашу безопасность или последствия использования этого программного обеспечения.

Почему TTP?

Устаревшие скрипты прозрачного прокси (TorGhost, Anonsurf) перезаписывают файлы конфигурации и создают наборы правил iptables, которые отказывают открыто: когда они ломаются, трафик уходит в открытом виде. TTP построен наоборот — он отказывает закрыто и ничего не хранит на диске.

Отказ закрыт по построениюИзолированная таблица nftables inet ttp с общим reject-правилом и policy drop для forwarding. При сбое, срабатывании watchdog или некорректном завершении трафик либо маршрутизируется через Tor, либо блокируется — но никогда не выпускается наружу.
Ничего не сохраняетсяСостояние сессии, torrc, lock-файл и логи живут только в tmpfs (/run/ttp/, /run/tor/ttp/). После перезагрузки не остаётся ни следов, ни устаревшего lock-файла.
Без настройки для каждого приложенияTCP и DNS перехватываются на сетевом уровне. Никаких настроек SOCKS5, никаких переменных окружения прокси, никакой поддержки со стороны приложений.
DNS без перезаписи вашей системыНаложение mount --bind на /etc/resolv.conf вместо его редактирования, плюс volatile drop-in, нейтрализующий systemd-resolved, подкреплённый drop-правилом на уровне ядра для любого трафика к резолверам, отличным от loopback.
Утверждение об отсутствии утечек измеряетсяКаждое правило изоляции тестируется в изолированном сетевом пространстве имён против реального сгенерированного набора правил, и каждый тест сначала доказывает, что способен увидеть утечку, прежде чем утверждать, что её нет. См. Проверка.

Возможности

  • Непрерывная защита целостности — watchdog, управляемый формальным FSM (transitions), отслеживает Tor, цепочки nftables и DNS-наложение через двойной inotify-мониторинг, который ловит подмену цели симлинка. Он выполняет одно восстановление, затем применяет аварийный killswitch.
  • Раздельное туннелирование — исключение пользователей или групп (--bypass-user, --bypass-group) с нативным сопоставлением UID/GID в nftables, либо запуск одной команды вне Tor с помощью ttp bypass <cmd> через slice cgroups v2.
  • Сохранение LAN — подсети RFC 1918 и link-local остаются доступными, так что ваш принтер и NAS продолжают работать.
  • Dual-stack или никакого стека — IPv6 маршрутизируется через Tor, когда доступна loopback-маршрутизация, и полностью отбрасывается, когда нет. Третьего варианта, при котором он утекает, не существует.
  • Блокировка DoT и DoH — порт 853 отклоняется, известные публичные DoH-резолверы отклоняются на 443 (TCP и QUIC), а canary-домены браузеров отравляются в torrc.
  • Сосуществует с вашим системным Tor — запускает собственный volatile ttp-tor.service на нестандартных портах, не затрагивая существующий экземпляр Tor.
  • Мосты — obfs4 и snowflake, с режимом BYOD (bring your own daemon).

Требования

  • Linux с systemd
  • Python 3.10+
  • nftables (предустановлен в большинстве современных дистрибутивов)
  • Права root (требуются для изменения брандмауэра и DNS)

Установка

Выберите метод, который лучше всего подходит вашим задачам. Нативные пакеты настоятельно рекомендуются для стабильности системы, безопасности и чистого удаления.

1. Нативные пакеты (рекомендуется)

Установка через нативные пакеты гарантирует, что все системные зависимости (tor, nftables) и оптимизации на уровне ядра (SELinux) управляются пакетным менеджером вашей ОС.

Скачайте .deb или .rpm нужной версии из последнего релиза — пакеты являются артефактами релиза и не хранятся в репозитории — затем установите его:

  • Debian / Ubuntu: sudo apt install ./transparent-tor-proxy_0.4.9_all.deb
  • Fedora / RHEL: sudo dnf install ./transparent-tor-proxy-0.4.9-1.noarch.rpm
  • Arch Linux: соберите из репозитория с помощью cd packaging && makepkg -si

Инструкции по проверке целостности и подлинности артефактов релиза см. в Руководстве по проверке релизов.


2. Ручная установка из исходников (для разработчиков/универсальная)

Если вы разработчик или хотите установить из репозитория:

root@kitploit:~
git clone https://github.com/onyks-os/TransparentTorProxy.git
cd TransparentTorProxy
sudo ./scripts/install.sh

[!TIP] Почему стоит использовать ./install.sh?
В отличие от стандартных установщиков Python, этот скрипт «интеллектуальный». В системах на базе Red Hat он определяет, находится ли SELinux в режиме Enforcing, и динамически компилирует пользовательский модуль политики (из ttp_tor_policy.te), чтобы позволить Tor привязываться к нестандартным портам, требуемым TTP (9041, 9054). Эта оптимизация на уровне ядра не может быть выполнена с помощью pip.

3. Альтернативные методы установки (запасной вариант)

Для установки TTP через специфичные для Python менеджеры пакетов (pipx или pip с виртуальными окружениями) см. Справочник по альтернативным методам установки.

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

TTP спроектирован простым и лёгким. Полный список команд CLI, опций, кодов выхода и технических спецификаций см. в Справочнике по внешним интерфейсам.

Быстрый старт

Большинство команд, изменяющих сеть, требуют прав root (sudo):

  • Запустить прокси:

    root@kitploit:~
    sudo ttp start
    
  • Остановить прокси:

    root@kitploit:~
    sudo ttp stop
    
  • Проверить статус текущей сессии:

    root@kitploit:~
    ttp status
    
  • Проверить маршрутизацию через Tor и задержку:

    root@kitploit:~
    ttp check
    
  • Запросить новый выходной IP (сменить цепочки):

    root@kitploit:~
    sudo ttp refresh
    

Для более продвинутых конфигураций и профилей обхода см. Справочник по продвинутым профилям безопасности и использования или обратитесь к Справочнику по внешним интерфейсам.

Проверка вашей сессии

Нажмите, чтобы развернуть шаги ручной проверки

Чтобы убедиться, что туннель работает корректно и утечек нет:

  1. Проверить выходной IP Tor:

    root@kitploit:~
    curl -s https://check.torproject.org/api/ip
    
  2. Проверить маршрутизацию DNS:

    root@kitploit:~
    # Should return a valid IP via Tor's DNSPort
    dig +short A check.torproject.org
    
  3. Тест на утечку DNS (терминал):

    root@kitploit:~
    # This TXT query SHOULD return an EMPTY output
    dig +short TXT whoami.ipv4.akahelp.net
    

    Примечание: Пустой вывод — это ожидаемое поведение под Tor. Прозрачный резолвер Tor не поддерживает записи TXT; если эта команда возвращает IP вашего реального провайдера, у вас утечка DNS.

  4. Проверка через веб: Всегда выполняйте дополнительные тесты на dnsleaktest.com и ipleak.net.

Полное удаление

Чтобы полностью удалить TTP из системы:

root@kitploit:~
sudo ./scripts/uninstall.sh

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

TTP прозрачно маршрутизирует весь сетевой трафик, оркеструя стандартные подсистемы ядра Linux, системные утилиты и управляющие интерфейсы Tor:

root@kitploit:~
flowchart LR
    App["Application"] --> Local["Local Network"]
    Local --> DNS["systemd-resolved (Intercepted)"]
    DNS --> NFT["nftables (inet ttp table)"]
    NFT --> Tor["Tor Daemon"]
    Tor --> Internet["Internet"]
  1. Атомарное перенаправление брандмауэра: Генерирует и атомарно загружает изолированный набор правил nftables inet ttp для перехвата TCP и DNS-трафика, перенаправляя их в Tor и предотвращая утечки IPv6 и DoT/DoH.
  2. Наложение bind-mount для DNS: Накладывает /etc/resolv.conf с volatile-конфигурацией в оперативной памяти через bind-mount на уровне ядра, чтобы гарантировать разрешение DNS-запросов через Tor.
  3. Интеграция с демоном Tor: Настраивает, запускает и отслеживает изолированный экземпляр Tor через volatile-сервисы systemd на нестандартных портах для предотвращения конфликтов портов.
  4. Watchdog сессии: Запускает активный фоновый монитор, который проверяет целостность конфигурации и выполняет аварийный killswitch с отказом закрыто при нарушении безопасности или модификации системы.

Подробное описание потоков выполнения, системных хуков, границ безопасности и модульных компонентов см. в:

Руководстве по технической архитектуре и проектированию

Восстановление после сбоев

TTP спроектирован так, чтобы всегда восстанавливать вашу сеть, даже в граничных случаях:

СценарийЧто происходит
ttp stopОчистка без утечек: применяет блокировку при демонтаже, корректно завершает Tor, выполняет активное уничтожение сокетов, ждёт 1.5 с, очищает connection tracking, восстанавливает брандмауэр и DNS (через flush и delete таблицы) и удаляет lock-файл
Ctrl+C / killОбработчик сигналов перехватывает SIGINT/SIGTERM и выполняет обычную очистку перед выходом
kill -9 / Отключение питанияСледующий ttp start обнаруживает осиротевший lock-файл, очищает любые устаревшие стеки монтирования и автоматически восстанавливает состояние
Ручной аварийный режимЗапустите sudo ./scripts/restore-network.sh, чтобы очистить все правила nftables, сбросить DNS и удалить lock-файл

Известное поведение и ограничения

[!WARNING]

  • Tor Browser: Приложения, использующие явный прокси SOCKS5, создадут двойной хоп Tor. Используйте обычный браузер, пока TTP активен.
  • DNS-over-HTTPS (DoH): Обычные браузеры (Firefox, Chrome, Brave, Edge) могут использовать DoH в обход системного DNS. TTP нейтрализует DoH с помощью трёхуровневой защиты: (1) весь исходящий TCP-трафик (включая DoH) перенаправляется на Tor TransPort; (2) распространённые canary-домены DoH отображаются на 0.0.0.0 в torrc; (3) публичные IP-резолверы DoH блокируются на TCP/UDP порту 443 (блокируя HTTP/3 QUIC DoH). Для максимальной безопасности отключите DoH / «Secure DNS» в настройках вашего браузера.
  • IPv6: Полностью поддерживается, когда доступен. TTP динамически определяет IPv6 loopback и маршрутизирует IPv6-трафик через Tor. Если хост не поддерживает IPv6 loopback ИЛИ если передан параметр --no-ipv6, TTP отбрасывает весь исходящий IPv6-трафик для предотвращения утечек.
  • Вариация выходного IP: Разные соединения могут показывать разные выходные IP из-за изоляции потоков Tor.

Полный разбор остаточных рисков, архитектурных границ доверия и модели угроз STRIDE см. в:

docs/security-assessment.md

Разработка и тестирование

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

Правило «перед push»

[!IMPORTANT] Всегда запускайте make verify перед отправкой кода. Если эта команда завершается неудачей, код НЕ готов к продакшену.

Основные команды

КомандаЦель
make testЗапускает быстрые модульные тесты локально (root не нужен, всё замокано).
make integration-debianЗапускает полные системные тесты внутри привилегированного контейнера Docker (Debian).
make integration-allЗапускает интеграционные тесты для всех поддерживаемых дистрибутивов (Debian, Fedora, Arch).
make verifyЗапускает модульные тесты + все интеграционные тесты.
make buildГенерирует нативные пакеты .deb и .rpm.
make cleanУдаляет все артефакты сборки, кэши и временные файлы.

Проверка

Утверждение TTP об отсутствии утечек измеряется, а не декларируется. Network Sandbox Engine создаёт изолированное сетевое пространство имён, загружает в него реальный сгенерированный набор правил TTP, генерирует трафик, из которого состояла бы утечка, и наблюдает за граничным интерфейсом veth с помощью сниффера Scapy.

Каждый тест изоляции выполняется дважды. assert no leaks также истинно, когда сниффер вообще не запустился, когда имя интерфейса неверно или когда трафик так и не покинул процесс, поэтому каждый тест сначала запускает тот же стимул с очищенным набором правил и требует, чтобы пакет был замечен. Только после этого он утверждает, что набор правил TTP его останавливает. Стенд, который не может наблюдать утечку, проваливает тест, а не проходит его.

Покрыто: обычный DNS (UDP и TCP), обычный TCP, DoT на 853, QUIC DoH на UDP/443, ICMP, произвольный UDP, IPv6 — плюс обратное направление: что исключённый UID всё ещё может достичь LAN. Брандмауэр, который блокировал бы всё, прошёл бы первые семь и провалил восьмой.

root@kitploit:~
# libpcap is required: the sniffer compiles a BPF filter, and Scapy dlopen()s
# the unversioned libpcap.so that only the -devel/-dev package ships.
sudo apt install nftables iproute2 conntrack libpcap0.8 libpcap-dev   # Debian/Ubuntu
sudo dnf install nftables iproute2 conntrack libpcap libpcap-devel    # Fedora/RHEL
pip install -e ".[nse]"
make test-nse            # runs as root; TTP_REQUIRE_NSE=1 so it cannot skip itself

Это выполняется в CI при каждом push (задача Zero-leak ruleset verification) и как шаг в scripts/verify.sh перед релизом.

Продвинутое: тестирование в реальной ВМ

Хотя интеграционные тесты Docker быстры и атомарны, они не охватывают 100% нюансов ядра/systemd. Для критических изменений настоятельно рекомендуется тестировать в реальной ВМ QEMU:

root@kitploit:~
# Start a specific VM (e.g., arch)
./scripts/vm/start.sh arch

# Sync current code to the VM
./scripts/vm/send.sh

# Snapshot management for easy rollbacks
./scripts/vm/snapshot.sh arch save before-risky-test

Диагностика

Если что-то пошло не так, запустите команду диагностики:

root@kitploit:~
sudo ttp diagnose

Структура проекта

root@kitploit:~
├── pyproject.toml          # Package metadata and dependencies
├── README.md
├── CONTRIBUTING.md         # Contribution guidelines
├── SECURITY.md             # Security policy
├── scripts/                # Installation, verification, and VM management scripts
├── assets/                 # Branding and demo assets
├── packaging/              # Packaging configurations (.deb, .rpm, Arch PKGBUILD)
├── ttp/                    # Main Python source package
│   └── resources/          # Internal package resources (SELinux policies, etc.)
├── tests/                  # Unit, integration, and leak testing suites
└── docs/                   # Technical documentation, threat models, and ADRs

Участие

Вклад приветствуется, и области, где помощь важнее всего, узкие и конкретные:

  1. Сетевое взаимодействие Linux — nftables, таблицы маршрутизации, сетевые пространства имён, обнаружение интерфейсов VPN.
  2. Внутренности Tor — конфигурация демона, Stem, мосты, граничные случаи bootstrap.
  3. CI/CD — поддержание привилегированных наборов тестов быстрыми и надёжными в GitHub Actions.

Начните с CONTRIBUTING.md, где описаны два правила, на которых построена эта кодовая база: никогда не исправляйте баг, не добавив проверку, которая поймала бы его, и тест, утверждающий отсутствие, должен сначала доказать, что способен обнаружить присутствие.

Баги и запросы функцийGitHub Issues
Уязвимости безопасностиSECURITY.md — пожалуйста, не открывайте публичный issue
Поддержка версий и EOLSUPPORT.md
Релизы и пакетыGitHub Releases · PyPI

Этот проект поддерживается в свободное время. Звезда помогает другим найти его; спонсорство помогает ему продолжать существовать.

Лицензия

MIT. См. LICENSE для получения дополнительной информации.

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