Сейчас на форуме: (+5 невидимых) |
eXeL@B —› Дневники и блоги —› OOTT(Pashkin) blog: на пути истины |
Посл.ответ | Сообщение |
|
Создано: 23 февраля 2010 14:52 · Личное сообщение · #1 Driver mod (on). Интересы меняются - всего хочется попробовать, завело меня в степи ring0, захотелось ченить покодить. Начитался литературы, накачал инструментов, решил повелосипедить))) Вобщем в этой теме хотелось бы задавать различные вопросы в облости крека и програмирования по мере появления новых интересов. Вобще цель написать дампер, отточить навыки, получит незаменимый опыт |
|
Создано: 23 февраля 2010 15:30 · Поправил: Oott · Личное сообщение · #2 |
|
Создано: 23 февраля 2010 22:07 · Личное сообщение · #3 |
|
Создано: 23 февраля 2010 23:03 · Личное сообщение · #4 Да, процессов. А что насчёт +/- у этих способов? Я так думаю, существующих решения больше через VAD. Чтобы не быть голословным вот кодец, который хотел выложить, но когда смотрел нет ли ошибок в сообщении, нашёл таки ошибку в коде. надо заполнить буфер информацией о процессах, через ZwQuerySystemInformation Code:
найдите ошибку) |
|
Создано: 24 февраля 2010 16:10 · Личное сообщение · #5 ERROR 1: __out_opt PULONG ReturnLength = NULL Code:
ERROR 2:? возможно при size = 0 buffer = SNU_ALLOC_MEM(NonPagedPool, size); вернет NULL и улетит по if (buffer) { } else { break;} ----- 127.0.0.1, sweet 127.0.0.1 |
|
Создано: 24 февраля 2010 16:43 · Личное сообщение · #6 OKOB, 1. Ну вобщем правильно! Ток красивее было бы сделать так: Code:
2. NULL он не вернёт, ну а вообще этичней было бы написать так: ULONG size = PAGE_SIZE; |
|
Создано: 24 февраля 2010 17:13 · Личное сообщение · #7 В ВАДах не помню, какой минус, очень давно их смотрел. Не на любой участок есть ВАД, что ли, не помню точно. ПДЕ/ПТЕ более низкоуровневая хрень, можно написать, раскурив ман интела+нагуглив пару смещений. Сложность будет со всякими выгруженными страницами в своп, которые помечены как отсутствующие, надо их подгружать, но делать на низком иркл. |
|
Создано: 01 марта 2010 16:26 · Личное сообщение · #8 |
|
Создано: 01 марта 2010 18:04 · Личное сообщение · #9 |
|
Создано: 01 марта 2010 18:58 · Личное сообщение · #10 |
|
Создано: 01 марта 2010 22:11 · Личное сообщение · #11 |
|
Создано: 02 марта 2010 21:57 · Поправил: Oott · Личное сообщение · #12 |
|
Создано: 02 марта 2010 22:03 · Личное сообщение · #13 |
|
Создано: 05 июня 2010 02:08 · Поправил: Oott · Личное сообщение · #14 Ну в общем то, по теме которая поднималась окончено, написано несколько набросков, думаю в дальнейшем пригадитсо. ////////////////////////////////// И так, поднималась тут темка одна по говнообфускатору DYAMAR OBFUSCATOR. Тема заросла срачем и её закрыли, ну не важно. Бытовало мнение, что (Full) это очень адская штука и сможет не мало попарить мозг реверсеру, чтобы всех в этом убедить автор выложил calc_Obfuscated . Но как и предпологалось, всё оказалось совсем не так и тут я попробую это показать. Обфускация достаточно линейная, есть пару фишек о которых писал int, но и они релизованы бестолково, посему всё легко снимается. В аттаче скрипт, который собствено это делает. Ну конечно в полный оригинал не приводит, но по большей части код востановлен так, как он выглядел до обфускации. Не 100% потому, что будут проскакивать инструкции типа TEST, но погоду это не делает, хоят убрать их тоже можно было проанализировав несколько инструкций идущих после. Вот примеры кода в иде после деобфускации с ep: Code:
ну или вот например первая функа call sub_10127C8 востановилась полностью(скрытые поля убрал для ясности): Code:
Всё что нам нужно это опредеоить сигнатуры, по которым будет затираться мусор и попытаться сделать их наименее опасными, ибо можно подловится и затереть совсем не мусор. Что касается мусора, который простой заменой не уберёшь, тут тоже ни чего сложного, всегда найдутся пару констант, ниже, выше, по котрым можно всё расчистить. Пример(в закрытой теме брался во внимание): Code:
Т.е. размер всегда не определён и инструкции после ret, могли быть не мусорными. Ну и убираетсо как-то так: Code:
т.е. тут мы опирались на условный перход jnz, котрый по сути jmp. Если не использовать опасные сигнатуры, к сожалению я их не выделял, но думаю там и так ясно, то скрипт можно юзать и на других программах. 784a_04.06.2010_CRACKLAB.rU.tgz - calc_De_Obfuscated.7z |
eXeL@B —› Дневники и блоги —› OOTT(Pashkin) blog: на пути истины |