The Meaning of `Hack' - The Jargon File
=====================
"The word {hack} doesn't really have 69 different meanings", according
to Phil Agre, an MIT hacker. "In fact, {hack} has only one meaning, an
extremely subtle and profound one which defies articulation. Which
connotation is implied by a given use of the word depends in similarly
profound ways on the context. Similar remarks apply to a couple of
other hacker words, most notably {random}."
Hacking might be characterized as "an appropriate application of
ingenuity". Whether the result is a quick-and-dirty patchwork job or
a carefully crafted work of art, you have to admire the cleverness
that went into it.
An important secondary meaning of {hack} is `a creative practical
joke'. This kind of hack is often easier to explain to non-hackers
than the programming kind. Accordingly, here are some examples of
practical joke hacks:
In 1961, students from Caltech (California Institute of Technology in
Pasadena) hacked the Rose Bowl football game. One student posed as a
reporter and `interviewed' the director of the University of
Washington card stunts (such stunts involve people in the stands who
hold up colored cards to make pictures). The reporter learned exactly
how the stunts were operated, and also that the director would be out
to dinner later.
While the director was eating, the students (who called themselves the
`Fiendish Fourteen') picked a lock and stole one of the direction
sheets for the card stunts. They then had a printer run off 2300
copies of the sheet. The next day they picked the lock again and
stole the master plans for the stunts, large sheets of graph paper
colored in with the stunt pictures. Using these as a guide, they
carefully made `corrections' for three of the stunts on the
duplicate instruction sheets. Finally, they broke in once more,
replacing the stolen master plans and substituting the stack of
altered instruction sheets for the original set.
The result was that three of the pictures were totally different.
Instead of spelling "WASHINGTON", the word "CALTECH" was flashed.
Another stunt showed the word "HUSKIES", the Washington nickname,
but spelled it backwards. And what was supposed to have been a
picture of a husky instead showed a beaver. (Both Caltech and MIT use
the beaver as a mascot. Beavers are nature's engineers.)
After the game, the Washington faculty athletic representative said,
"Some thought it ingenious; others were indignant." The Washington
student body president remarked, "No hard feelings, but at the time
it was unbelievable. We were amazed."
This is now considered a classic hack, particularly because revising
the direction sheets constituted a form of programming not unlike
computer programming.
Another classic hack:
Some MIT students once illicitly used a quantity of thermite to weld a
trolley car to its tracks. The hack was actually not dangerous, as
they did this at night to a parked trolley. It took the transit
people quite a while to figure out what was wrong with the trolley,
and even longer to figure out how to fix it. They ended up putting
jacks under the trolley and cutting the section of track on either
side of the wheel with oxyacetylene torches. Then they unbolted the
wheel, welded in a new piece of track, bolted on a new wheel, and
removed the jacks. The hackers sneaked in the next night and stole the
piece of track and wheel!
The piece of trolley track with the wheel still welded to it was later
used as the trophy at the First Annual All-Tech Sing. They carted it
in on a very heavy duty dolly up the freight elevator of the Student
Center. Six feet of rail and a trolley wheel is a *lot* of
steel.
A rather similar hack, perpetrated by a fraternity at CMU, cost their
campus its trolley service.
Though these displayed some cleverness, the side-effect of expensive
property damage was definitely an esthetic minus. The best hacks are
harmless ones.
And another:
One winter, late at night, an MIT fraternity hosed down an underpass
that is part of a commuter expressway near MIT. This produced an ice
slick that `trapped' a couple of small cars: they didn't have the
momentum or traction to climb out of the underpass. While it was
clever to apply some simple science to trap a car, it was also very
dangerous as it could have caused a collision. Therefore this was a
very poor hack overall.
And yet another:
On November 20, 1982, MIT hacked the Harvard-Yale football game. Just
after Harvard's second touchdown against Yale in the second quarter, a
small black ball popped up out of the ground at the 40-yard line, and
grew bigger, and bigger, and bigger. The letters "MIT" appeared all
over the ball. As the players and officials stood around gawking, the
ball grew to six feet in diameter and then burst with a bang and a
cloud of white smoke.
As the Boston Globe later reported, "If you want to know the truth,
M.I.T. won The Game."
The prank had taken weeks of careful planning by members of MIT's
Delta Kappa Epsilon fraternity. The device consisted of a weather
balloon, a hydraulic ram powered by Freon gas to lift it out of the
ground, and a vacuum-cleaner motor to inflate it. They made eight
separate expeditions to Harvard Stadium between 1 and 5 AM, in which
they located an unused 110-volt circuit in the stadium, and ran buried
wiring from the stadium circuit to the 40-yard line, where they buried
the balloon device. When the time came to activate the device, two
fraternity members had merely to flip a circuit breaker and push a
plug into an outlet.
This stunt had all the earmarks of a perfect hack: surprise,
publicity, the ingenious use of technology, safety, and harmlessness.
The use of manual control allowed the prank to be timed so as not to
disrupt the game (it was set off between plays, so the outcome of the
game would not be unduly affected). The perpetrators had even
thoughtfully attached a note to the balloon explaining that the device
was not dangerous and contained no explosives.
Harvard president Derek Bok commented: "They have an awful lot of
clever people down there at MIT, and they did it again." President
Paul E. Gray of MIT said, "There is absolutely no truth to the rumor
that I had anything to do with it, but I wish there were."
Finally, here is a great story about one of the classic computer hacks.
Back in the mid-1970s, several of the system support staff at Motorola
discovered a relatively simple way to crack system security on the
Xerox CP-V timesharing system. Through a simple programming strategy,
it was possible for a user program to trick the system into running a
portion of the program in `master mode' (supervisor state), in which
memory protection does not apply. The program could then poke a large
value into its `privilege level' byte (normally write-protected) and
could then proceed to bypass all levels of security within the
file-management system, patch the system monitor, and do numerous
other interesting things. In short, the barn door was wide open.
Motorola quite properly reported this problem to XEROX via an official
`level 1 SIDR' (a bug report with a perceived urgency of `needs to be
fixed yesterday'). Because the text of each SIDR was entered into a
database that could be viewed by quite a number of people, Motorola
followed the approved procedure: they simply reported the problem as
`Security SIDR', and attached all of the necessary documentation,
ways-to-reproduce, etc. separately.
Xerox sat on their thumbs...they either didn't realize the severity of
the problem, or didn't assign the necessary operating-system-staff
resources to develop and distribute an official patch.
Months passed. The Motorola guys pestered their Xerox field-support
rep, to no avail. Finally they decided to take Direct Action, to
demonstrate to Xerox management just how easily the system could be
cracked and just how thoroughly the system security systems could be
subverted.
They dug around in the operating-system listings and devised a
thoroughly devilish set of patches. These patches were then
incorporated into a pair of programs called Robin Hood and Friar Tuck.
Robin Hood and Friar Tuck were designed to run as `ghost jobs'
(daemons, in UNIX terminology); they would use the existing loophole
to subvert system security, install the necessary patches, and then
keep an eye on one another's statuses in order to keep the system
operator (in effect, the superuser) from aborting them.
So... one day, the system operator on the main CP-V software
development system in El Segundo was surprised by a number of unusual
phenomena. These included the following:
* Tape drives would rewind and dismount their tapes in the middle of a
job.
* Disk drives would seek back and forth so rapidly that they'd attempt
to walk across the floor (see {walking drives}).
* The card-punch output device would occasionally start up of itself
and punch a {lace card} (every hole punched). These would usually
jam in the punch.
* The console would print snide and insulting messages from Robin Hood
to Friar Tuck, or vice versa.
* The Xerox card reader had two output stackers; it could be
instructed to stack into A, stack into B, or stack into A unless a
card was unreadable, in which case the bad card was placed into
stacker B. One of the patches installed by the ghosts added some
code to the card-reader driver... after reading a card, it would flip
over to the opposite stacker. As a result, card decks would divide
themselves in half when they were read, leaving the operator to
recollate them manually.
There were some other effects produced, as well.
Naturally, the operator called in the operating-system developers. They
found the bandit ghost jobs running, and X'ed them... and were once
again surprised. When Robin Hood was X'ed, the following sequence of
events took place:
!X id1
id1: Friar Tuck... I am under attack! Pray save me!
id1: Off (aborted)
id2: Fear not, friend Robin! I shall rout the Sheriff of
Nottingham's men!
id1: Thank you, my good fellow!
Each ghost-job would detect the fact that the other had been killed,
and would start a new copy of the recently-slain program within a few
milliseconds. The only way to kill both ghosts was to kill them
simultaneously (very difficult) or to deliberately crash the system.
Finally, the system programmers did the latter... only to find that
the bandits appeared once again when the system rebooted! It turned
out that these two programs had patched the boot-time image (the
/vmunix file, in UNIX terms) and had added themselves to the list of
programs that were to be started at boot time...
The Robin Hood and Friar Tuck ghosts were finally eradicated when the
system staff rebooted the system from a clean boot-tape and
reinstalled the monitor. Not long thereafter, Xerox released a patch
for this problem.
It is alleged that Xerox filed a complaint with Motorola's management about
the merry-prankster actions of the two employees in question. It is
not recorded that any serious disciplinary action was taken against
either of them.