Table of Contents
Previous Section Next Section

Chapter 5: 0x500—Conclusion


Hacking tends to be a misunderstood topic, and the media likes to sensationalize, which just exacerbates this condition. Changes in terminology have been mostly ineffective — what's needed is a change in mindset. Hackers are just people with innovative spirits and an in-depth knowledge of technology. Hackers aren't necessarily criminals, though as long as crime has the potential to pay, there will always be some criminals who are hackers. There's nothing wrong with the hacker knowledge itself, despite its potential applications.

Like it or not, vulnerabilities exist in the software and networks that the world depends on from day to day. It's simply an inevitable result of profit-oriented software development. As long as money is connected to technology, there will be vulnerabilities in software and criminals in networks. This is usually a bad combination, but the people finding the vulnerabilities in software are not just profit-driven, malicious criminals. These people are hackers, each with their own motives; some are driven by curiosity, others are paid for their work, still others just like the challenge, and several are, in fact, criminals. The majority of these people don't have malicious intent and instead help vendors fix their vulnerable software. Without hackers, the vulnerabilities and holes in software would remain undiscovered.

Some would argue that if there weren't hackers, there would be no reason to fix these undiscovered vulnerabilities. That is one perspective, but personally I prefer progress over stagnation. Hackers play a very important role in the co-evolution of technology. Without hackers, there would be little reason for computer security to improve. Besides, as long as the questions "Why?" and "What if?" are asked, hackers will always exist. A world without hackers would be a world without curiosity and innovation.

I hope this book has explained some basic techniques of hacking and perhaps even the spirit of it. Technology is always changing and expanding, so there will always be new hacks. There will always be new vulnerabilities in software, ambiguities in protocol specifications, and a myriad of other oversights. The knowledge gained from this book is just a starting point. It's up to you to expand upon it by continually figuring out how things work, wondering about the possibilities, and thinking of the things that the developers didn't think of. It's up to you to make the best of these discoveries and apply this knowledge however you see fit. Information itself isn't a crime.


Aleph One. "Smashing the Stack for Fun and Profit", Phrack 49.

Bennett, C., F. Bessette, and G. Brassard. "Experimental Quantum Cryptography", Journal of Cryptology 5, no. 1 (1992): 3–28.

Borisov, N., I. Goldberg, and D. Wagner. "Intercepting Mobile Communications: The Insecurity of 802.11."

Brassard, G. and P. Bratley. Fundamentals of Algorithmics. Englewood Cliffs, NJ: Prentice-Hall, 1995.

CNET News. "40-Bit Crypto Proves No Problem." January 31, 1997.

Conover, M. (Shok). "w00w00 on Heap Overflows", w00w00 Security Development.

Electronic Frontier Foundation. "Felten vs RIAA."

Eller, Riley (caezar). "Bypassing MSB Data Filters for Buffer Overflow Exploits on Intel Platforms."

Engler, C. "Wire Fraud Case Reveals Loopholes in U.S. Laws Protecting Software."

Fluhrer, S., I. Mantin, and A. Shamir. "Weaknesses in the Key Scheduling Algorithm of RC4."

Grover, L. "Quantum Mechanics Helps in Searching for a Needle in a Haystack." Physical Review Letters 79, no. 2 (July 14, 1997): 325–28.

Joncheray, L. "Simple Active Attack Against TCP."

Krahmer, S. "SSH for Fun and Profit."

Levy, Steven. Hackers: Heroes of the Computer Revolution. New York, NY: Doubleday, 1984.

McCullagh, D. "Russian Adobe Hacker Busted", Wired News. July 17, 2001.,1283,45298,00.html

The NASM Development Team, "NASM – The Netwide Assembler (Manual)", version 0.98.34.

Rieck, K. "Fuzzy Fingerprints: Attacking Vulnerabilities in the Human Brain."

Schneier, B. Applied Cryptography: Protocols, Algorithms, and Source Code in C, 2nd ed. New York: John Wiley & Sons, 1996.

Scut and Team Teso. "Exploiting Format String Vulnerabilities", version 1.2.

Shor, P. "Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer." SIAM Journal of Computing 26 (1997): 1484–509.

Smith, N. "Stack Smashing Vulnerabilities in the UNIX Operating System."

Solar Designer. "Getting Around Non-Executable Stack (and Fix)." BugTraq post dated Sunday, Aug. 10, 1997.

Stinson, D. Cryptography: Theory and Practice. Boca Raton, FL: CRC Press, 1995.

Zwicky, E., S. Cooper, and D. Chapman. Building Internet Firewalls, 2nd ed. Sebastopol, CA: O'Reilly, 2000.

Table of Contents
Previous Section Next Section