Online Acumen







CRACKS

For your benefit, I have again delved into the seedy underside of the Internet to help keep you informed of what it has to offer.

I submit this report on Cracking for your approval.




A Definition


Cracking is defined as the attempt to remove the copy protections inserted into software programs. A program successfully stripped of protections is then known as having been "Cracked".


Some of the removed protections include:


Time limits - example of this is a 30-day trial period, after which the program will no longer run.
Nag Screen - graphic that appears, at programmer determined intervals, asking you to register the software.
Serial Number - the use of an assigned number that is required for the program to function.

A Crack usually comes in the form of an .exe or .com file. Like a file you download from a software company to correct a bug or add a feature, a Crack patches one or more of the applications .dll files or the main .exe file itself.




Is This Legal?


Similar to the other Internet giveaway, Warez, the legality of Cracks is far from being globally defined.

The most common belief stated online is that it is legal to write, upload and even download a Crack, as long as you don't use it to disable a software title's copy protection. However on 10-24-97, it was reported here in the U.S. that two separate arrests were made for the "illegal distribution of Cracks."

The news article reveals a few interesting points about how the FBI and the SPA had two sites under surveillance for seven months!


Wow, it took that long to gather evidence!


The article also states that the SPA found over 17,000 sites listed on the net that were similar to the ones taken down. Lets see, at seven months for every two sites that would take them only 4,958 years to bust them all.

While it may or may not be illegal to use and distribute Cracks, the legality of actually "Cracking" a piece of software is an entirely different matter.




Software License


The legality of reverse engineering software has been established in many parts of the world. In Europe for example, this activity is clearly defined as legal in the European Union Directive.

In the United States, several court cases have ruled that the reverse engineering of software is legal, as long as the motive is not commercial gain.

Read more about cases that ruled in favor of the right to disassemble software.

You may have read the above text and said to yourself, "Hey the software license says I am forbidden to decompile the software I own."


You're right, it does. Except, you don't "own it". You are being "allowed to license it".

The reason for this is so that the company that produced the software can be exempt from any liability resulting from a faulty product.

Did that hot new software title format your hard drive? Nothing the manufacturer can do for you because you do not "own" the title and only legal owners have the right to demand compensation.

In reality of course, things are different. Even the standard "Software License" states that depending on where you live, all the previous gibberish "may not apply to you".

This does not stop them from saying it however, also you "must agree" to this license or you will not be allowed to proceed with the installment of most software titles.




Fish Tales and Hand Grenades


The computer industry is no corporate slouch when it comes to "telling lies" to deceive the public. Here are just a few examples:

    17" Monitor? - Not even 16", if you're lucky 15.9" - I guess they thought the average computer user would not notice the difference in an item that they only stare at all day!

    56k x2 Modem? - Sorry, maxes out at 53k recv. and 33.6k sending. USRobotics blames this on FCC regulations, actually the problem is the modem sends too much voltage thru the phone line, limiting speed to 53k. But hey, what's one more lie among friends?

    32x CD-rom? - Possibly the greatest flat out, screw you, lie yet - These drives average speeds of between 16X - 20X and are only able to achieve a rate as high as 30X. The 30X speed is only attained when the CD has data written all the way to the edges of the disk. Once the outer edge data is read the CD drive slows to half speed. This is why you see CD-ROM Drives labeled as 24/12 or 32/16.



The automobile industry used to treat customers like dirt too, until the day that their utter contempt and disregard for the general public peaked with the release of their "gutter car" line. This pathetic lineup included the abominations that were to be known as, "gremlin" and "pinto".


Note: The mere sight of a gremlin caused other drivers to veer off the side of roads in utter fear of these "moon buggies".


But it was the pinto's bad habit of exploding like a hand grenade, that finally brought the auto industry back down to earth. The pinto was as ugly as it was dangerous, which made for great T.V.

The news media wasted no time in gleefully broadcasting video, graphically demonstrating just how awful burning to death in an "ugly car" could be.

I can only guess at the event that will provoke the regulation of the computer industry. For the chances of something happening are good, for history has a habit of repeating itself.




Where to Search


As I state in my article on Warez, you should be able to track down all the info you need regarding this subject by making good use of the many search engines the net has to offer.

DogPile is a web site that allows you to search all the popular search engines, as well as, Usenet and FTP sites at the same time. This site also provides a link to MetaSearch if you are still in need of more info.

