Crackme #3

Discussion in 'Реверсинг' started by RedAlert, 1 Jan 2009.

  1. RedAlert

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    Вот соб-но 3 крекми . Цель найти правильный серийник(Пароль) для своего ника . Размер 6кб , писал полностью на masm . Удачи :)
    ЗЫ : Сложность средняя вроде , сильно не пинайте
    ЗЫЫ : Если интересного могу выложить сурсы , и с Новым Годом всех !)

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

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    541
    Reputations:
    445
    жесть
     
  3. RedAlert

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    Ну почему сразу жесть , у меня времени небыло на драйвер и vm . Хотел на новый год . Интересно кто нить сломает ?
     
  4. LEE_ROY

    LEE_ROY Elder - Старейшина

    Joined:
    9 Nov 2006
    Messages:
    450
    Likes Received:
    188
    Reputations:
    26
    не, тут жесть шо ты в новогоднюю ночь кракмисы пишеш. наркоман :D
     
  5. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    У меня при дебаге почему-то иногда после безобидных команд типа JZ система подвисает... 1 раз повисла основная, запустил на вмварьке - там уже дважды такое случилось - и везде в разных местах..
     
    #5 desTiny, 1 Jan 2009
    Last edited: 1 Jan 2009
  6. RedAlert

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    При дебаге возможно :
    1) Висяк OS
    2) Код самомодифицируется в зависимости от присутствия отладчика или же при его отсутствии
    3) Изменение констант (так же в зависимости от дебага) нужных для вычисления хешей
     
  7. RedAlert

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    ad1d0s : Ну тогда сломай , тебе тут не болталка оффтопить :)
     
    1 person likes this.
  8. Hellsp@wn

    Hellsp@wn Elder - Старейшина

    Joined:
    29 Apr 2007
    Messages:
    400
    Likes Received:
    153
    Reputations:
    48
    не интересно, да и брутить rc2 некогда.
    Code:
    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
    
     
  9. RedAlert

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    Облегчаю
    Login : RedAlert
    Pass : Antichat Forever!!! , All happy New Year:)
     
  10. winterfrost

    winterfrost Elder - Старейшина

    Joined:
    18 Aug 2008
    Messages:
    42
    Likes Received:
    18
    Reputations:
    15
    а если код правильный, то в MessageBox'е должно быть
    Code:
    Good :)!
    ?
     
  11. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    скучный крякми.. вначале куча "антидебага", который ясно, что антидебаг, даже если б не было сборкой самых простых способов(вероятно, отсюда: http://www.securityfocus.com/infocus/1893) а потом считаются два хеша, складываются, и дальше какой-то занудный выбор из большого интового массива генерит сообщение.

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

    RedAlert Elder - Старейшина

    Joined:
    26 May 2008
    Messages:
    66
    Likes Received:
    10
    Reputations:
    0
    да
    Code:
    .if esi == 0FFFFFFFFh
    	mov cnt,2009h
    .endif 
    Обычно в ольге когда прога запускается то она в самом начале устанавливает значение регистра FFFFFFFFh .
    Source Code ---> _http://www.rapidshare.ru/877323

    Что нужно что бы крекми был нескушный? Во что стоит вкладываться ? VM ? antidebug ? r0 ? crypto ?
     
    #12 RedAlert, 3 Jan 2009
    Last edited: 3 Jan 2009
  13. FoX's

    FoX's Дохлый

    Joined:
    26 Dec 2004
    Messages:
    169
    Likes Received:
    29
    Reputations:
    0
    на каждой ОС могут быть разные значения регистров, стек и тд.. Олька их не ставит
     
  14. winterfrost

    winterfrost Elder - Старейшина

    Joined:
    18 Aug 2008
    Messages:
    42
    Likes Received:
    18
    Reputations:
    15
    Вроде получилось наконец-то =)

    name:
    Code:
    winterfrost
    это ключи для Windows Vista SP1:
    Code:
    000fJ1vq
    002g^cG4
    003FAB5a
    006cCbFW
    0072`21R
    008l\RzY
    009pR?`T
    
    а это для XP_sp2:
    Code:
    0005E7eX
    003XcyK@
    0041X6d;
    004AdGak
    006\?IQ:
    008?STip
    Конечно, это не все возможные варианты ключей.
    В силу особенностей антиотладки, ключики отличаються в разных системах =)
    Кстати, по поводу esi. Как правильно заметил FoX's он действительно отличаеться в разных системах(а возможно ещё по каким-то причинам), вот например в Висте esi = -2.
    Code:
    .if esi == 0FFFFFFFFh
    	mov cnt,2009h
    .endif 
    По поводу этой перменной cnt (которая учавствует в генерации клюа для расшифровки блока rc2) могу сказать, что в vista_sp1 cnt = 1, а в xp_sp2 cnt = 0 (на стадии генерации клюа). Именно поэтому у меня получились разные ключи под эти две системы.

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

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