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

  1. Tutorial for Ultimate Crackme (n0p3x)
  2. by Sanhedrin
  3.  
  4. Tools
  5. Softice
  6.  
  7.  
  8. Start the crackme and you will immediately be hit with the first nag screen.  Then either
  9. the softice warning will halt the crackme, or another nag screen warning you about a wrong
  10. keyfile appears.  After we get by these, there is the typical registration screen.  So we have:
  11.  
  12. A nag screen
  13. A softice check
  14. A keyfile check
  15. Registration check
  16.  
  17. To complicate things further, the file is either packed or encrypted in some way, thus making 
  18. disassembly, and hex checking virtually impossible.
  19.  
  20.  
  21. --USING THE NAG SCREEN--
  22.  
  23.  
  24. A quick check in softice proves to be a messagebox, so let's put a breakpoint on:
  25.  
  26. bpx messageboxa
  27.  
  28. Exit softice and start the crackme.  After you break into softice press F11, then click on 
  29. OK on the shareware message, and you will break back into softice.  You should be at:
  30.  
  31.  
  32. 0040138D    E856040000        CALL    USER32!MessageBoxA
  33. 00401397    85C0            CALL    0040107C<---you will land here - call is softice loaded
  34. 00401399    741C            JZ        004013B7<---jump if no softice
  35.  
  36. //SNIP//
  37.  
  38. 004013B7    E8F5FCFFFF        CALL     004010B1<---call is SICE-NT loaded
  39. 004013BC    85C0            TEST     EAX,EAX
  40. 004013BE    741C            JZ        004013DC<---jump if no softice
  41.  
  42. //SNIP//
  43.  
  44. We'll stop here for a moment.  Press F10 once and stop at 00401399. If you are working with 
  45. softice 95/98, type:
  46.  
  47. d 00401399
  48.  
  49. then change it to:
  50.  
  51. jnz 004013B7
  52.  
  53. or press F10 and stop at 004013BE.  Change 004013BE to jnz 004013DC if you are working with SICE-NT.
  54.  
  55.  
  56. --KEYFILE PROTECTION--
  57.  
  58.  
  59. Now that we have jumped the softice check, press F10 past the jumps, and stop at:
  60.  
  61. 004013DC    E81BFDFFFF    CALL    004010FC<---call the keyfile check (stop here)
  62. 004013E1    85C0        TEST    EAX,EAX
  63. 004013E3    7415        JNZ        004013FA<---jump if information in keyfile is not correct
  64.  
  65. At 004013DC type
  66.  
  67. d ebx and you will see:
  68.  
  69. //./SICE.//./NTICE.Register.dat.Why didn't n0p3x use a more difficult keyfile method?
  70.  
  71. All information that you will need is in this line.  The keyfile is called:
  72.  
  73. register.dat
  74.  
  75. and the information in the keyfile is:
  76.  
  77. Why didn't n0p3x use a more difficult keyfile method?
  78.  
  79. Create the keyfile, then enter softice, (use the above method to bypass the softice checks) and you
  80. will bypass the last jump.  This leaves us with the final Name/Company/Registration code to bypass.
  81.  
  82.  
  83. --ARE WE DONE YET--
  84.  
  85. Enter any name company and serial number
  86.  
  87. Sanhedrin
  88. DND
  89. 123443211
  90.  
  91. and enter softice.  Put a breakpoint on either
  92.  
  93. bpx hmemcpy
  94. bpx getdlgitemtexta
  95.  
  96. Exit softice and click on OK.  Once you have broken into softice, disable the breakpoints.  A
  97. few F12's and F10's later, you will end up at:
  98.  
  99. //SNIP//
  100.  
  101. 00401251    83F809        CMP    EAX,09<---is the code length 9 characters long?
  102. 00401254    7D1F        JGE    00401275<---jump if 9, or greater than 9
  103.  
  104. //SNIP//
  105.  
  106. Press F10 until you are at 004012BA
  107.  
  108. 004012BA    50    PUSH EAX<---place real serial number in EAX.
  109.  
  110. Type
  111.  
  112. d eax
  113.  
  114. and you will see that the real serial number is:
  115.  
  116. 999108:-)
  117.  
  118. So to crack this program, all we have to do is restart windows without softice, start the 
  119. crackme with the keyfile, and enter the registration code.
  120.  
  121.  
  122. Greets to n0p3x
  123.  
  124. Thanks to all of those coders that make these crackmes, to Pepper for sending me on the 
  125. right path so long ago and of course to Eternal Bliss.
  126.  
  127.  
  128. Sanhedrin
  129. stachi@geocities.com