Crackme 2 by ByteSlayer
Readme
Dans le readme ByteSlayer nous écrit
: Votre mission si
vous l'acceptez et de retirer le nagscreen du programme Toutes
les techniques peuvent être utilisé Let's
go ... J'utilise
HIEW pour visionner le contenu de l'executable ... 00001F0:
00 00 00 00 00 00 00 00 55 50 58 30 00 00 00 00 ¦
UPX0 0000200:
00 00 04 00 00 10 00 00 00 00 00 00 00 04 00 00 ¦
0000210:
00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 E0 ¦
0000220:
55 50 58 31 00 00 00 00 00 60 02 00 00 10 04 00 ¦ UPX1
` 0000230:
00 5A 02 00 00 04 00 00 00 00 00 00 00 00 00 00 ¦ Z
0000240:
00 00 00 00 40 00 00 E0 2E 72 73 72 63 00 00 00 ¦
@ .rsrc 0000250:
00 10 00 00 00 70 06 00 00 0C 00 00 00 5E 02 00 ¦
p ^ 0000260:
00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 C0 ¦
@ 0000270:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ¦
c'est packer avec UPX
... sous dos la commande
UPX -d SC-Crackme2.exe nous
décompresse cette executable, procdump peu aussi faire l'affaire .
Je revisionne le resultat avec HIEW
.... 000400:
04 10 40 00 03 07 42 6F 6F 6C 65 61 6E 01 00 00 ¦ @
Boolean 000410:
00 00 01 00 00 00 00 10 40 00 05 46 61 6C 73 65 ¦
@ False 000420:
04 54 72 75 65 8D 40 00 2C 10 40 00 01 07 49 6E ¦ True @ , @
In 000430:
74 65 67 65 72 04 00 00 00 80 FF FF FF 7F 8B C0 ¦ teger
000440:
44 10 40 00 01 04 42 79 74 65 01 00 00 00 00 FF ¦ D @ Byte
000450:
00 00 00 90 58 10 40 00 01 04 57 6F 72 64 03 00 ¦
X @ Word 000460:
00 00 00 FF FF 00 00 90 6C 10 40 00 01 08 43 61 ¦
l @ Ca 000470:
72 64 69 6E 61 6C 05 00 00 00 00 FF FF FF FF 90 ¦ rdinal
000480:
84 10 40 00 0A 06 53 74 72 69 6E 67 90 10 40 00 ¦ @
String @ Ca
c'est coder avec Delphi, donc les BPX sur les MessageBox ne sont pas valide.
- Hop, on lance DeDe, l'indispensable
sourcer de DaFixer / TMG -
Un click sur le bouton "Ouvrir" ( Il est possible de configure DeDe en Français
) - Click sur le
bouton "Tache", Dump réussi ... On
peut voir dans la section "Procedures", l'evenement "FormCreate" à l'adresse
0452208h (RVA) Et
la bingo !!! *
Possible String Reference to: 'Hehe je suis un nag' |
00452308
B81C234500
mov eax, $0045231C *
Reference to: dialogs.ShowMessage(System.AnsiString); |
0045230D
E89A90FDFF
call 0042B3AC 00452312
C3
ret Donc
un patch à l'offset 452308 l'octet B8 par C3
|