from
Jargon File (4.4.4, 14 Aug 2003)
wormhole
/werm'hohl/, n.
[from the wormhole singularities hypothesized in some versions of
General Relativity theory]
1. [n.,obs.] A location in a monitor which contains the address of a
routine, with the specific intent of making it easy to substitute a
different routine. This term is now obsolescent; modern operating
systems use clusters of wormholes extensively (for modularization of
I/O handling in particular, as in the Unix device-driver organization)
but the preferred techspeak for these clusters is `device tables',
`jump tables' or `capability tables'.
2. [Amateur Packet Radio] A network path using a commercial satellite
link to join two or more amateur VHF networks. So called because
traffic routed through a wormhole leaves and re-enters the amateur
network over great distances with usually little clue in the message
routing header as to how it got from one relay to the other. Compare
{gopher hole} (sense 2).
from
The Free On-line Dictionary of Computing (8 July 2008)
back door
wormhole
<security> (Or "{trap door}", "{wormhole}"). A hole in the
security of a system deliberately left in place by designers
or maintainers. The motivation for such holes is not always
sinister; some {operating systems}, for example, come out of
the box with privileged accounts intended for use by field
service technicians or the vendor's maintenance programmers.
See also {iron box}, {cracker}, {worm}, {logic bomb}.
Historically, back doors have often lurked in systems longer
than anyone expected or planned, and a few have become widely
known. The infamous {RTM} worm of late 1988, for example,
used a back door in the {BSD} Unix "sendmail(8)" {utility}.
{Ken Thompson}'s 1983 Turing Award lecture to the {ACM}
revealed the existence of a back door in early {Unix} versions
that may have qualified as the most fiendishly clever security
hack of all time. The C compiler contained code that would
recognise when the "login" command was being recompiled and
insert some code recognizing a password chosen by Thompson,
giving him entry to the system whether or not an account had
been created for him.
Normally such a back door could be removed by removing it from
the source code for the compiler and recompiling the compiler.
But to recompile the compiler, you have to *use* the compiler
- so Thompson also arranged that the compiler would *recognise
when it was compiling a version of itself*, and insert into
the recompiled compiler the code to insert into the recompiled
"login" the code to allow Thompson entry - and, of course, the
code to recognise itself and do the whole thing again the next
time around! And having done this once, he was then able to
recompile the compiler from the original sources; the hack
perpetuated itself invisibly, leaving the back door in place
and active but with no trace in the sources.
The talk that revealed this truly moby hack was published as
["Reflections on Trusting Trust", "Communications of the ACM
27", 8 (August 1984), pp. 761--763].
[{Jargon File}]
(1995-04-25)