• XSS.stack #1 – первый литературный журнал от юзеров форума

слишком жирный дроппер [C]

diniila

HDD-drive
Пользователь
Регистрация
15.01.2023
Сообщения
33
Реакции
5
Здравствуйте, я разрабатываю дроппер, который позволяет мне расшифровывать шеллкод, ранее зашифрованный с использованием гибридного шифрования. Проблема в том, что я не нашёл другого способа, кроме как использовать статически скомпилированный OpenSSL, из-за чего мой дроппер получается слишком тяжёлым (4 МБ). Да, он работает и остаётся незамеченным, но с таким большим размером он не особенно скрытный, хотя я и не собираюсь использовать этот дроппер где-либо, кроме своего лабораторного стенда. Есть ли у вас идеи, как я могу радикально уменьшить размер дроппера? Заранее спасибо.
Заранее прошу прощения за возможные ошибки в переводе.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Получение шеллкода во время выполнения с внешнего источника. Вместо встраивания в дроппер можно загружать с C2-сервера во время выполнения. В этом случае в дроппере будет содержаться только AES-ключ, а не весь шеллкод — что делает его гораздо более компактным.
 
Получение шеллкода во время выполнения с внешнего источника. Вместо встраивания в дроппер можно загружать с C2-сервера во время выполнения. В этом случае в дроппере будет содержаться только AES-ключ, а не весь шеллкод — что делает его гораздо более компактным.
GPT привет :D
 
Здравствуйте, я разрабатываю дроппер, который позволяет мне расшифровывать шеллкод, ранее зашифрованный с использованием гибридного шифрования. Проблема в том, что я не нашёл другого способа, кроме как использовать статически скомпилированный OpenSSL, из-за чего мой дроппер получается слишком тяжёлым (4 МБ). Да, он работает и остаётся незамеченным, но с таким большим размером он не особенно скрытный, хотя я и не собираюсь использовать этот дроппер где-либо, кроме своего лабораторного стенда. Есть ли у вас идеи, как я могу радикально уменьшить размер дроппера? Заранее спасибо.
Заранее прошу прощения за возможные ошибки в переводе.
И нафига использовать гибридку, если древний RC4, в 15 строк кода, никто в обозримом будущем не расшифрует?
 
используй те библиотеки в которые умеешь. на кой х#й тебе тащить целую OpenSSL? ради каких алгоритмов?
 
используй те библиотеки в которые умеешь. на кой х#й тебе тащить целую OpenSSL? ради каких алгоритмов?
только чтобы расшифровать мой RSA-ключ и AES-зашифрованный дроппер
 
только чтобы расшифровать мой RSA-ключ и AES-зашифрованный дроппер
"зачем а главное зачем"
рс4 хватит за глаза для визуального сокрытия
захотят зареверсить - зареверсят, буквально за минуту - поставив хук на NtAllocateVirtualMemory))))
а все остальное - фетиши
 
И нафига использовать гибридку, если древний RC4, в 15 строк кода, никто в обозримом будущем не расшифрует?
Хочу что-то надёжное и реалистичное. Я уже немного работал с гибридным шифрованием — использовал его при написании шифратора в стиле ransomware с рекурсивным сканированием. Поскольку я хорошо разобрался с этой схемой, решил, что это будет оптимально. Но если у тебя есть вариант, который не устарел и при этом проще — с удовольствием рассмотрю.
 
Хочу что-то надёжное и реалистичное. Я уже немного работал с гибридным шифрованием — использовал его при написании шифратора в стиле ransomware с рекурсивным сканированием. Поскольку я хорошо разобрался с этой схемой, решил, что это будет оптимально. Но если у тебя есть вариант, который не устарел и при этом проще — с удовольствием рассмотрю.
Одно дело рансом, когда ты шифруешь файлы и твоя цель зашифровать их так, чтобы другие не смогли дешифровать
Другое - когда доставляешь шеллкод\хранишь в статике, он все равно в памяти будет голым
 
