ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Инструменты (https://forum.antichat.xyz/forumdisplay.php?f=176)
-   -   Модификация исполняемых PE файлов (https://forum.antichat.xyz/showthread.php?t=1641661)

mamura 28.03.2023 18:45

Привет всем, может есть у кого статейки как можно модифицировать exe до "уникального кода" впрочем по другому сказать до существенных изменений в коде без потери работоспособности изначальной программы)
Знаю тут есть несколько статей по работе с PE но они все про написасание чего-то с 0 или внедоение своего исполняемого кода !ВО что-то!
Мне бы статеки про запутывание, уникализацию, смену точек взода в программу .и.тп
Есть спецы тут?
манула могу и купить )

B13 28.03.2023 19:16

В гугл введите "обфурскация кода/обфурскация", статей на эту тему думаю будт не малое количество.

WithoutIrony 28.03.2023 19:36

Цитата:


B13 сказал(а):

В гугл введите "обфурскация кода/обфурскация", статей на эту тему думаю будт не малое количество.


Он бинарник хочет морфить, а не сорцы.

По теме - декомпилировать бинарь и морфить сорцы

B13 28.03.2023 21:05

Цитата:


WithoutIrony сказал(а):

Он бинарник хочет морфить, а не сорцы.

По теме - декомпилировать бинарь и морфить сорцы

Немного не понял. возможно я ошибаюсь, а если так, то поправьте.

разве .exe и .bin это не разные исполняемые файлы?

И при чем здесь сорцы?

Mark Klintov 29.03.2023 09:28

На каком языке написан твой PE-файл? Для C# используй NET Reactor и не придется заморачиваться. Прогу можешь найти в ресурсах. Если нужно что-то свое, то можно написать простой обфускатор. Ниже я оставил пример такого обфускатора на шарпе. Запускаешь программу через консоль и указываешь путь до файла после названия скрипта.

Пример:
Код:

start build.exe C:\Users\Professional\Documents\primer_1.exe

mamura 29.03.2023 19:58

Цитата:


Mark Klintov сказал(а):

На каком языке написан твой PE-файл? Для C# используй NET Reactor и не придется заморачиваться. Прогу можешь найти в ресурсах. Если нужно что-то свое, то можно написать простой обфускатор. Ниже я оставил пример такого обфускатора на шарпе. Запускаешь программу через консоль и указываешь путь до файла после названия скрипта.

Пример:
Код:

start build.exe C:\Users\Professional\Documents\primer_1.exe

Да, на C# но абфускация кода это не серьезно)
Хотелось бы освоить виртуализацию кода или переустановки произвольно взятой команды JMP|CALL на тело кода, изменение точек входа да и вообще измнение поведения кода.

mamura 29.03.2023 19:59

Цитата:


B13 сказал(а):

В гугл введите "обфурскация кода/обфурскация", статей на эту тему думаю будт не малое количество.


Это не совсем подходит

mamura 29.03.2023 20:07

Вся сложность в том что статей по работе с PE (чужим софтом например) с гулькин нос, что куда и откуда.. и зачем )) ответов нет)
На угад тыкать как вы понимаете максимально не рационально ) какая-то больше, обратный инжиниринг.. все такое, придеться книги пендосовские покупать видимо

Mark Klintov 29.03.2023 20:51

Цитата:


mamura сказал(а):

Да, на C# но абфускация кода это не серьезно)


Ты либо не знаешь, что тебе нужно, либо не до конца освоил тему. Смотри, виртуализация кода это процесс трансформации исходного кода программы в другой код, который трудно понять или изменить. В этой виртуализации есть несколько методов (к примеру обфускация, шифрование и тд). Когда ты обфусцируешь код, то твоя EP (точка входа) меняется, и чтобы начать читать код, реверсеру следует отыскать OEP (оригинальная точка входа) и обфускаторы этот процесс затрудняют

Mark Klintov 29.03.2023 20:58

Цитата:


mamura сказал(а):

Привет всем, может есть у кого статейки как можно модифицировать exe до "уникального кода" впрочем по другому сказать до существенных изменений в коде без потери работоспособности изначальной программы)


Одной статьей здесь не обойтись, могу по рекомендовать книгу Ивана Склярова "Изучаем Ассемблер за 7 дней", без этого языка в реверс как в темный лес идти. Также с журнала Xakep можешь почитать курс"Реверс Малвари"

B13 29.03.2023 21:06

Цитата:


mamura сказал(а):