Since the file size of most Cracks are small, around (5-10 KB), you can find them posted on Usenet, even if your provider does not carry binary newsgroups. Alt.cracks is one group that receives thousands of weekly posts.

Incredible though it may sound, there is a program called Oscar, yes the same green thingy from Sesame Street, that you can download containing well over 7,000 serial numbers. The latest version is Oscar 10.2 You can also find a lot of lists floating around the net containing thousands of serial numbers.




A Deeper Understanding


You can find sites online run by would be "Capitalists" who download as many Cracks as they can find and then offer to sell to you for a price. Avoid these places, most of the people who Crack these programs are more than glad to give them away for they are said to be in it for a "deeper understanding."

Many people involved in Cracking protection schemes say they are in it for the challenge, as well as, the opportunity to learn more about how programs communicate with the operating system, memory and microprocessor.

Cracking a program can be an excellent way to learn about programming since you often need to debug and/or disassemble a program. By doing these things you get to trace or step through the inner workings of the software, as well as, receive a text readout of the source code displayed in assembly language (ASM). I'll talk more about these two cracking methods a little later.


Note: ASM is the language used to write the tight, fast code needed for device drivers.


You'll find a lot of disdain among Crackers for the software companies use of reusable object code development platforms like Visual C++. They feel that these type of languages do most of the work for the programmer, who in turn, never learns how to write good code, much less an uncrackable protection scheme.




Cracking the Code


While there are many different ways to penetrate most software programs protections, I will focus on two popular techniques.

One cracking method is to disassemble the target programs (.exe) file using Wdasm 8.9, which, as I stated earlier, outputs the programs source code in assembly language (ASM).

While using Wdasm 8.9 will not likely reveal the actual serial or registration number, it will expose the locations in the code where the softwares protections lurk. Once found, these protections are easily disabled, allowing for the program to be registered by entering the wrong info or no info at all.

Another weakness in protection that is commonly exploited by Crackers is the software's reliance on calling Win32 API functions. Two of these functions are GetWindowTextA and LstrCmpA.

After a user provides their Name and Registration Code or Serial Number in a dialog box, these type of API functions are called to "compare to" or "generate" the code needed to register the program.

Using NuMega's Soft-ice debugger a Cracker can easily set "breakpoints" on these functions to display their location in memory. Armed with this info the Cracker can then instruct Soft-ice to "display" the information stored in that segment of memory.


As you may have already guessed, the info displayed is often the correct registration code or serial number.




Do Cracks Really Work?


I have no first-hand knowledge that they do. However, I have read several messages posted in the newsgroups saying Cracks do indeed work.

One of the reasons you see so many new versions of software, especially shareware, is that the software authors also watch this group and release new versions that can withstand the previous Crack. This is not always the case as some cracks work with many versions.

The Cracks FAQ is one of the best documents on the topic of Cracks that I've ever seen. Packed with all kinds of helpful tips and info, it will go a long way toward answering your questions about Cracks and Cracking.




Cracking - Learning from the Masters


Long did I search for info on the art of cracking. Just when I thought it only to be a myth, I stumbled onto one out of a total of a dozen "lessons" written by +ORC.

Reading these documents will give you a whole new "perspective" on how just like cracking is the attempt to gain the hidden secrets of a software program, the same type of techniques can also be applied when trying to learn what is really going on in the world, without having to take the word of the government or news media.

Here are all twelve documents in one zip file - How to Crack (120 kb).

Fravia's is a great site that discusses every aspect of Cracking. You can learn more about the tools listed below, as well as, read some of the many tutorials, pages of commentary and advice, or actually download some of the tools you'll need to get more involved in Cracking.

Mammon's is a virtual treasure chest of useful tools, tutorials and some of the best links I've come across. It is sites like this that make the net such a valuable source for those who thirst for knowledge.

The Art of Assembly The most complete ASM tutorial on the net. Strongly recommended.



Tools of the Trade


Here is a list of some of the tools used in Cracking:

Hex Editor - used to patch disassembled code.
Wdasm 8.9 - shareware disassembler, also includes a debugger.
IDA Pro 3.7 - interactive disassembler. Learn more about it Here.
DCC32 - De-compiler that kicks out actual C source code. Learn more about it Here.
SoftICE - most powerful Cracking tool in existence. Available from NuMega.