только чтобы расшифровать мой RSA-ключ и AES-зашифрованный дроппер
это все есть в bcrypt.dll
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Хочу что-то надёжное и реалистичное
То, что ты взял комбинацию RSA и AES не дает тебе ровным счетом ничего, кроме 4мб в лоудере.
 
"зачем а главное зачем"
рс4 хватит за глаза для визуального сокрытия
захотят зареверсить - зареверсят, буквально за минуту - поставив хук на NtAllocateVirtualMemory))))
а все остальное - фетиши
Значит, мне стоит отдать предпочтение RC4 вместо гибридного шифрования или просто AES/ChaCha20 ?
 
То, что ты взял комбинацию RSA и AES не дает тебе ровным счетом ничего, кроме 4мб в лоудере.
Ну, по крайней мере, теперь всё ясно. Я всё равно собирался это изменить — с учётом количества файлов и функций, которые я добавляю, это даже сократит немного кода. Спасибо за ответ.
 
X25519 - для обмена ключом

ChaCha20-Poly1305 - для симметричного шифрования

HKDF - для вывода ключа и nonce из общего секрета

Всё это реализуется через Monocypher - это один .c и .h, без зависимостей
Занимает 20-30 КБ

Гибко, мало кода и без сигнатур
 
Последнее редактирование:
без сигнатур
Да уж, тот момент, когда АВ запросто лепят сигнатуру на RC4 в коде, а тут без сигнатур на всяки чачи через Monocypher, ну ты чел конечно.
 
ну ты чел конечно.
Monocypher не равно сигнатура

Если не палиться внешними артефактами и не использовать готовый билд, какой повод у АВ детектить сигнатуры?
Даже дизассемблеру сложно понять, что это крипта
Это нужно самому захотеть спалить контору

Чача - простое сложение
Monocypher не делает ключевые вызовы к API
Да и он не заезжен в дропперах, как openssl, libsodium и tiny-aes, нет готовых сигнатурных блоков

Можно мутировать реализацию чачи
Monocypher собрать вручную, удалить все ненужные функции
Слить крипту в основной .text сегмент
Зашумить основание функции той же обфускацией или через линковщик

Я не говорил, что это какое-то ультрарешение, но явно лучше чем RC4, AES или openssl
Можно вообще не оставить отпечатков

Могу дать дорожную карту по модификации monocypher чтобы его нельзя было обнаружить по сигнатурам, даже при агрессивном анализе☮️
 
Monocypher не равно сигнатура

Если не палиться внешними артефактами и не использовать готовый билд, какой повод у АВ детектить сигнатуры?
Даже дизассемблеру сложно понять, что это крипта
Это нужно самому захотеть спалить контору

Чача - простое сложение
Monocypher не делает ключевые вызовы к API
Да и он не заезжен в дропперах, как openssl, libsodium и tiny-aes, нет готовых сигнатурных блоков

Можно мутировать реализацию чачи
Monocypher собрать вручную, удалить все ненужные функции
Слить крипту в основной .text сегмент
Зашумить основание функции той же обфускацией или через линковщик

Я не говорил, что это какое-то ультрарешение, но явно лучше чем RC4, AES или openssl
Можно вообще не оставить отпечатков

Могу дать дорожную карту по модификации monocypher чтобы его нельзя было обнаружить по сигнатурам, даже при агрессивном анализе☮️
Но вообще MalDev Academy тоже предлагает AES — разве шифрование AES без зашифрованного RSA-ключа недостаточно?
 
Но вообще MalDev Academy тоже предлагает AES — разве шифрование AES без зашифрованного RSA-ключа недостаточно?
Если ты хочешь динамически защищать ключ, например при взаимодействии с С2 или при генерации уникального payload на лету, здесь без гибрида никак

Статичный AES key = 100% IOC
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх