Hacker Perspective: David Libertas

1979 was a great year for a hacker to be born.  Had I been born much earlier, I would have missed growing up with a PC.  Had I been born much later, I would have missed the simplicity of the first PCs and the early Wild West days of the Internet.  Our issues of 3-2-1 Contact included reader-submitted BASIC programs, and we grew up with hand-me-down early 1980s computers that booted directly into BASIC.  They were simple enough for a curious 11-year-old to learn everything about them down to the raw hardware.

My first exposure to computer programming was my sixth grade pre-algebra textbook.  It presented BASIC programs to demonstrate the math lessons.  The teacher skipped over them since our school had no computers, but I enthusiastically read them, wanting to know more, wishing I could write a program.

One day while at my dad's school (he was a teacher), I got my hands on my first programmable computer - a Commodore 64 - and wrote my first program:

INPUT X
PRINT X

My second program was this:

FOR X=1 TO 1000000:PRINT X:NEXT

Seeing the device remember information I had given it was amazing to my young mind.  Then seeing it do math I had instructed it to do, "thinking" like a human brain...  I had to have one of these!  Finally, one day my dad brought home a Commodore PET his school was throwing away, complete with green on black screen and storage limited to using audio cassettes like a mainframe tape drive.

A great thing about being a 1980s kid was many of the games came in BASIC source code, making them easy to reverse engineer and modify.  This Commodore PET came with a game sort of like The Oregon Trail, but with everything drawn in ASCII art.  Naturally, one of the first things I did was study its BASIC source code and change it.

There was a part of the game where your ASCII man fired an arrow at an ASCII deer.  The arrow was just a hyphen that was drawn with a short pause, erased, and then redrawn the next cursor position to the right.  I removed the erasing part, effectively turning it into a growing laser beam.  For good measure, I changed the hunter's dialog text when he missed to: "Oh f*ck, I missed!"  I was always terrible at maintaining friendships (it would be 27 years later that I would be diagnosed with Aspergian autism), but being able to hack your video game's western pioneer to shoot laser beams instead of muskets and make him cuss like a sailor was a great way to gain some level of popularity with your fellow 11-year-olds!  How many commercial games can kids do that to today?

My first experience breaking into systems was the school's photocopy machine.  It was protected by numeric codes to monitor how many copies each teacher created.  Having photocopy codes was coveted for no other reason than the fact that we were not supposed to have them.  It is an axiom that when you tell an 11-year-old he cannot have something, then that becomes the thing he wants the most.  I attribute this phenomenon to why the uncool D.A.R.E. officers made some students previously uninterested in drugs now suddenly want to smoke weed.  (With D.A.R.E. still around, I suppose this is one of the experiences of being born in 1979 that kids today can still share.)  Usually the photocopier was behind a locked door, but one day they left the door open.  It did not take long to guess sequences of numbers that revealed information or granted me unauthorized access.  You can probably guess them even today: 0, 12345, etc.  Some things never change!

Eventually I was upgraded to the venerable Commodore 64 with numerous games.  Some were written in machine code rather than BASIC, but it was not hard to write a disassembler that sent the assembly code to the printer to study on paper.  Games were small enough that they could be printed.  Imagine how many pages it would take to print the machine code of a popular video game today?  The machine code for the Commodore 64's 8-bit CPU was simple enough for a teenager to follow.  How many teens today could follow along the IA-64 assembly of their favorite computer game?  It was great to be a teen born in 1979.

Being a hacker is more than just tinkering with computers.  In high school I learned to crack Master Lock combinations in under a couple of minutes and how to make phones ring without calling them, including the school's payphones.  Messing with the school's payphones is a joy today's teens will never know.  I even got permission from a friend to "hack" into his locker as a bet.  I cracked his lock's combination after hours when the school was empty, slapped a joking sticker inside his locker as evidence, and installed the lock upside-down to make it hard for him to open the next day.  This, too, is a joy now lost in many schools: today when I visit my old school I see surveillance cameras in every hall that would catch anyone doing such an innocent prank.  While on the one hand, maybe having surveillance cameras would have saved me from the black eyes and choke holds I received in the hallways at the hands of the bullies, there is a larger part of me that revolts at the thought of attending school under the constant watchful eye of Big Brother.  I am thankful to have been born before mass surveillance entered the schools.

A curiosity for learning how things work led me to disassemble toys or assemble things in ways they were not intended.  For the latter, I can assure you that you can never truly appreciate how good a 1990s Gameboy sound system is until you wire it into your dad's Peavey rock-n-roll amplifiers, play Super Mario Land, and crank up the sound!  This curiosity is an important skill in everyday life.  As a married man, it has earned me the nickname Mr. Fix-it from my wife when I figure out how to repair things around the house: the leaky washing machine, a broken watch, lawn mower problems, etc.  When you can figure out things on your own, a $150 service call now becomes a $10 part from Amazon and, more importantly, the immense fun of learning something new.  While the things we tinkered with decades ago have changed, this is one joy any person can partake of today, regardless of age.

As high school progressed, I was facing the likely prospect of living in my parents' attic as a poor musician.  Imagine my shock when one day I read that this fun Commodore 64 programming hobby of mine could actually be used professionally, and make good money from it, too!  I knew then that a computer degree would be in my future, and it is impossible to express the excitement of knowing I would be learning how modern computers work: C, C++, this mysterious thing I kept hearing about called "object oriented programming," operating systems, networking, a PC more advanced than a Commodore 64!

