Copy Link
Add to Bookmark
Report
_CbD_s Tutorial 04
CbD's Tutorial #4
Alternitive to Serial # Locating
Target : Business Cards 32 v 4.18
Level: New to Intermediate
Motive of Crack:
Well we all know that sometimes we cant seem to find the right serail number
when we are cracking a program, So this crack is to help you to better understand
that there are other ways to register even if you cant find that " GooD " number
I will show you that you can simply make the program take any number as a
"GooD" one. This type of crack can be hard in some cases but for this example
I have choosen a fairly simple program for us to use. If you have read my other
Tutorials you should know that I crack in steps to help each of you new crackers
to follow along and hopefully not get lost :-).
About the Crack:
This crack will have 3 main Parts to it each of them having there own steps for
you to follow. I hope i have made it easy for you and if for some reason you
have trouble with it please feel free to join us on EFNET in #cracking4Newbies
and ask for help. Please note that we dont mind helping the newest of the
Cracking world to better their skills as this is what we are here for.
The Target: Business Cards 32 v4.18
Get it From: http://www.midstream.com
Protection Type: Serial Number Registration with a 30day time limit
Requested by: None
Tools Needed: SoftIce, Hiew(or other Hex Editor)
The Crack
Part #1
Ok lets get the crack started, so go and get the prorgram from midstream
and install it. Got it installed yet? well do it....
Step 1
Well let start this crack by looking at our little program, So load Bcards
and then you will see the nag screen telling us that we are not a registered user
(Not Yet anyway) and that you have 30 days to try the program. Well click and get rid
of the nag and then click [HELP] [REGISTER] you will get the little box for you to
put in your info. Well put the Name in you want then the company (if you want) and
then the serial number.
Step 2
Now if we wanted to find the "GooD" serial number we would have to use softice
to find the location that the "GooD" number get compared to ours, But we dont
care what the number should be cause we are going to make the program
take our bogus number ( And Like It ) and then give us a registered user status.
But for us to do this we have to still use Softice so we can find where the program
checks for a valid number then make it think any number is a good one
so lets get in SoftIce and start the work. Do this Ctrl-D this put you in SI
now we need to break when the programs reads our Serial number so
we will set a BP(BreakPoint) on GetDlgItemTextA (I have already found the right
function for you) so do this BPX GETDLGITEMTEXTA and press enter
now we have the only break point we need for this crack. So get out of SI with
Ctrl-D.
Step 3
Now you should be back in Bcards at the registration screen, so press enter
and you will land back in SI at the GetDlgItemTextA function that was called
by our program. Well this is not where we need to be, because our program
has three different textboxes to read the data from (1) Name (2) company
(3) serial number, and the one we want is the serail number one. So
lets press F11 to return to the place the function was called then press F5
and let the program continue to run, we will break again at the GetDlgItemTextA
function, this is where the program gets our company info, this to is not what we
want so Press F11 to return and then F5, now we break at the function once more
so we Press F11 to get to where the function was called from. This is where we
will start to do the real cracking of the program.
Step 4
Now that we are in the part of the code that will be checking our serial number
and deciding if we are a (GooD Guy) or a (Bad Cracker) we will need to do some single
stepping to see what happens here. So Press F10 and watch the lines of code as they
pass. We will want to stop on the code below.
Your addresses may differ but the code it's self should look the same
:00412C3A ADD ESP,04
:00412C3D CMP BX,AX [STOP HERE] <---- compares part of our serial # with parts of the good one
:00412C40 JNZ 00412C7E <---- if all is good then go ahead and if not the jump
:00412C42 LEA EAX, [EBP-0C] so this is one of our points we need to make a change to
Ok we will need to change the JNZ (Jump if Not Zero) to JZ (Jump if Zero) and in doing this
if we were to enter a valid serial number the program would not allow it to register as it
will then think that it is a Bad number. So lets make a note of the the address we
will need to change and also you should do a D xxxx:00412C40 and then write down
the value from the data window for later use. Or if you just want to crack your program
and not make a general crack to distribute you can make the change in SI like this
A xxxx:00412C40 [ENTER] <----- Press the Enter Key
xxxx:00412C40 JZ 00412C7E [ENTER] [ENTER] <---- Press Enter Twice
(Note the xxxx is the starting value for the address as you see it on your system mine is 0137)
now this will not modify your program on the disk only what is running in the system memory
after you close the program the changes you made will be gone, but if you do all the right
steps the program will still be registered.
Step 5
Ok that was one of the 3 changes that will need to be made becasue if you scroll down with the
Ctrl-downarrow you will see the following code after you locate it Press F10 till you get to the
CMP then if you wish you can make your changes.
:00412C62 ADD ESP,04
:00412C65 CMP SI,AX [STOP HERE] <---- compares part of our serial # with parts of the good one
:00412C68 JNZ 00412C7E <---- Notice that the jump is to the same address as before
:00412C6A LEA EAX, [EBP-0C] so we will need to do the same as we did above
do a D xxxx:00412C68 the write down the value from the data window for this one
and again if you want to you can make the change from right here in softice
A xxxx:00412C68 [ENTER] <----- Press the Enter Key
xxxx:00412C68 JZ 00412C7E [ENTER] [ENTER] <---- Press Enter Twice
now that is the second change now we have one more then the crack will be done
Step 6
Now F10 just a few lines and you will see this code below
:00412C62 ADD ESP,04
:00412C65 CMP EAX, [EBP-0098] [STOP HERE]
:00412C68 JZ 00412C91 <--- Jump if all the code is good
:00412C6A LEA EAX, [EBP-0C]
Remeber to do a D xxxx:00412C68 and write down the values.
Now here we will need to change the JZ to a JNZ and once we have done this we can disable our
breakpoints and hit F5 or Ctrl-D and let the program continue and as we pop back to the program we
will see that we are now a registered owner of this program .......
Ok we ahve now Cracked this program and if we want to we can make a general crack
so everyone can crack there copy. to do this just follow the steps below
Part 2
Step 1
Ok remember the values I told you to write down ? did you ? well if not i have provided them below
First one was
xxxx:00412C40 75 3C 8D 45 F4 50 E8 59
^ ^ ^ ^ ^ ^ ^ ^ <--- Values you will need
Second one
xxxx:00412C68 75 14 8D 45 F4 50 E8 31
^ ^ ^ ^ ^ ^ ^ ^ <--- Values you will need
Third one
xxxx:00412C7C 75 13 8D 45 F4 50 E8 1D
^ ^ ^ ^ ^ ^ ^ ^ <--- Values you will need
The following instructions are for users of HIEW only if you are using a different
Hex editor then you will need to find the commands that do the same procedures
ok Start Hiew by editing the bcards.exe file (Make a backup first)
then do the following
1) when hiew starts press the F4 key to get Hex view
2)press F7 to search
3) enter the first string from above(only the ones marked)
4)press F2 to get the Code view
5)press F3 to edit the code
6)press F2 for ASM mode
7)change the JNZ to a JZ
(This may show as a JE or a JNE depending on the step you are in 1,2 or 3)
8)press F9 to update
9)Press F10 to exit
now do the same for each of the three strings, you will need to restart Hiew each time
to insure that you are able to get the proper search result
(Note for the last on make sure you change the JZ to a JNZ)
after you are done with all three you can then exite Hiew and continue to part 3
Part 3
Makeing a Patch with Gpatch
ok remember I told you to make a back up copy of your file before you used HIEW
well you should name it like this Bcards32.bak and the one you edited should be
Bcards32.exe (note you should read the Doc that comes with gpatch to full understand
how to use it) if you want you can make a txt file named gpatch.txt and put any nfo
about your patch you want. now run gpatch like this gpatch bcards32.exe
it will make you a patch and name it patch.com you can now rename it to whatever you
like and distribute it . well thats it for this tut.
I hope this Tutorial has been helpful and showed you another way to crack
those serial number protections. Well even if you cant seem to make the crack work
(Dont see why you couldn't) i have included the crack with the tutorial.
Enjoy and Happy Cracking......... _CbD_ ME/C4N'97
EFNET #Cracking4Newbies stop by and see us sometime....