Вся сложность в том что статей по работе с PE (чужим софтом например) с гулькин нос, что куда и откуда.. и зачем )) ответов нет)
На угад тыкать как вы понимаете максимально не рационально ) какая-то больше, обратный инжиниринг.. все такое, придеться книги пендосовские покупать видимо


ревес, говорите... Ну я на изучение ассемблера потратил больше года наверное, а сам реверс до сих пор изучаю, так что я соглашусь с коллегой, в том что вы видимо не понимаете, что вы сами хотите.

B13 29.03.2023 21:07

Цитата:


Mark Klintov сказал(а):

Одной статьей здесь не обойтись, могу по рекомендовать книгу Ивана Склярова "Изучаем Ассемблер за 7 дней", без этого языка в реверс как в темный лес идти. Также с журнала Xakep можешь почитать курс"Реверс Малвари"

лучше тогда серию статей. Алмазный фонд хакер, там как раз по малвари полный сборник.

Mark Klintov 29.03.2023 21:08

Цитата:


B13 сказал(а):

лучше тогда серию статей. Алмазный фонд хакер, там как раз по малвари полный сборник.


Можно и так, главное знать где искать

B13 29.03.2023 22:36

Цитата:


Mark Klintov сказал(а):

Можно и так, главное знать где искать


так известно где. На сайте самого журнала хакер.

mamura 30.03.2023 00:58

Цитата:


Mark Klintov сказал(а):

Ты либо не знаешь, что тебе нужно, либо не до конца освоил тему. Смотри, виртуализация кода это процесс трансформации исходного кода программы в другой код, который трудно понять или изменить. В этой виртуализации есть несколько методов (к примеру обфускация, шифрование и тд). Когда ты обфусцируешь код, то твоя EP (точка входа) меняется, и чтобы начать читать код, реверсеру следует отыскать OEP (оригинальная точка входа) и обфускаторы этот процесс затрудняют


На сколько я понял из книг то виртуализация это файл который работает внутри виртуальной среды, преобразование происходит внутри исполняемого файла.
а обфускация и шифрование это отдельные методы которые не связаны с виртуализции как таковой (возможно я не понимаю самого метода виртуализации из нутри так сказать)
+ речь шла о работе с уже готовым exe без знаний исходников.
И да, у меня есть цель но нет понимания точного в какую сторону рыть) а задача это уникализировать код, как можно сильнее и сложнее.

mamura 30.03.2023 01:00

Цитата:


B13 сказал(а):

ревес, говорите... Ну я на изучение ассемблера потратил больше года наверное, а сам реверс до сих пор изучаю, так что я соглашусь с коллегой, в том что вы видимо не понимаете, что вы сами хотите.


Скореее всего) так много информации и так много разных подходов... а какой наиболее подходящий это вопрос)

mamura 30.03.2023 01:18

Цитата:


Mark Klintov сказал(а):

Можно и так, главное знать где искать


Из того что я понял для моей ситуации подойдут такие методы как: Hex редактирование/Редактирование ресурсов/Обфускация кода/Упаковка или сжатие/Перезапись двоичный файлов/Виртуализация...
что думаешь? верное напрвление или вообще не туда я рою? с исходниками то попроще будет.... но.

B13 30.03.2023 02:24

Цитата:


mamura сказал(а):

Из того что я понял для моей ситуации подойдут такие методы как: Hex редактирование/Редактирование ресурсов/Обфускация кода/Упаковка или сжатие/Перезапись двоичный файлов/Виртуализация...
что думаешь? верное напрвление или вообще не туда я рою? с исходниками то попроще будет.... но.


редактирование ресурсов, что вы понимаете под этими словами?

Обфурскация кода - изменение самого кода без затрагивания работоспособности самого кода программы.
Упаковка или сжатие - уменьшение "веса программы".

Это мне все понятно, не понятно зачем вам перезапись двоичных файлов и снова вопрос, что вы под этим подразумеваете?

Как по мне самый просто путь во названию вашего запроса это все таки обфкрскация кода + упаковка (если же она критична).

mamura 30.03.2023 16:02

Цитата:


B13 сказал(а):

редактирование ресурсов, что вы понимаете под этими словами?

Обфурскация кода - изменение самого кода без затрагивания работоспособности самого кода программы.
Упаковка или сжатие - уменьшение "веса программы".

Это мне все понятно, не понятно зачем вам перезапись двоичных файлов и снова вопрос, что вы под этим подразумеваете?

