SOFT Мануал Криптуем NATIVE приложение (RunPE/C++)

fres

Премиум

fres не предоставил(а) никакой дополнительной информации.
Материалы:

  • Visual Studio
  • Python 3.5
  • Python 2.7
  • 2 руки
  • Пару извилин
Итак, начнем:
А начнем мы, пожалуй, с написания самой простой программки, на которой мы и будем тестировать наш крипт. (далее-пейлоад)

Создаем проект консольного C++ приложения (x86 или win32).
Внутри прописываем:


Пожалуйста , Вход или Регистрация to view codes content!
Компилим, тестируем, выдается окно с надписью "test".

Откладываем этот проект и приступаем к части шифрования данных. (Далее-энкодер)
Создаем еще один такой же проект.
Далее нам нужно набросать примерный алгоритм шифрования байтов.
Я сильно заморачиваться не буду и просто напишу вычитание из оригинала 0х11.
Для начала узнаем размер считываемого файла:

Пожалуйста , Вход или Регистрация to view codes content!

Далее считываем байты в массив и шифруем их:

Пожалуйста , Вход или Регистрация to view codes content!

Выплевываем зашифрованный файл:

Пожалуйста , Вход или Регистрация to view codes content!

И сразу дешифруем его таким же методом чтоб убедиться, что он остается рабочим:

Пожалуйста , Вход или Регистрация to view codes content!

Компилируем проект, пропускаем пейлоад через энкодер и видим на выходе 2 файла: out.exe и decr.exe. Пробуем запустить decr.exe - если вылезает окошко "test", значит все хорошо.

Далее, нам нужно получить массив байт из зашифрованного файла, чтоб в дальнейшем вставить этот массив в криптор.
Для этого пишем простенький скрипт на Python 2.7 и прогоняем через него наш файл out.exe:

Пожалуйста , Вход или Регистрация to view codes content!

Создался файл file.txt, сохраняем его и приступаем к следующему шагу.

Теперь самая важная часть криптора - собственно, сам криптор.
Создаем проект приложения win32 и вставляем наш массив из файла file.txt перед методом main().
Сразу прописываем хедеры к этому файлу:

Пожалуйста , Вход или Регистрация to view codes content!

И функцию RunPE:

Пожалуйста , Вход или Регистрация to view codes content!

Далее в методе main() нам необходимо расшифровать массив байт и запустить его, перезаписав память собственного процесса:

Пожалуйста , Вход или Регистрация to view codes content!

Единственный момент - после компиляции проекта криптора, на файле будет иконка. Уберите ее, а то словите очень много GEN детектов.

Собственно все, криптор готов.

Таким методом обходится не только Scantime, но и Runtime. Это я протестировал лично на своем стиллере. Как результат - полный обход всех популярных антивирусов, кроме Avira.

Scantime -
Runtime -
 
Последнее редактирование:
Сверху Снизу