Concurso17-Nivel2 Por HouDiNi

  • Upload
    rogncx

  • View
    2

  • Download
    0

Embed Size (px)

DESCRIPTION

analizando un keygen

Citation preview

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    1/9

    Crackme1 de tHE ANALYST (Concurso17-Nivel2)

    DATOS DE INTERES

    Programa: Crackme1 de tHE ANALYSTURL: http://!crack"#at$%o"!h$"padom$%$o!%etO&'et$(o: Hacer )% *e+,e%

    D$-$c)#tad: No m)cha

    INTRODUCCIONHo#a am$go" e% e"ta oca"$.% (amo" a $%te%tar #oca#$ar e# modo e% 0)e e"te crackme ge%era e# Ser$a#(#$do2 para hacer )% *e+,e%!3)e%o2 (amo" a e##o4

    AL ATA*E

    Encontrando el Serial

    Cargamo" e# crackme!e5e e% O##+!

    Hacemo" c#$ck co% e# &ot.% derecho de# roedor "o&re e# c.d$go + "e#ecc$o%amo":

    6emo" e"to:

    Hacemo" doe c#$ck "o&re e# me%"a'e de 7Ch$co 3)e%o8 + caemo" e%:

    96a+a2 %o pod;amo" ha&er te%$do m" ")erte!

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    2/9

    P)#"amo" e# &ot.% Check the "er$a# + O##+ det$e%e #a e'ec)c$.% e% %)e"tro &reakpo$%t!

    Traceamo" co% = ha"ta "$t)ar%o" e% #a #;%ea de# CALL + (emo" 0)e #o 0)e ha mo($do ha "$do %)e"troSer$a# ma#o + #o 0)e "e ")po%e 0)e e" e# &)e%o FG1@@:

    6emo" 0)e #o ha "acado de #a po"$c$.% ??1>=JK?!Damo" a De&)gMRe"tart + co#ocamo" #a (e%ta%$ta de# D)mp Fa&a'o a #a $0)$erda ap)%ta%do a??1>=JK? para (er c)%do e"cr$&e ah;:

    FLo hacemo" med$a%te )% c#$ck co% e# &ot.% derecho de# roedor e%c$ma de #a (e%ta%a de D)mp +"e#ecc$o%a%do ,o toE5pre""$o%1>=JK?

    S;2 "; +a " 0)e pod;a ha&er p)e"to )% Bemor+ &reakpo$%t o% r$te2 + #o h$ce2 pero %o da&a m" 0)ee5cepc$o%e" a"; 0)e dec$d; hacer#o 7a pe#o8!

    3)e%o2 p)e" po%emo" )% &reakpo$%t e% ,et$%doTe5tA2 por e'emp#o! Damo" Ctr#QN2 &)"camo",et$%doTe5tA + co% e# &ot.% derecho po%emo":

    Damo" =2 aparece #a (e%ta%a de# Name + e# Ser$a#2 metemo" #o de a%te"2 damo" a# &ot.% + paramo"a0);:

    )$tamo" todo" #o" &reakpo$%t" + empeamo" a tracear co% =J "$% e%trar e% %$%g% CALL2 pero ate%to"cada (e 0)e pa"emo" )%o por "$ "e e"cr$&e e% %)e"tra d$recc$.% de memor$a!

    Y (o#(emo" a te%er ")erte por0)e (emo" 0)e ')"to de"p)" de pa"ar e# CALL ??@?@EC@2 "e e"cr$&e e%%)e"tra po"$c$.% de memor$a e# Ser$a# &)e%o

    Pero adem"2 ')"to e%c$ma te%emo" #a ge%erac$.% de# Ser$a#2 para ma+or d$"-r)te!

    Ah; #o te%emo"2 ')"to #o 0)e te%dremo" 0)e cop$ar Fm" o me%o" para hacer e# *e+,e%:

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    3/9

    6emo" 0)e (a cog$e%do #o" caractere" de# Name )%o a )%o Fco% e# BO6S2 #o" mete e% EA2 hace ORco% EC 0)e e% pr$%c$p$o co%t$e%e ? + (a $%creme%t%do"e ha"ta (a#er F#a #o%g$t)d de# Name!De"p)" ")ma EA + E32 de'a%do e# re")#tado e% E3! Y a"; ha"ta 0)e EC (a#ga Fha"ta ha&ertratado e# #t$mo carcter de# Name! De"p)" m)#t$p#$ca EA por 2 de"p#aa #o" &$t" de E3 #)gare" a#a $0)$erda F#o 0)e e0)$(a#e a m)#t$p#$car E3 por 1>JV ")ma EA + E32 + e"o e" ')"tame%te %)e"tro

    71@@8!

    Compro&amo" por "$ aca"o2 + (emo" 0)e met$e%do NameWHo)D$N$ + Ser$a#W1@@2 #a co"a marcha:

    P)e" %ada2 "eg)$mo"!

    Construendo el !e"en

    E"to -)e m)+ d$(ert$do + d$dct$co! =)%dame%ta#me%te de&$do a m$" precar$o" co%oc$m$e%to" de RadASB+ m$" ca"$ %)#a" ha&$#$dade" co% e# E%"amador Fa)%0)e a#go "e pega de ta%to tracear2 'e'e!

    P)e" %ada2 ")po%$e%do 0)e te%emo" ma"m2 RadASB + toda #a pe"ca2 %o" po%emo" a e##o!

    A%te" de %ada o" recom$e%do #eer todo" #o" t)to" de e%"amador 0)e te%$" e% #a pg$%a deCrack"Lat$%o" e% e# apartado De"carga"2 "ecc$.% E%"amador! E"pec$a#me%te #o" c)r"o" de Da%$e# +A%"X,ar$! =)e #o 0)e h$ce +o2 + ma# 0)e &$e%2 me "$r($. para de"arro##ar #o 0)e ($e%e a co%t$%)ac$.%!

    Empeamo"4

    A&r$mo" RadASB2 p$%chamo" e% Pro'ectMNe + (emo":

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    4/9

    De'amo" marcado A""emerma"m F"$ e" e"e e# 0)e te%emo" $%"ta#ado2 T$po de Pro+ecto G$%> App2#e po%emo" %om&re + de"cr$pc$.% a# pro+ecto + p)#"amo" S$g)$e%te!

    A0); "e#ecc$o%amo" #a p#a%t$##a D$a#ogApp!tp#2 damo" S$g)$e%te )% par de (ece" m"2 "$% mod$-$car%ada de #o 0)e aparece2 + por -$% p)#"amo" =$%a#$ar!

    A #a derecha (emo":

    Te%emo" c)atro -$chero"! E# !A"m2 0)e co%te%dr e# c.d$go e%"amador! E# !I%c2 do%de de-$%$remo"(ar$ae"2 e"tr)ct)ra" + todo #o 0)e ha+a 0)e de-$%$r! E# !d#g2 0)e "er %)e"tro d$#ogo do%de po%dremo"&oto%e"2 te5to2 campo" de ed$c$.%2 #o 0)e 0)eramo"! Y e# !Rc2 do%de "e de-$%$r% #o" rec)r"o"!

    3)e%o2 a0); cada )%o "$g)e como me'or co%"$dere! Yo empec d$&)'a%do #a (e%ta%a!

    Para e##o hago doe c#$ck "o&re *e+,e%1X>!d#g! Lo 0)e pro(oca 0)e me apareca )%a "o#apa e% #a(e%ta%a pr$%c$pa#2 m$ d$#ogo2 + )% mo%t.% de co%tro#e" a #a $0)$erda 0)e "o% #o" 0)e podremo" $raZad$e%do:

    B$ d$"eZo 0)ed. a";2 a)%0)e e"to e" como p$%tar )% c)adro2 0)e cada )%o #o haga como m" #e g)"te:

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    5/9

    E"t )% poco -e)cho2 pero e%"eg)$da #o arreg#amo" :X

    He co#ocado tre" Te5to" E"tt$co"2 e% )%o po%dr GName2 e% otro GSer$a# + e% e# #argo 0)e ha+ de&a'ode# pr$mer &ot.%2 a#go de propaga%da! Tam&$% ha+ do" Ed$t&o5e"2 0)e corre"po%de% a Name + Ser$a#2)%a Image%2 )% &ot.% para ge%erar e# Ser$a#2 + otro &ot.% a&a'o 0)e "er($r para Sa#$r!

    3)e%o2 p)e" ahora2 "$ %o" (amo" "$t)a%do "o&re cada co%tro# podemo" $r a')"ta%do ")" prop$edade" e%#a (e%ta%$ta 0)e %o" aparece a #a derecha!

    Y de"p)" de po%er e# Capt$o% de #o" tre" Te5to" e"tt$co" + #o" do" &oto%e"2 e# T;t)#o de# D$#ogo2 +a%dar tra"tea%do )% poco co% #a Prop$edad 73order8 de a#g)%o" co%tro#e"2 #a co"a ha me'orado%otaeme%te:

    Nota: como e% e# Ed$t&o5 de# Ser$a# %o (a% a poder e"cr$&$r2 #o de'amo" de"ha&$#$tado FProp$edad Locked

    a GTr)e!

    3)e%o2 e% c)a%to a# a"pecto e"tt$co %o" 0)eda% )% par de co"$##a":

    IconoLo 0)e te%emo" 0)e hacer para 0)e apareca )% $co%o co% %)e"tra ap#$cac$.% e":

    1 Cop$ar e# arch$(o !$co 0)e 0)eramo" e% #a carpeta [Rada"m[Ba"m[Pro'ect"[*e+,e%1X>[Re"2 0)e RadASB cre. a# dar de a#ta %)e"tro %)e(o pro+ecto!

    > P$%char e% Pro'ectMRe"o)rce2 p)#"ar e# &ot.% Add + dar de a#ta )% rec)r"o co% #o""$g)$e%te" dato":

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    6/9

    Hacer doe c#$ck "o&re e# -$chero *e+,e%1X>!A"m + e% e# I= de B\INITDIALO, po%er #o"$g)$e%te:

    .if eax==WM_INITDIALOG invoke LoadIcon,hInstance,500 mov hIcon, eax invoke SendMessage,hWin,WM_SETICON,NULL,hIcon.elseif eax==WM_COMMAND

    @ Y +a "o#o 0)eda dec#arar #a (ar$ae hIco%! E"o #o hacemo" med$a%te )% doe c#$ck "o&ree# -$chero *e+,e%1X>!I%c! Y e% #a "ecc$.% !data]2 de&a'o de hI%"ta%ce2 po%emo":

    !data]

    hI%"ta%ce dd ]hIco% dd ]

    ImagenCop$amo" e# 3mp 0)e te%;amo" preparado a #a carpeta [Rada"m[Ba"m[Pro'ect"[*e+,e%1X>[Re"!6o#(emo" a p$%char e% Pro'ectMRe"o)rce + damo" de a#ta otro rec)r"o Fe"ta (e de t$po &$tmap:

    La $mage% #a "e#ecc$o%amo" e% e# d$#ogo2 + e% #a" prop$edade" 0)e %o" aparece% a #a derechacam&$amo" e# T+pe a 3$tmap + e% #a prop$edad Image "e#ecc$o%amo" %)e"tro 3mp:

    9L$"to

    S$ p)#"amo" e# &ot.% ,o 0)e te%emo" arr$&a a #a derecha: 2 o p)#"amo" Ctr#Q=K2pro(ocamo" 0)e "e #$%ke %)e"tro pro+ecto + (emo" c.mo 0)edar e# D$#ogo a# e'ec)tar#o:

    3)e%o2 ahora (amo" co% #a Gch$cha2 por0)e e"to e"t m)+ ch)#o pero %o (a#e para %ada! A"; 0)e ae"cr$&$r c.d$go "e ha d$cho!

    Te%emo" 0)e e"cr$&$r e# c.d$go 0)e "e e'ec)tar c)a%do p)#"e% e# &ot.% ,e%erar2 e# 0)e "e e'ec)tara# p)#"ar e# &ot.% Sa#$r + )% par de co"$##a" m"!

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    7/9

    Botn

    No" (amo" de %)e(o a *e+,e%1X>!A"m + de&a'o de# I= corre"po%d$e%te a B\COBBAND po%emo":

    .elseif eax==WM_COMMAND mov eax,!a"am #i$ eax%%&005 ' e( I) de( *ot+n -ene"a". invoke -et)(gItemText,hWin,&00&,/)) nom*"e,50 ca(( gene"a" invoke Set)(gItemText,hWin,&001,/)) se"ia( #endi$

    FRecordemo" 0)e B\COBBAND era e# me%"a'e 0)e $%do" e%($a&a a )%a (e%ta%a2 e%tre otra"co"a"2 c)a%do "e p)#"a&a )% &ot.%!

    Como (e$"2 capt)raremo" e# Name co% #a API ,etD#gItemTe5t2 ##amaremo" a #a r)t$%a de ge%erac$.% de#Ser$a#2 + )t$#$aremo" #a API SetD#gItemTe5t para p$%tar e# Ser$a# e% ") Ed$t&o5!

    1??1 + 1??> "o% #o" ID" de #o" Ed$t&o5 Name + Ser$a# re"pect$(ame%te + e# K? 0)e ha+ a# -$%a# de #a##amada a ,etD#gItemTe5t e" por0)e e# crackme %o adm$te Name" de m" de K?:

    m *3c(e ' (ongit3d est8 en eax, seg3imos "ocesando ca"acte"es #endi$

    im3( edx,edx,? ' c3ando (os ha6amos "ocesado todos sh( e*x,@ ' hacemos e( "esto de oe"aciones 73eadd edx,e*x ' hac=a e( c"ackme

    mov se"ia(,edx ' 6 movemos e( "es3(tado a se"ia( a"a most"a"(o"et

    end start

    Por #t$mo2 dec#aramo" #a" (ar$ae" 0)e hemo" )t$#$ado F+a "a&$"2 e% e# -$chero *e+,e%1X>!I%c2 e"ta

    (e e% #a "ecc$.% !data2 de #a "$g)$e%te ma%era:

    .data

    nom*"e dd 0,50

    se"ia( dd A

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    8/9

    Botn

    E"te e" "e%c$##o! Ed$tamo" otra (e e# -$chero *e+,e%1X>!A"m + de%tro de# I= corre"po%d$e%te aB\COBBAND aZad$mo":

    .elseif eax==WM_COMMAND o! eax"#Para .if eax==$%%&

    in!o'e GetDlgIteText"(Win"$%%$"ADD) no*re"&% call generar in!o'e +etDlgIteText"(Win"$%%,"ADD) serial #e(sei$ eax%%&00B ' e( I) de( *ot+n Sa(i".

    invoke End)ia(og,hWin,0 .endif

    Y +a hemo" term$%ado F&)e%o2 ca"$2 he de'ado )% pe0)eZo G&)g para e# -$%a# !Damo" a ,o2 aparece e# d$#ogo de %)e"tro crackme2 pro&amo" co% 7Ho)D$N$8 +:

    ^Y 0) m$erda e" e"a 0)e aparece e% e# Ed$t&o5 de# Ser$a#]2 o" e"tar$" preg)%ta%do :X

    P)e" e"a m$erda %o e" %$ m" %$ me%o" 0)e %)e"tro G1@@2 a)%0)e )% po0)$to de"-$g)rado! S$ a&r;"%)e"tro *e+,e%1X>!e5e co% O##+2 (er$" #o 0)e pa"a:

    Como (e$"2 a #a ()e#ta de #a r)t$%a de ge%erac$.% de# Ser$a#2 e"tamo" mo($e%do como parmetro a #a API

    SetD#gItemTe5tA2 #o 0)e ha+ e% #a po"$c$.% de memor$a @???J2 0)e e" %)e"tro G1@@2 pero a"; %o "e#o podemo" mo(er!

    Para 0)e "e (ea &$e% a# mo"trar#o2 (amo" a )t$#$ar #a -)%c$.% "pr$%t-!6o#(emo" a# -$chero *e+,e%1X>!A"m + e% e# I= corre"po%d$e%te a# &ot.% ,e%erar aZad$mo":

    .elseif eax==WM_COMMAND o! eax"#Para .if eax==$%%& in!o'e GetDlgIteText"(Win"$%%$"ADD) no*re"&% call generar

    invoke s"int$,/)) se"ia(,/)) $o"mato,edx in!o'e +etDlgIteText"(Win"$%%,"ADD) serial

    E"ta -)%c$.% #o 0)e hace e" coger #o 0)e ha+ e% ED2 ap#$car#e e# -ormato 7-ormato8 + g)ardar#o e%G"er$a#!

  • 5/28/2018 Concurso17-Nivel2 Por HouDiNi

    9/9

    Por ")p)e"to2 %o podemo" o#($dar%o" de de-$%$r #a (ar$ae G-ormato e% e# !data:

    .data

    no*re dd %"&% serial dd -

    $o"mato d* DF,0

    6o#(emo" a pro&ar +:

    Y "$ m$r"emo" e% O##+2 (er;amo" 0)e ahora2 ')"to de"p)" de #a ##amada a "pr$%t-2 + a%te" de ##amar aSetD#gItemTe5t2 te%emo":

    P)e" %ada2 +a hemo" term$%ado! E"pero %o ha&er comet$do dema"$ada" &ar&ar$dade"! Ya $remo"me'ora%do co% #a prct$ca!

    A,RADECIBIENTOS

    A R$cardo Nar(a'a2 "$% d)da a#g)%a )%o de #o" m" gra%de" de todo" #o" t$empo"! S$empre

    d$"p)e"to a echar )%a ma%o + c)+a ha&$#$dad + per$c$a para e# crack$%g "o% "e%c$##ame%tea"om&ro"a"! No "$% mot$(o #e ##amamo" Bae"tro!

    A