Как по мне самый просто путь во названию вашего запроса это все таки обфкрскация кода + упаковка (если же она критична).


Редактирование ресурсов это значки, изображения, строки встроенные в исполняемый файл.
Перезапись двоичных файлов это это такие задачи как инстументирование кода, оптимизация и преобразование.
вообще я еще знаю наверное с пяток решений, но врятле о них кто-то тут знает на форуме)

B13 30.03.2023 17:45

Цитата:


mamura сказал(а):

Редактирование ресурсов это значки, изображения, строки встроенные в исполняемый файл.
Перезапись двоичных файлов это это такие задачи как инстументирование кода, оптимизация и преобразование.
вообще я еще знаю наверное с пяток решений, но врятле о них кто-то тут знает на форуме)


я вам про Фаму, вы мне про Ерему. Ну да ладно.

Ну так если вы такой знающий, что знаете с пяток вариантов, которые на всем форуме ни кто не знает, та зачем задавать вопрос на таком фореме? (Вопрс риторический).

mamura 30.03.2023 21:18

Цитата:


B13 сказал(а):

я вам про Фаму, вы мне про Ерему. Ну да ладно.

Ну так если вы такой знающий, что знаете с пяток вариантов, которые на всем форуме ни кто не знает, та зачем задавать вопрос на таком фореме? (Вопрс риторический).


Не понимаю чего это вы на начали нервничать) я описал методы которые мне известны для максимальной уникализации файла и сложного последуещго его анализа.
Вы про Фому..
Вы спросили меня.. что я подразумеваю под.... я ответил)
А на форум написал так как я знаком с методами но не глубинно разбиаюсь в каждом, вопрос был скорее о КПД кадого метода для решения моей цели.
Вы посоветовали обфускацию и все, на сколько я понял, хорошо, но этого мало.

B13 30.03.2023 23:04

Цитата:


mamura сказал(а):

Не понимаю чего это вы на начали нервничать) я описал методы которые мне известны для максимальной уникализации файла и сложного последуещго его анализа.
Вы про Фому..
Вы спросили меня.. что я подразумеваю под.... я ответил)
А на форум написал так как я знаком с методами но не глубинно разбиаюсь в каждом, вопрос был скорее о КПД кадого метода для решения моей цели.
Вы посоветовали обфускацию и все, на сколько я понял, хорошо, но этого мало.


ну начнем с того, что я не нервничал и даже не собирался, но под ваш вопрос подходит обфурскация и если необходимо, то и упаковка кода. Если же данные варианты вам не подходят как основные, то тогда вам видимо придется либо полностью переписать код и сделать его более уникальным, либо какую-то часть кода. Чего вы делать как раз и не хотите.

mamura 31.03.2023 19:30

Цитата:


B13 сказал(а):

ну начнем с того, что я не нервничал и даже не собирался, но под ваш вопрос подходит обфурскация и если необходимо, то и упаковка кода. Если же данные варианты вам не подходят как основные, то тогда вам видимо придется либо полностью переписать код и сделать его более уникальным, либо какую-то часть кода. Чего вы делать как раз и не хотите.


Нет, вы видимо слабо осведомлены в этом вопросе.
Существует самосы перемутации кода, бессмысленное создание инструкций, подмена исходных инструкций, подпись сертификатом, создание директорий и.т.д
Я о ручной раброте, ибо вы можете сказать что тоже самое делает обфускатор с паблика..
скачать программу с интернета и провести обфускацию и после сжатие не сделает программу сложно анализируемой, так как алгоритмы таких паблик софтов известны. А мне противоположное требуеться.
+ на упаковку могут ругаться антивирусы.
И я нигде не отказывался как вы пишите от переписи части кода.... PE редактирование это и есть по факту изменение работы софта.

mamura 31.03.2023 19:39

Цитата:


B13 сказал(а):

ну начнем с того, что я не нервничал и даже не собирался, но под ваш вопрос подходит обфурскация и если необходимо, то и упаковка кода. Если же данные варианты вам не подходят как основные, то тогда вам видимо придется либо полностью переписать код и сделать его более уникальным, либо какую-то часть кода. Чего вы делать как раз и не хотите.


В идеале это освоить на должном уровне мутацию, изменение точки входа, подмену инструкций, мусорный код, потом это еще все прогнать через обфускацию, после виртуализировать, после еще сертификатом подписать... вот тогда она будет различаться кардинально от изначального файла ))) но и возможно работать вообще не будет


Время: 06:22