
Сторонний Gopher Assassin для Havoc Framework.
Сторонний Gopher Assassin для фреймворка Havoc
это как видеоигра :D
Это сторонний агент для Havoc C2, написанный на Golang. В основном написан как учебный проект, но я уверен, что он всё равно полезен.
К тому времени, как это выйдет, вы сможете прочитать больше о том, что это и почему, в моём блоге: здесь
Вклад приветствуется! Я не планирую обновлять это слишком регулярно, но если мне будет весело это делать, со временем могу добавить что-то ещё.
| Command | Description | Example |
|---|---|---|
checkin | Возвращает базовую информацию о системе | checkin |
shell | Выполняет команду (через os/exec в Go) | shell netstat -ano |
kill | Завершает процесс по PID | kill 31337 |
ls | Выводит список файлов в указанной директории | ls C:\Users\Administrator\Desktop |
ps | Выводит список запущенных процессов | ps |
upload | Загружает файл в удалённый путь | upload /opt/chisel.exe C:\Windows\Temp\Bruh.exe |
download | Скачивает удалённый файл в папку loot | download C:\passwords.txt pwd.txt |
portscan | TCP-портсканирование одной цели. | portscan common 192.168.13.37 4 |
shellcode | Загружает шеллкод в процесс импланта с помощью CreateThread | shellcode 9090ccc3 |
execute-assembly | Запускает .NET-сборки в памяти | execute-assembly /opt/tools/Seatbelt.exe -group=user -q |
o7 | Гофер умирает :( | o7 |
Как только ваш teamserver запущен, всё просто — выполните следующее:
python handler.py./gopher47Вы можете использовать GUI Havoc для компиляции или просто редактировать исходный код как угодно и играться с Makefile — кода там не так много.
Мне просто хотелось собрать настоящий проект на Golang, на который я могу указать. Но ещё Golang отлично подходит для кросс-компиляции, у него хорошая экосистема разработки, и на нём писать гораздо проще, чем на C/C++.
хз, но повзрослей. Обфусцируй и настраивай его сам, хватит быть младенцем.
Golang, как и Rust и другие языки, компилируется статически, то есть все библиотеки, необходимые для запуска исполняемого файла, вшиты в бинарник, что увеличивает его размер. Если хотите уменьшить размер, я не буду делать это по умолчанию, но загляните по этой ссылке для советов. ОБНОВЛЕНИЕ: я добавил опцию, которая делает часть этого, но я уверен, что вы можете добавить больше кастомизации :/
Плохой вопрос. Если вы прочитаете код, вы найдёте ряд вещей, которые не идеальны. Если бы вы действительно беспокоились об OPSEC, вы бы уже начали читать код и вносить исправления там, где это нужно.
Пока нет. Текущий API Havoc позволяет обрабатывать только один handler одним агентом, и на самом деле нет хорошего, чистого способа запустить несколько одновременно. Реворки в процессе, но пока может быть только один Gopher47.
Нет. Начиная с версии 0.4 Havoc, нет способа выполнить безопасный обмен ключами без прямой компрометации ключей. Как только система будет переработана в интерфейсе havoc-py, я это сделаю. ПОЭТОМУ ЭТО НЕБЕЗОПАСНО С ТОЧКИ ЗРЕНИЯ OPSEC пожалуйста, не будьте глупыми и не используйте это в реальных операциях; для CTF/лабораторий — норм
HTTPS обеспечит шифрование, но используйте на свой страх и риск.
Я в 1:00 ночи фотошопил пистолет в лапу гофера Golang ради этого.
Невозможно создать исследовательский инструмент, значимый для наступательной безопасности, и выпустить его в открытый доступ без возможности попадания в чужие руки. Этот инструмент предназначен только для законных и этических целей, включая, помимо прочего, исследования, оценку безопасности и обучение.
TL;DR: Оставайтесь в рамках закона, народ.