home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / E_bliss / kz-cm1.txt < prev    next >
Text File  |  2000-05-25  |  4KB  |  94 lines

  1.                   ░               
  2.           ░       ░      ░                                  ▄▓
  3.     ▄▄     ░░     ▄▄▄▄■  ░░▀   ■▄▄▄         ▄▄             ▐█▓▌  
  4.  ▄▀▀  ▀■      ▀        ░░            ▀    ■▀  ▀▀▄           ██▌
  5. ■        ▄▄▀▀ ▄▄██▀██▄▄       ▄▄▄███▄▄ ▀▄▄       ■  ▄▄▄███▄▄▐██     ▄▄████▄▄
  6.  ▀▄▄  ▄▀▀   ▄███▀   ▀██▓▄   ▄████▀ ▀██▓▄  ▀▄  ▄▄▀ ▄████▀ ▀██▓██   ▄████▀ ▀██▓▄
  7.     ▀▀  ▄  ▐███▌  ░  ▐██▓▌ ▐████▌ ░ ▐██▓▌ ▄ ▀▀   ▐████▌ ░ ▐████▌ ▐████▌   ▐██▓▌
  8.  ■██▄▄▓▌   ████  ░▒░  ████ █████▄▄▄  ▀▀▀▀ ▐█▄▄█▓ █████  ░  █████ █████▄▄▀▀▀▀▀▀▀
  9.   ▐████ ░░ ▓██▌ ░▒▓▒░ ▐███ ▄▄▄▄▄  ▀▀▀████▄ ████▌ ▓███▌     ▐████ ▓███▌   ░░░░░░
  10. ░  ███▌ ░ ▐▓███ ░▒▓▒░ ▓███▌▓███▌ ░░░ ▐████ ▐▓██  ▓███▌ ▄▀▀ ▐████ ▓███▌ ░░░░░░░
  11.    ▓██▌   ▐▓███  ░▒░  ▓███▌▐▓███  ░  ▓███▌ ▐▓██  ▐▓███     ▓███▌ ▐▓███    
  12.   ▐▓███   ▐▓▓██▌  ░  ▐▓███▌ ▓▓██▌   ▐▓███  ▓███▌  ▓▓██▌ ░ ▐▓███   ▓▓██▌   
  13.   ▓▓▓██▌ ■▓▓▓▓██  ░  ▓█████■ ▀▓▓█▄ ▄▓██▀  ▐▓████ ▄ ▀▓██▄ ▄▓██▀     ▀▓██▄  
  14.    ▀▓███▄   ▀▀▀██▄  ▄▓█▀▀▀      ▀▀█▀▀    ▄▓▓▓▀▀       ▀▀█▀▀           ▀▀▀▀ js
  15.        ▀▀▀▀▀▄▄           ░ inside   ▄▄▀▀▀▀▀ 
  16.           ░   ▀▄  ░     ░░        ▄▀
  17.          ░░       ░      ░░ 
  18.  
  19. Tutor      : duelist
  20. Date Wrote : May 1, 1999
  21. Who        : Newbies
  22. Target     : Klefz Crackme #1
  23. Size       : 19kb
  24. Tools Used : SoftIce
  25. Method     : Code Sniffing
  26.  
  27.  
  28.  
  29.                 -=* Protection *=-
  30.  
  31.  
  32. This one is written in VB 4, and it has an hardcoded serial,
  33. and quoting Klefz - "That one has got a lame protection" :)
  34.  
  35.  
  36.                 -=* Preparing! *=-
  37.  
  38.  
  39. Before continuing into this tuturial, please make sure you
  40. have the following lines in your winice.dat:
  41.  
  42. EXP=C:\windows\system\vb40032.dll
  43. AF4="^s 0 l ffffffff 56,57,8B,7C,24,10,8B,74,24,0C,8B,4C,24,14,33,C0,F3,66,A7;"
  44.  
  45. The first one makes sure that softice recognizes functions
  46. inside VB4's runtime DLL, the second one searches for the
  47. string compare routine inside the VB4's DLL.
  48.  
  49.  
  50.                -=* Approaching! *=-         
  51.  
  52.  
  53. 1) Fire up the crackme exe, enter any code you like...
  54.  
  55. 2) Switch to softice (Control + D) and "bpx hmemcpy"
  56.  
  57. 3) Click 'TEST!' and when you break into softice press F12 * 7 times, so
  58.    that you get into VB40032.DLL
  59.  
  60. 4) Clear the hmemcpy breakpoint by "bc *"
  61.  
  62. 4) Now, click ALT + F4 (still into softice), to make it search
  63.    for the memory location where the string compare routine
  64.    resides.
  65.  
  66. 5) You will get something like "Pattern found at xxxx:xxxxxxxx" do a
  67.    "bpx xxxx:xxxxxxxx", this way softice will break whenever the string
  68.    compare function inside VB's DLL is called...
  69.  
  70. 6) Press F5 (or Control + D) and you'll be back in softice right away:
  71.  
  72.     :0F00D9EA 56 PUSH ESI              ; string1, the correct code (!)
  73.     :0F00D9EB 57 PUSH EDI              ; string2, our wrong code...
  74.     :0F00D9EC 8B7C2410 MOV EDI,[ESP+10]   
  75.     :0F00D9F0 8B74240C MOV ESI,[ESP+0C]   
  76.     :0F00D9F4 8B4C2414 MOV ECX,[ESP+14]   
  77.     :0F00D9F8 33C0 XOR EAX,EAX   
  78.     :0F00D9FA F366A7 REPZ CMPSW                ; compare the strings
  79.  
  80. 7) So, if you "d esi" just after you break, you will get "x.y.z.q.w.e.r.t.y.o.p",
  81.    which is the correct code (in unicode format), just remove the points between
  82.    the letters and you have the valid code, which is "xyzqwertyop"...
  83.  
  84.  
  85.                 -=* Final Notes *=-
  86.  
  87.  
  88. I wrote this tuturial mainly to show newbies that are 'afraid' of cracking VB,
  89. that it is sometimes easier than cracking programs written in other language,
  90. just a little bit different!
  91.  
  92.                 
  93.  
  94.                                 signing off, duelist [isd]