PDA

Просмотр полной версии : Забавный крякми с crackmes.de


desTiny
30.03.2008, 17:03
You are given an application and you are supposed to find a vulnerability and exploit it.
You have to make a message box pop up as shown below:
(Displays Hacked! in the pop-up with the OK button to exit the program)
It should also show your name and password in the area in which it is showing not registered.
Include the relevant files needed in your solution.

Watch out for hints in the discussion area!!
Happy reverse engineering!!

Regards,
abcd
Интересный крякми на переполнение стека...
http://crackmes.de/users/abcd/abcds_battleroyale/

Мой солюшн: http://ifolder.ru/5944308

s0lar
01.04.2008, 18:52
Интересный крякми на переполнение стека...
http://crackmes.de/users/abcd/abcds_battleroyale/

Мой солюшн: http://ifolder.ru/5944308

краткий мануал, можешь накидать...по поводу как найти уязвимость...немного непонятно

desTiny
01.04.2008, 20:59
Краткий мануал - смотрим, что происходит при нажатии кнопки test - видим, что пеервые семь символов из license.lic пишутся во 2-ой Edit, без проверки на длину остаток файла пишется в 1-ый эдит. Но! Перед тем как записать их в эдиты, они сохраняются в стековом пространстве. Трассируем до выхода из процедуры вставки этих значений в поля - видим, что адрес возврата, тто есть вершина стека, оказалась чуть ниже сохранённых считанных значений. Значит, адрес возврата можно переписать, если сделать большой второе поле в license.lic. А там уже и пошло-поехало :)

taha
02.04.2008, 06:54
стек(содержимое license.lic):
Nick, ноль, пароль, ноль, мусор до адреса возврата из функции, затераем адрес возврата адресом MessageBoxA, адрес ExitProcess(это типа адрес возврата из MessageBoxA), ноль, адрес строки дисплэй хэккид,адрес строки дисплэй хэккид, ноль, ноль(параметр ExitProcess), строка дисплый хэккид

s0lar
02.04.2008, 18:18
спасиб большое

Lamia
03.04.2008, 00:45
ничего исложного в общем то!