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

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

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

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

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

Категории

Все категории
Loading categories
shootback — Обратный TCP-туннель позволяет получить доступ к цели за NAT или брандмауэром. | Kitploit
Инструменты/GitHubGitHub/aploium/shootback
Обратная инженерияСетевая безопасностьТестирование на ПроникновениеRed Teaming
GitHubaploium/shootback

shootback

Обратный TCP-туннель позволяет получить доступ к цели за NAT или брандмауэром.

Репозиторий
9762334 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

shootback

shootback — это реверсивный TCP-туннель, позволяющий получить доступ к цели за NAT или файрволом
反向TCP隧道, 使得NAT或防火墙后的内网机器可以被外网访问.
Потребляет менее 1% CPU и 8 МБ памяти при 800 одновременных соединениях.
slaver — это один файл и зависит только от стандартной библиотеки Python (2.7/3.4+).

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

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

Типичные сценарии

  1. Доступ к рабочему/школьному компьютеру (без внешнего IP) из дома
    从家里连接公司或学校里没有独立外网IP的电脑
  2. Сделать частную сеть/сайт доступным из интернета.
    使内网或内网站点能从公网访问
  3. Помощь в проникновении в частные сети.
    辅助内网渗透
  4. Помощь в офлайн-соревнованиях CTF.
    辅助CTF线下赛, 使场外选手也获得比赛网络环境
  5. Подключение к устройствам с динамическим IP, например ADSL
    连接动态IP的设备, 如ADSL
  6. Шифрование SSL между slaver и master
    slaver和master间支持SSL加密

Начало работы

  1. Требования:

    • Master: Python 3.4+, ОС не важна
    • Slaver: Python 2.7/3.4+, ОС не важна
    • Никаких внешних зависимостей, только стандартная библиотека Python
  2. Скачайте git clone https://github.com/aploium/shootback

  3. (опционально) Если нужен однофайловый slaver.py, выполните python3 build_singlefile_slaver.py

  4. Запустите эти команды

    root@kitploit:~
    # master слушает :10000 для slaver, :10080 для вас
    python3 master.py -m 0.0.0.0:10000 -c 127.0.0.1:10080
    
    # slaver подключается к master и использует example.com как цель туннеля
    # прим.: на slaver можно использовать python2, не только py3
    python3 slaver.py -m 127.0.0.1:10000 -t example.com:80
    
    # отправьте запрос на master
    curl -v -H "host: example.com" 127.0.0.1:10080
    # -- некоторый HTML-контент с example.com --
    # -- некоторый HTML-контент с example.com --
    # -- некоторый HTML-контент с example.com --
    
  5. Более реалистичный пример (с SSL):
    предположим, ваш master находится на 22.33.44.55 (как на схеме выше)

    root@kitploit:~
    # slaver_local_ssh <---> slaver <--[SSL]--> master(22.33.44.55) <--> Вы
    
    # ---- master ----
    python3 master.py -m 0.0.0.0:10000 -c 0.0.0.0:10022 --ssl
    
    # ---- slaver ----
    # прим.: опция `--ssl` предназначена для шифрования между slaver и master, не для SSH
    python(or python3) slaver.py -m 22.33.44.55:10000 -t 127.0.0.1:22 --ssl
    
    # ---- ВЫ ----
    ssh 22.33.44.55 -p 10022
    
  6. За дополнительной помощью обратитесь к python3 master.py --help и python3 slaver.py --help

Советы

  1. Запуск в фоне:
    nohup python(or python3) slaver.py -m host:port -t host:port -q &
    или:

    root@kitploit:~
    # screen — команда Linux
    screen
    python(or python3) slaver.py -m host:port -t host:port
    # нажмите ctrl-a d, чтобы открепить screen
    # при необходимости используйте "screen -r" для повторного подключения
    
  2. Любой сервис, использующий TCP, может быть передан через shootback. HTTP/FTP/Proxy/SSH/VNC/...

  3. shootback сам выполняет только передачу, не занимается шифрованием или проксированием.
    Однако вы можете использовать сторонний прокси (например, shadowsocks) в качестве цели для slaver.
    Например:
    shadowsocks_server<-->shootback_slaver<-->shootback_master<-->shadowsocks_client(socks5)

Предупреждение

  1. В Windows из-за ограничения CPython select.select()
    shootback не может обрабатывать более 512 одновременных соединений, может возникнуть
    ValueError: too many file descriptors in select()
    Если вам нужно обрабатывать такую высокую нагрузку в Windows,
    рекомендуется Anaconda-Python3,
    его ограничение в Windows — 2048

Производительность

  1. На моём ноутбуке Intel I7-4710MQ, Win10 x64:
    • 1.6 Гбит/с при передаче по loopback (с использованием iperf), с загрузкой CPU около 5%.
    • 800 потоков ApacheBench, потребление менее 1% CPU и 8 МБ памяти.
Скачать инструмент