Being born in 1979 afforded the opportunity to attend university in the late 1990s, a time when the nation was coming online but no one, including software vendors, understood anything about security.  This was the perfect time to be a curious hacker.  The Macs in the computer labs had no concept of "users" and so required no login whatsoever for me to install keyloggers and other backdoors.  The Windows 95 machines ostensibly required a login, but it was not hard to figure out the proper keystrokes to bring up Windows Explorer without a login.  Random file shares from the school or other students were wide open with read/write access.  Most network traffic was not encrypted, allowing me to sniff the passwords of everyone living around my dorm room.  I remember dreaming up a "man-in-the-middle" scheme to redirect my dormmates' emails to myself and back to them without their knowledge, and the pothead across the hall from me even gave me permission to try the hack on him.  I am glad networks are more secure today, but I am also thankful to have grown up in a time when they were not!  College kids today cannot easily experience those delights.

My roommate was a computer lab assistant.  Back then Windows 95 could only read two gigabyte partitions, but the university bought larger capacity drives, leaving large amounts of unallocated space.  My roommate used that space to install our favorite video games on the university's lab PCs, but configured not to mount on boot so they remained hidden from school authorities.  He let me and other friends into the lab after hours.  We mounted the hidden partitions to D: and played StarCraft, Counter-Strike, and other games.  LAN party in the computer lab!  How many lab techs could do that to a secured Windows machine today?

I learned about password security when a friend in our dorm asked for help recovering her email account.  We all used a free service that gave us @cheerful.com vanity addresses that would forward everything to our real university addresses.  I found with my account, I could browse through a password recovery flow that would email me a reset link like many sites do today.  But for hers, it instead insisted on challenge/response questions she forgot how to answer.  Probing the HTML source, I found that there was a hidden input that would have values from step1, step2, etc., as you progressed through the flow.  I noticed her account rendered different step values than mine.  I made a handcrafted HTML form to submit to their server whatever steps I wanted to force her account through and tried to force it through the recovery link email step.

This did not successfully trigger the recovery email as I had hoped, but I figured why not just keep incrementing the step number and see what happens?  This revealed a new step that displayed the account's password in plaintext to the web browser.  Clearly they were not hashing their passwords, a frightening thought by today's standards!  It worked on every @cheerful.com email account, not just hers.  (Even to this day I still remember my roommate's @cheerful.com password!)  It was an amazing find: I was not even trying to break into it and yet I still managed to stumble upon this massive security flaw.  I am sure holes like this were common back then, but how many reputable websites could be so easily hacked by today's college students?

I wanted to report it to the company so they could fix it, but I was afraid of them reporting me to the cops.  I could not afford to get in trouble again, due to a mistake I had made the year prior, a university experience that taught me what line not to cross.

This was the time when Cult of the Dead Cow had released Back Orifice at DEFCON.  My roommate's machine had been hijacked with similar software called NetBus.  I had done the forensic analysis to find and remove NetBus, used a packet sniffer to track down the attacker (ended up a friend of his, a son of one of our professors), and pwned the perpetrator into installing Back Orifice on his computer through my first attempt at social engineering.  It was all in good fun; none of us computer programming classmates had hard feelings about pwning each other.

I then thought how amusing it would be if I could trick the entire university into installing Back Orifice on every computer.  Just innocent fun, right?  I wrote a program that extracted the LAN IDs of every student, teacher, and administrator by querying the university's Ph (or CCSO name server) with certain patterns.  Then it blasted an email with Back Orifice attached, saying it was a required update to the university's software.

At first it seemed like a great lesson in work programming.  I had to handle the connections and the SMTP protocol myself, including writing my own Base64 encoder for the file attachment.  I debugged it on my PC, but I was careful to launch it on a Windows lab machine with login bypassed so it could not be traced to me.  What I was not careful about was thinking that they might log all queries to Ph.  Once they tracked the lab PC that had launched the emails, they found it had also made a unique pattern of Ph queries, then saw my PC had done similar Ph queries in the past during my debug sessions.

Long story short, the local judge took my PC, I plea bargained a felony charge down to a misdemeanor with probation, and successfully defended an attempt to expel me from the university.  (Ironically, this also got me a free credit test-out from the networking programming class!)

As a computer professional today who has had to clean up messes made by pranksters, I now appreciate the hardship and headaches caused by "harmless" pranks.  Had it turned into a real felony, there would have been legal ramifications affecting my ability to find employment in certain industries, among other restrictions.  Looking back, it was a very stupid and shortsighted prank.  It should have been enough to prove to myself I could do it without running the actual program.  Crossing the line of hurting others and risking a felony for yourself is something a hacker can do from any generation, and I encourage upcoming hackers not to make a similar mistake.

There were many wonderful joys of growing up a hacker born in 1979 that today's youth will never enjoy.  But for the new hackers coming of age now, I hope you find new joys that did not exist in my youth.  My only message for you is to think hard about the consequences of your actions.  A harmless prank today could turn into something that might negatively affect your whole life or the lives of others.

Happy hacking!  And don't be stupid.

The author currently does IT architecture for a Fortune 500 company and lives in Amish country with his beautiful wife and cats.  His non-tech hobbies include brewing beer and the Italian language.

Return to $2600 Index