How to Become a Hacker
Looking for advice on learning to crack passwords, sabotage systems, mangle websites, write
viruses, and plant Trojan horses? You came to the wrong place. I'm not that kind of hacker.
Looking for advice on how to learn the guts and bowels of a system or network, get inside it, and
become a real expert? Maybe I can help there. How you use this knowledge is up to you. I hope
you'll use it to contribute to computer science and hacking (in its good sense), not to become a
cracker or vandal.
This little essay is basically the answers to all the emails I get asking how to become a hacker.
It's not a tutorial in and of itself. It's certainly not a guaranteed success. Just give it a try and see
what happens. That said, here's where to start:
Be curious
Take things apart. Look under the hood. Dig through your system directories and see what's in
there. View the files with hex editors. Look inside your computer. Wander around computer stores
and look at what's there.
Read everything in sight
If you can afford it, buy lots of books. If you can't, spend time in libraries and online. Borrow
books from friends. Go through tutorials. Read the help files on your system. If you're using
Unix/Linux, read the man files. Check out the local college bookstores and libraries. And as
you're reading, try things (see next paragraph).
Experiment
Don't be afraid to change things, just to see what'll happen. Do this long enough, of course, and
you'll wipe out your system (see next paragraph), but that's part of becoming a hacker. Try
command options and switches you've never tried before. Look for option menus on programs
and see what they can do. In Windows, tweak your registry and see what happens. Change
settings in .INI files. In Unix, dig around in the directories where you don't normally go. On the
Macintosh, play around in the system folder.
Make backups
If you start mucking around with system files, registries, password files, and such, you will
eventually destroy your system. Have a backup ready. If you can afford it, have a system you use just for experimenting, ready to reload on a moment's notice, and do your serious work (or
serious gaming!) on a different computer.
Don't limit yourself
Who says a computer or network is the only place to hack? Take apart your telephone. Figure out your television (careful of the high voltage around the picture tube - if you fry yourself, it's not my fault) and VCR. Figure out how closed captioning works (that was a plug for my
CaptionCentral.com Web site). Take apart your printer. Pick up the latest issues of Nuts & Volts
and Midnight Engineer (you've obviously made a good start if you're reading Blacklisted! 411).
Take apart the locks on your doors. Figure out how your radio works. Be insatiably curious and
read voraciously. There are groups you can learn from. There are whole Web sites devoted to
hacking TiVo units, for example.
Get some real tools
You can't cut a board in half with a screwdriver. Well, maybe you can, but it'll take a long time.
Dig around and find the proper tools for the operating systems you're using. They're out there on the Web. You can get some pretty good stuff as shareware or freeware (especially on Linux). The serious power tools often cost serious money. What kinds of tools? Hex file editors.
Snoopers
that analyze system messages and network traffic. Compilers and APIs for programming.
Scripting tools. Disk editors/formatters. Disassemblers. When you get good, write some of your
own.
Learn to program
If you want to be a hacker, you're going to have to learn to program. The easiest way to start
depends on the operating system you're using. The choice of language is very individual. It's
almost a religious thing. Suggest a programming language to a beginner, and someone will
disagree. Heck, you'll probably get flamed for it in a newsgroup. In Unix, I'd suggest getting
started with Perl. Buy a copy of the camel book (Programming Perl) and the llama book(Learning Perl). You'll have the fundamentals of programming really fast! The best part is that the language itself is free. In Windows, you can get started quickly using a visual development environment like Visual Basic or Java. No matter what the system, if you want to get serious, you'll eventually need to learn C (or C++ or C# or some other variant). Real hackers know more than one programming language, anyway, because no one language is right for every task.
Learn to type
Hackers spend a lot of time at their keyboards. I type 90+ wpm (according to the Mavis Beacon
typing tutor). HackingWiz (of hackers.com and Hacker's Haven BBS fame) says he can type 140+wpm. The typing tutor may be boring, but it pays off.
Use real operating systems
Windows 95/98/Me is a shell on top of a 32-bit patch to a 16-bit DOS. Get some real operating
systems (Linux, Windows NT, Mac OS, OS/2...) and learn them. You can't call yourself a linguist
if you only know one language, and you certainly can't call yourself a hacker if you only know one
OS. Linux is a hacker's dream. All the source code is freely available. Play with it, analyze it,
learn it. Eventually, perhaps you can make a contribution to Linux yourself. Who knows, you
might even have a chance to write your own OS.
Talk to people
It's hard to learn in a vacuum. Take classes. Join users groups or computer clubs. Talk to people
on IRC or newsgroups or Web boards until you find people to learn with. That can take a while.
Every third message on newsgroups like alt.hack* is "teach me to hack." Sigh. The best way to
be accepted in any group is to contribute something. Share what you learn, and others will share
with you.
Do some projects
It's important to pick some projects and work until you've finished them. Learning comes from
doing, and you must follow the project through start to finish to really understand it. Start really
simple. Make an icon. Customize your system (the startup screen on Win95, or the prompt on
Unix). Make a script that performs some common operation. Write a program that manipulates a file (try encrypting something).
Learn to really use the Internet
Start with the Web. Read the help for the search engines. Learn how to use Boolean searches.
Build up an awesome set of bookmarks. Then move on to other Internet resources. Get on
Usenet. Find some underground BBSs. Get on IRC. You'll find useful information in the strangest places. Get to the point where you can answer your own questions. It's a whole lot faster than plastering them all over various newsgroups and waiting for a serious answer.
Once you've gone through these steps, go out and contribute something. The Internet was built
by hackers. Linux was built by hackers. Usenet was built by hackers. Sendmail was built by
hackers. Be one of the hackers that builds something.
No comments:
Post a Comment