Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Реверсинг (https://forum.antichat.xyz/forumdisplay.php?f=94)
-   -   Crackme #3 (https://forum.antichat.xyz/showthread.php?t=98947)

RedAlert 01.01.2009 04:41

Crackme #3
 
Вот соб-но 3 крекми . Цель найти правильный серийник(Пароль) для своего ника . Размер 6кб , писал полностью на masm . Удачи :)
ЗЫ : Сложность средняя вроде , сильно не пинайте
ЗЫЫ : Если интересного могу выложить сурсы , и с Новым Годом всех !)

_http://www.rapidshare.ru/876027
_http://slil.ru/26500051

ProTeuS 01.01.2009 10:06

жесть

RedAlert 01.01.2009 14:32

Ну почему сразу жесть , у меня времени небыло на драйвер и vm . Хотел на новый год . Интересно кто нить сломает ?

LEE_ROY 01.01.2009 15:01

не, тут жесть шо ты в новогоднюю ночь кракмисы пишеш. наркоман :D

desTiny 01.01.2009 15:05

У меня при дебаге почему-то иногда после безобидных команд типа JZ система подвисает... 1 раз повисла основная, запустил на вмварьке - там уже дважды такое случилось - и везде в разных местах..

RedAlert 01.01.2009 15:30

При дебаге возможно :
1) Висяк OS
2) Код самомодифицируется в зависимости от присутствия отладчика или же при его отсутствии
3) Изменение констант (так же в зависимости от дебага) нужных для вычисления хешей

RedAlert 01.01.2009 15:53

ad1d0s : Ну тогда сломай , тебе тут не болталка оффтопить :)

Hellsp@wn 02.01.2009 02:24

не интересно, да и брутить rc2 некогда.
Код:

004021F4    6A 00          PUSH 0
004021F6    FF35 33124000  PUSH DWORD PTR DS:[401233]
004021FC    68 5C114000    PUSH CrackMe.0040115C                      ; ASCII "blabla"
00402201    E8 8A000000    CALL <CrackMe.get_str_sum>
00402206    A3 3B124000    MOV DWORD PTR DS:[<sum_name>],EAX
0040220B    6A 00          PUSH 0
0040220D    FF35 37124000  PUSH DWORD PTR DS:[401237]
00402213    68 6B114000    PUSH CrackMe.0040116B                      ; ASCII "12345"
00402218    E8 73000000    CALL <CrackMe.get_str_sum>
0040221D    A3 3F124000    MOV DWORD PTR DS:[<sum_cod>],EAX
00402222    33C0            XOR EAX,EAX
00402224    0305 3B124000  ADD EAX,DWORD PTR DS:[<sum_name>]
0040222A    0305 3F124000  ADD EAX,DWORD PTR DS:[<sum_cod>]
00402230    0305 63124000  ADD EAX,DWORD PTR DS:[<const_2009>]
00402236    A3 43124000    MOV DWORD PTR DS:[<sum_all>],EAX
0040223B    6A 04          PUSH 4
0040223D    68 43124000    PUSH <CrackMe.sum_all>
00402242    E8 99F6FFFF    CALL <CrackMe.init>
00402247    68 D6184000    PUSH CrackMe.004018D6
0040224C    68 CD184000    PUSH CrackMe.004018CD
00402251    E8 8AF8FFFF    CALL <CrackMe.decrypt>
00402256    6A 00          PUSH 0
00402258    68 92184000    PUSH CrackMe.00401892                      ; ASCII "  RedAlert CrackMe 0.3"
0040225D    66:813D DC18400>CMP WORD PTR DS:[<check>],2129
00402266    74 0E          JE SHORT CrackMe.00402276


RedAlert 02.01.2009 16:02

Облегчаю
Login : RedAlert
Pass : Antichat Forever!!! , All happy New Year:)

winterfrost 03.01.2009 13:44

а если код правильный, то в MessageBox'е должно быть
Код:

Good :)!
?

desTiny 03.01.2009 15:25

скучный крякми.. вначале куча "антидебага", который ясно, что антидебаг, даже если б не было сборкой самых простых способов(вероятно, отсюда: http://www.securityfocus.com/infocus/1893) а потом считаются два хеша, складываются, и дальше какой-то занудный выбор из большого интового массива генерит сообщение.

и PS: раздражает "антидебаг" cmp esi, -1. Вот какого хрена esi должен не быть -1, а?

RedAlert 03.01.2009 19:02

Цитата:

а если код правильный, то в MessageBox'е должно быть
да
Цитата:

PS: раздражает "антидебаг" cmp esi, -1. Вот какого хрена esi должен не быть -1, а?
Код:

.if esi == 0FFFFFFFFh
        mov cnt,2009h
.endif

Обычно в ольге когда прога запускается то она в самом начале устанавливает значение регистра FFFFFFFFh .
Source Code ---> _http://www.rapidshare.ru/877323

Что нужно что бы крекми был нескушный? Во что стоит вкладываться ? VM ? antidebug ? r0 ? crypto ?

FoX's 04.01.2009 07:42

Цитата:

Обычно в ольге когда прога запускается то она в самом начале устанавливает значение регистра FFFFFFFFh .
на каждой ОС могут быть разные значения регистров, стек и тд.. Олька их не ставит

winterfrost 04.01.2009 08:59

Вроде получилось наконец-то =)

name:
Код:

winterfrost
это ключи для Windows Vista SP1:
Код:

000fJ1vq
002g^cG4
003FAB5a
006cCbFW
0072`21R
008l\RzY
009pR?`T

а это для XP_sp2:
Код:

0005E7eX
003XcyK@
0041X6d;
004AdGak
006\?IQ:
008?STip

Конечно, это не все возможные варианты ключей.
В силу особенностей антиотладки, ключики отличаються в разных системах =)
Кстати, по поводу esi. Как правильно заметил FoX's он действительно отличаеться в разных системах(а возможно ещё по каким-то причинам), вот например в Висте esi = -2.
Код:

.if esi == 0FFFFFFFFh
        mov cnt,2009h
.endif

По поводу этой перменной cnt (которая учавствует в генерации клюа для расшифровки блока rc2) могу сказать, что в vista_sp1 cnt = 1, а в xp_sp2 cnt = 0 (на стадии генерации клюа). Именно поэтому у меня получились разные ключи под эти две системы.

Немного раздражало то, что окошко крякмиса нельзя переключиться по alt+tab, быстро тонет в дебрях других окон, а такж неплохо было-бы блокировать основное диалоговое окно, пока открыт MessageBox сообщающий о резултатах проверки пароля (ну и прочии боксы, например about).

P.S. в исходники пока не смотрел


Время: 15:22