DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T U

⟦75bb1df9b⟧ TextFile

    Length: 165818 (0x287ba)
    Types: TextFile
    Notes: Uncompressed file

Derivation

└─⟦4f9d7c866⟧ Bits:30007245 EUUGD6: Sikkerheds distributionen
    └─⟦3b3399db8⟧ »./worm/seely-wo.ps.Z« 
        └─⟦this⟧ 

TextFile

%!PS-Adobe-1.0
%%Creator: delwin:jon (Jon Rochlis,,E40-311,6172534101,6173217086,)
%%Title: stdin (ditroff)
%%CreationDate: Fri Dec  9 17:40:08 1988
%%EndComments
% lib/psdit.pro -- prolog for psdit (ditroff) files
% Copyright (c) 1984, 1985 Adobe Systems Incorporated. All Rights Reserved.
% last edit: shore Sat Nov 23 20:28:03 1985
% RCSID: $Header: psdit.pro,v 2.1 85/11/24 12:19:43 shore Rel $

/$DITroff 140 dict def $DITroff begin
/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def
/xi {0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto
  /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F
  /pagesave save def}def
/PB{save /psv exch def currentpoint translate 
  resolution 72 div dup neg scale 0 0 moveto}def
/PE{psv restore}def
/arctoobig 90 def /arctoosmall .05 def
/m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def
/tan{dup sin exch cos div}def
/point{resolution 72 div mul}def
/dround	{transform round exch round exch itransform}def
/xT{/devname exch def}def
/xr{/mh exch def /my exch def /resolution exch def}def
/xp{}def
/xs{docsave restore end}def
/xt{}def
/xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not
 {fonts slotno fontname findfont put fontnames slotno fontname put}if}def
/xH{/fontheight exch def F}def
/xS{/fontslant exch def F}def
/s{/fontsize exch def /fontheight fontsize def F}def
/f{/fontnum exch def F}def
/F{fontheight 0 le {/fontheight fontsize def}if
   fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore
   fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if
   makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}def
/X{exch currentpoint exch pop moveto show}def
/N{3 1 roll moveto show}def
/Y{exch currentpoint pop exch moveto show}def
/S{show}def
/ditpush{}def/ditpop{}def
/AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}def
/AN{4 2 roll moveto 0 exch ashow}def
/AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}def
/AS{0 exch ashow}def
/MX{currentpoint exch pop moveto}def
/MY{currentpoint pop exch moveto}def
/MXY{moveto}def
/cb{pop}def	% action on unknown char -- nothing for now
/n{}def/w{}def
/p{pop showpage pagesave restore /pagesave save def}def
/abspoint{currentpoint exch pop add exch currentpoint pop add exch}def
/distance{dup mul exch dup mul add sqrt}def
/dstroke{currentpoint stroke moveto}def
/Dl{2 copy gsave rlineto stroke grestore rmoveto}def
/arcellipse{/diamv exch def /diamh exch def oldmat currentmatrix pop
 currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def
 currentpoint exch rad add exch rad -180 180 arc oldmat setmatrix}def
/Dc{dup arcellipse dstroke}def
/De{arcellipse dstroke}def
/Da{/endv exch def /endh exch def /centerv exch def /centerh exch def
 /cradius centerv centerv mul centerh centerh mul add sqrt def
 /eradius endv endv mul endh endh mul add sqrt def
 /endang endv endh atan def
 /startang centerv neg centerh neg atan def
 /sweep startang endang sub dup 0 lt{360 add}if def
 sweep arctoobig gt
 {/midang startang sweep 2 div sub def /midrad cradius eradius add 2 div def
  /midh midang cos midrad mul def /midv midang sin midrad mul def
  midh neg midv neg endh endv centerh centerv midh midv Da
  currentpoint moveto Da}
 {sweep arctoosmall ge
  {/controldelt 1 sweep 2 div cos sub 3 sweep 2 div sin mul div 4 mul def
  centerv neg controldelt mul centerh controldelt mul
  endv neg controldelt mul centerh add endh add
  endh controldelt mul centerv add endv add
  centerh endh add centerv endv add rcurveto dstroke}
 {centerh endh add centerv endv add rlineto dstroke}ifelse}ifelse}def

/Barray 200 array def % 200 values in a wiggle
/D~{mark}def
/D~~{counttomark Barray exch 0 exch getinterval astore /Bcontrol exch def pop
 /Blen Bcontrol length def Blen 4 ge Blen 2 mod 0 eq and
 {Bcontrol 0 get Bcontrol 1 get abspoint /Ycont exch def /Xcont exch def
  Bcontrol 0 2 copy get 2 mul put Bcontrol 1 2 copy get 2 mul put
  Bcontrol Blen 2 sub 2 copy get 2 mul put
  Bcontrol Blen 1 sub 2 copy get 2 mul put
  /Ybi /Xbi currentpoint 3 1 roll def def 0 2 Blen 4 sub
  {/i exch def
   Bcontrol i get 3 div Bcontrol i 1 add get 3 div
   Bcontrol i get 3 mul Bcontrol i 2 add get add 6 div
   Bcontrol i 1 add get 3 mul Bcontrol i 3 add get add 6 div
   /Xbi Xcont Bcontrol i 2 add get 2 div add def
   /Ybi Ycont Bcontrol i 3 add get 2 div add def
   /Xcont Xcont Bcontrol i 2 add get add def
   /Ycont Ycont Bcontrol i 3 add get add def
   Xbi currentpoint pop sub Ybi currentpoint exch pop sub rcurveto
  }for dstroke}if}def
end
/ditstart{$DITroff begin
 /nfonts 60 def			% NFONTS makedev/ditroff dependent!
 /fonts[nfonts{0}repeat]def
 /fontnames[nfonts{()}repeat]def
/docsave save def
}def

% character outcalls
/oc {/pswid exch def /cc exch def /name exch def
   /ditwid pswid fontsize mul resolution mul 72000 div def
   /ditsiz fontsize resolution mul 72 div def
   ocprocs name known{ocprocs name get exec}{name cb}
   ifelse}def
/fractm [.65 0 0 .6 0 0] def
/fraction
 {/fden exch def /fnum exch def gsave /cf currentfont def
  cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto
  fnum show rmoveto currentfont cf setfont(\244)show setfont fden show 
  grestore ditwid 0 rmoveto} def
/oce {grestore ditwid 0 rmoveto}def
/dm {ditsiz mul}def
/ocprocs 50 dict def ocprocs begin
(14){(1)(4)fraction}def
(12){(1)(2)fraction}def
(34){(3)(4)fraction}def
(13){(1)(3)fraction}def
(23){(2)(3)fraction}def
(18){(1)(8)fraction}def
(38){(3)(8)fraction}def
(58){(5)(8)fraction}def
(78){(7)(8)fraction}def
(sr){gsave 0 .06 dm rmoveto(\326)show oce}def
(is){gsave 0 .15 dm rmoveto(\362)show oce}def
(->){gsave 0 .02 dm rmoveto(\256)show oce}def
(<-){gsave 0 .02 dm rmoveto(\254)show oce}def
(==){gsave 0 .05 dm rmoveto(\272)show oce}def
end

% an attempt at a PostScript FONT to implement ditroff special chars
% this will enable us to 
%	cache the little buggers
%	generate faster, more compact PS out of psdit
%	confuse everyone (including myself)!
50 dict dup begin
/FontType 3 def
/FontName /DIThacks def
/FontMatrix [.001 0 0 .001 0 0] def
/FontBBox [-260 -260 900 900] def% a lie but ...
/Encoding 256 array def
0 1 255{Encoding exch /.notdef put}for
Encoding
 dup 8#040/space put %space
 dup 8#110/rc put %right ceil
 dup 8#111/lt put %left  top curl
 dup 8#112/bv put %bold vert
 dup 8#113/lk put %left  mid curl
 dup 8#114/lb put %left  bot curl
 dup 8#115/rt put %right top curl
 dup 8#116/rk put %right mid curl
 dup 8#117/rb put %right bot curl
 dup 8#120/rf put %right floor
 dup 8#121/lf put %left  floor
 dup 8#122/lc put %left  ceil
 dup 8#140/sq put %square
 dup 8#141/bx put %box
 dup 8#142/ci put %circle
 dup 8#143/br put %box rule
 dup 8#144/rn put %root extender
 dup 8#145/vr put %vertical rule
 dup 8#146/ob put %outline bullet
 dup 8#147/bu put %bullet
 dup 8#150/ru put %rule
 dup 8#151/ul put %underline
 pop
/DITfd 100 dict def
/BuildChar{0 begin
 /cc exch def /fd exch def
 /charname fd /Encoding get cc get def
 /charwid fd /Metrics get charname get def
 /charproc fd /CharProcs get charname get def
 charwid 0 fd /FontBBox get aload pop setcachedevice
 2 setlinejoin 40 setlinewidth
 newpath 0 0 moveto gsave charproc grestore
 end}def
/BuildChar load 0 DITfd put
%/UniqueID 5 def
/CharProcs 50 dict def
CharProcs begin
/space{}def
/.notdef{}def
/ru{500 0 rls}def
/rn{0 840 moveto 500 0 rls}def
/vr{0 800 moveto 0 -770 rls}def
/bv{0 800 moveto 0 -1000 rls}def
/br{0 750 moveto 0 -1000 rls}def
/ul{0 -140 moveto 500 0 rls}def
/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def
/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def
/sq{80 0 rmoveto currentpoint dround newpath moveto
    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def
/bx{80 0 rmoveto currentpoint dround newpath moveto
    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def
/ci{500 360 rmoveto currentpoint newpath 333 0 360 arc
    50 setlinewidth stroke}def

/lt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def
/lb{0 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def
/rt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def
/rb{0 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def
/lk{0 800 moveto 0 300 -300 300 s4 arcto pop pop 1000 sub
    0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
/rk{0 800 moveto 0 300 s2 300 s4 arcto pop pop 1000 sub
    0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
/lf{0 800 moveto 0 -1000 rlineto s4 0 rls}def
/rf{0 800 moveto 0 -1000 rlineto s4 neg 0 rls}def
/lc{0 -200 moveto 0 1000 rlineto s4 0 rls}def
/rc{0 -200 moveto 0 1000 rlineto s4 neg 0 rls}def
end

/Metrics 50 dict def Metrics begin
/.notdef 0 def
/space 500 def
/ru 500 def
/br 0 def
/lt 416 def
/lb 416 def
/rt 416 def
/rb 416 def
/lk 416 def
/rk 416 def
/rc 416 def
/lc 416 def
/rf 416 def
/lf 416 def
/bv 416 def
/ob 350 def
/bu 350 def
/ci 750 def
/bx 750 def
/sq 750 def
/rn 500 def
/ul 500 def
/vr 0 def
end

DITfd begin
/s2 500 def /s4 250 def /s3 333 def
/a4p{arcto pop pop pop pop}def
/2cx{2 copy exch}def
/rls{rlineto stroke}def
/currx{currentpoint pop}def
/dround{transform round exch round exch itransform} def
end
end
/DIThacks exch definefont pop
ditstart
(psc)xT
576 1 1 xr
1(Times-Roman)xf 1 f
2(Times-Italic)xf 2 f
3(Times-Bold)xf 3 f
4(Times-BoldItalic)xf 4 f
5(Helvetica)xf 5 f
6(Helvetica-Bold)xf 6 f
7(Courier)xf 7 f
8(Courier-Bold)xf 8 f
9(Symbol)xf 9 f
10(DIThacks)xf 10 f
10 s
1 f
xi
%%EndProlog

%%Page: 1 1
10 s 0 xH 0 xS 1 f
3 f
12 s
2003 1356(A)N
2096(Tour)X
2328(of)X
2432(the)X
2584(Worm)X
2 f
10 s
2225 1536(Donn)N
2423(Seeley)X
1 f
1889 1671(Department)N
2288(of)X
2375(Computer)X
2715(Science)X
2126 1761(University)N
2484(of)X
2571(Utah)X
2 f
2238 1986(ABSTRACT)N
1 f
9 s
715 2147(On)N
829(the)X
943(evening)X
1197(of)X
1283(November)X
1613(2,)X
1693(1988,)X
1881(a)X
1939(self-replicating)X
2401(program)X
2671(was)X
2809(released)X
3070(upon)X
3239(the)X
3352(Internet)X
6 s
3576 2119(1)N
9 s
2147(.)Y
3661(This)X
3814(program)X
4083(\(a)X
2 f
715 2228(worm)N
1 f
(\))S
924(invaded)X
1173(VAX)X
1350(and)X
1475(Sun-3)X
1668(computers)X
1989(running)X
2234(versions)X
2494(of)X
2574(Berkeley)X
2854(U)X
7 s
(NIX)S
9 s
3005(,)X
3043(and)X
3167(used)X
3319(their)X
3471(resources)X
3763(to)X
3839(attack)X
4031(still)X
715 2323(more)N
883(computers)X
6 s
1183 2295(2)N
9 s
2323(.)Y
1263(Within)X
1483(the)X
1590(space)X
1769(of)X
1848(hours)X
2027(this)X
2150(program)X
2413(had)X
2536(spread)X
2743(across)X
2942(the)X
3049(U.S.,)X
3214(infecting)X
3489(hundreds)X
3772(or)X
3851(thousands)X
715 2404(of)N
797(computers)X
1118(and)X
1243(making)X
1480(many)X
1661(of)X
1742(them)X
1907(unusable)X
2184(due)X
2309(to)X
2386(the)X
2495(burden)X
2716(of)X
2797(its)X
2886(activity.)X
3159(This)X
3308(paper)X
3489(provides)X
3758(a)X
3811(chronology)X
715 2485(for)N
824(the)X
937(outbreak)X
1213(and)X
1341(presents)X
1601(a)X
1657(detailed)X
1909(description)X
2253(of)X
2337(the)X
2449(internals)X
2721(of)X
2805(the)X
2917(worm,)X
3127(based)X
3315(on)X
3411(a)X
3467(C)X
3539(version)X
3775(produced)X
4067(by)X
715 2566(decompiling.)N
3 f
10 s
555 2722(1.)N
655(Introduction)X
1 f
9 s
715 2836(There)N
912(is)X
989(a)X
1050(\256ne)X
1187(line)X
1324(between)X
1593(helping)X
1838(administrators)X
2279(protect)X
2508(their)X
2669(systems)X
2926(and)X
3059(providing)X
3368(a)X
3429(cookbook)X
3741(for)X
3853(bad)X
3985(guys.)X
715 2917([Grampp)N
993(and)X
1115(Morris,)X
1347(``U)X
7 s
(NIX)S
9 s
1564(Operating)X
1870(System)X
2100(Security''])X
10 s
755 3073(November)N
1114(3,)X
1194(1988)X
1374(is)X
1447(already)X
1704(coming)X
1964(to)X
2046(be)X
2142(known)X
2380(as)X
2467(Black)X
2674(Thursday.)X
3037(System)X
3292(administrators)X
3770(around)X
4013(the)X
555 3163(country)N
820(came)X
1010(to)X
1092(work)X
1277(on)X
1377(that)X
1517(day)X
1653(and)X
1789(discovered)X
2157(that)X
2297(their)X
2464(networks)X
2778(of)X
2865(computers)X
3219(were)X
3396(laboring)X
3683(under)X
3886(a)X
3942(huge)X
4118(load.)X
555 3253(If)N
629(they)X
787(were)X
964(able)X
1118(to)X
1200(log)X
1322(in)X
1404(and)X
1540(generate)X
1833(a)X
1889(system)X
2131(status)X
2333(listing,)X
2572(they)X
2730(saw)X
2875(what)X
3051(appeared)X
3362(to)X
3444(be)X
3540(dozens)X
3783(or)X
3870(hundreds)X
4184(of)X
555 3343(``shell'')N
834(\(command)X
1197(interpreter\))X
1579(processes.)X
1947(If)X
2021(they)X
2179(tried)X
2346(to)X
2428(kill)X
2554(the)X
2672(processes,)X
3020(they)X
3178(found)X
3385(that)X
3525(new)X
3679(processes)X
4007(appeared)X
555 3433(faster)N
754(than)X
912(they)X
1070(could)X
1268(kill)X
1394(them.)X
1614(Rebooting)X
1967(the)X
2085(computer)X
2408(seemed)X
2669(to)X
2751(have)X
2923(no)X
3023(effect\320within)X
3511(minutes)X
3784(after)X
3952(starting)X
4212(up)X
555 3523(again,)N
769(the)X
887(machine)X
1179(was)X
1324(overloaded)X
1701(by)X
1801(these)X
1986(mysterious)X
2357(processes.)X
755 3646(These)N
967(systems)X
1240(had)X
1376(been)X
1548(invaded)X
1822(by)X
1922(a)X
2 f
1978(worm)X
1 f
2160(.)X
2220(A)X
2298(worm)X
2505(is)X
2578(a)X
2634(program)X
2926(that)X
3066(propagates)X
3434(itself)X
3614(across)X
3835(a)X
3891(network,)X
555 3736(using)N
748(resources)X
1072(on)X
1172(one)X
1308(machine)X
1600(to)X
1682(attack)X
1894(other)X
2079(machines.)X
2442(\(A)X
2547(worm)X
2754(is)X
2827(not)X
2949(quite)X
3129(the)X
3247(same)X
3432(as)X
3519(a)X
2 f
3575(virus)X
1 f
(,)S
3775(which)X
3991(is)X
4064(a)X
4120(pro-)X
555 3826(gram)N
740(fragment)X
1050(that)X
1190(inserts)X
1419(itself)X
1599(into)X
1743(other)X
1928(programs.\))X
2298(The)X
2443(worm)X
2650(had)X
2786(taken)X
2980(advantage)X
3326(of)X
3413(lapses)X
3629(in)X
3711(security)X
3985(on)X
4085(sys-)X
555 3916(tems)N
726(that)X
866(were)X
1043(running)X
1312(4.2)X
1432(or)X
1519(4.3)X
1639(BSD)X
1814(U)X
8 s
1872(NIX)X
10 s
2005(or)X
2092(derivatives)X
2464(like)X
2604(SunOS.)X
2890(These)X
3102(lapses)X
3318(allowed)X
3592(it)X
3656(to)X
3738(connect)X
4008(to)X
555 4006(machines)N
878(across)X
1099(a)X
1155(network,)X
1458(bypass)X
1696(their)X
1863(login)X
2047(authentication,)X
2541(copy)X
2717(itself)X
2897(and)X
3033(then)X
3191(proceed)X
3466(to)X
3548(attack)X
3760(still)X
3899(more)X
555 4096(machines.)N
918(The)X
1063(massive)X
1341(system)X
1583(load)X
1741(was)X
1886(generated)X
2219(by)X
2319(multitudes)X
2676(of)X
2763(worms)X
3001(trying)X
3212(to)X
3294(propagate)X
3631(the)X
3749(epidemic.)X
755 4219(The)N
900(Internet)X
1170(had)X
1306(never)X
1505(been)X
1677(attacked)X
1965(in)X
2047(this)X
2182(way)X
2336(before,)X
2582(although)X
2882(there)X
3063(had)X
3199(been)X
3371(plenty)X
3591(of)X
3678(speculation)X
4063(that)X
4203(an)X
555 4309(attack)N
767(was)X
912(in)X
994(store.)X
1210(Most)X
1394(system)X
1636(administrators)X
2114(were)X
2291(unfamiliar)X
2645(with)X
2807(the)X
2925(concept)X
3195(of)X
3282(worms)X
3520(\(as)X
3634(opposed)X
3921(to)X
4003(viruses,)X
555 4399(which)N
771(are)X
890(a)X
946(major)X
1153(af\257iction)X
1462(of)X
1549(the)X
1667(PC)X
1784(world\))X
2018(and)X
2154(it)X
2218(took)X
2380(some)X
2569(time)X
2731(before)X
2957(they)X
3115(were)X
3292(able)X
3446(to)X
3528(establish)X
3828(what)X
4004(was)X
555 4489(going)N
757(on)X
857(and)X
993(how)X
1151(to)X
1233(deal)X
1387(with)X
1549(it.)X
1653(This)X
1815(paper)X
2014(is)X
2087(intended)X
2383(to)X
2465(let)X
2565(people)X
2799(know)X
2997(exactly)X
3249(what)X
3425(happened)X
3753(and)X
3889(how)X
4047(it)X
4111(came)X
555 4579(about,)N
773(so)X
864(that)X
1004(they)X
1162(will)X
1306(be)X
1402(better)X
1605(prepared)X
1907(when)X
2101(it)X
2165(happens)X
2448(the)X
2566(next)X
2724(time.)X
2926(The)X
3071(behavior)X
3372(of)X
3459(the)X
3577(worm)X
3784(will)X
3928(be)X
4024(exam-)X
555 4669(ined)N
713(in)X
795(detail,)X
1013(both)X
1175(to)X
1257(show)X
1446(exactly)X
1698(what)X
1874(it)X
1938(did)X
2060(and)X
2196(didn't)X
2407(do,)X
2527(and)X
2663(to)X
2745(show)X
2934(the)X
3052(dangers)X
3322(of)X
3409(future)X
3621(worms.)X
3899(The)X
4044(epi-)X
555 4759(graph)N
758(above)X
970(is)X
1043(now)X
1201(ironic,)X
1428(for)X
1542(the)X
1660(author)X
1885(of)X
1972(the)X
2090(worm)X
2297(used)X
2464(information)X
2862(in)X
2944(that)X
3084(paper)X
3283(to)X
3365(attack)X
3577(systems.)X
3890(Since)X
4088(the)X
555 4849(information)N
953(is)X
1026(now)X
1184(well)X
1342(known,)X
1600(by)X
1700(virtue)X
1907(of)X
1994(the)X
2112(fact)X
2253(that)X
2393(thousands)X
2733(of)X
2820(computers)X
3174(now)X
3332(have)X
3504(copies)X
3729(of)X
3816(the)X
3934(worm,)X
4161(it)X
555 4939(seems)N
771(unlikely)X
1053(that)X
1193(this)X
1328(paper)X
1527(can)X
1659(do)X
1759(similar)X
2001(damage,)X
2291(but)X
2413(it)X
2477(is)X
2550(de\256nitely)X
2872(a)X
2928(troubling)X
3241(thought.)X
3545(Opinions)X
3858(on)X
3958(this)X
4093(and)X
555 5029(other)N
740(matters)X
996(will)X
1140(be)X
1236(offered)X
1489(below.)X
8 s
10 f
555 5275(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
5 s
1 f
727 5353(1)N
8 s
763 5378(The)N
878(Internet)X
1092(is)X
1151(a)X
1195(logical)X
1385(network)X
1610(made)X
1764(up)X
1844(of)X
1913(many)X
2071(physical)X
2300(networks,)X
2566(all)X
2646(running)X
2861(the)X
2955(IP)X
3028(class)X
3168(of)X
3237(network)X
3462(protocols.)X
5 s
727 5456(2)N
8 s
771 5481(VAX)N
933(and)X
1049(Sun-3)X
1226(are)X
1327(models)X
1536(of)X
1613(computers)X
1903(built)X
2045(by)X
2133(Digital)X
2335(Equipment)X
2640(Corp.)X
2808(and)X
2924(Sun)X
3048(Microsystems)X
3431(Inc.,)X
3568(respectively.)X
3932(U)X
6 s
3978(NIX)X
8 s
4088(is)X
4155(a)X
4207(Re-)X
555 5553(gistered)N
773(Bell)X
896(of)X
965(AT&T)X
1155(Trademark)X
1450(Laboratories.)X

2 p
%%Page: 2 2
8 s 0 xH 0 xS 1 f
3 f
10 s
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(2)X
555 762(2.)N
655(Chronology)X
1 f
9 s
715 876(Remember,)N
1074(when)X
1255(you)X
1388(connect)X
1637(with)X
1790(another)X
2031(computer,)X
2346(you're)X
2559(connecting)X
2900(to)X
2981(every)X
3166(computer)X
3463(that)X
3595(computer)X
3891(has)X
4011(con-)X
715 957(nected)N
921(to.)X
1031([Dennis)X
1277(Miller,)X
1493(on)X
1583(NBC's)X
2 f
1801(Saturday)X
2079(Night)X
2257(Live)X
1 f
2381(])X
715 1078(Here)N
877(is)X
947(the)X
1057(gist)X
1183(of)X
1265(a)X
1319(message)X
1585(I)X
1631(got:)X
1764(I'm)X
1889(sorry.)X
2094([Andy)X
2299(Sudduth,)X
2578(in)X
2655(an)X
2744(anonymous)X
3097(posting)X
3330(to)X
3407(the)X
3516(TCP-IP)X
3757(list)X
3866(on)X
3959(behalf)X
715 1159(of)N
793(the)X
899(author)X
1101(of)X
1179(the)X
1285(worm,)X
1489(11/3/88])X
10 s
755 1315(Many)N
962(details)X
1191(of)X
1278(the)X
1396(chronology)X
1781(of)X
1868(the)X
1986(attack)X
2198(are)X
2317(not)X
2439(yet)X
2557(available.)X
2907(The)X
3052(following)X
3383(list)X
3500(represents)X
3846(dates)X
4031(and)X
555 1405(times)N
748(that)X
888(we)X
1002(are)X
1121(currently)X
1431(aware)X
1644(of.)X
1771(Times)X
1991(have)X
2163(all)X
2263(been)X
2435(rendered)X
2737(in)X
2819(Paci\256c)X
3057(Standard)X
3362(Time)X
3551(for)X
3665(convenience.)X
555 1528(11/2:)N
739(1800)X
919(\(approx.\))X
999 1618(This)N
1161(date)X
1315(and)X
1451(time)X
1613(were)X
1790(seen)X
1953(on)X
2053(worm)X
2260(\256les)X
2413(found)X
2620(on)X
2 f
2720(prep.ai.mit.edu)X
1 f
3207(,)X
3247(a)X
3303(VAX)X
3497(11/750)X
3739(at)X
3817(the)X
3935(MIT)X
999 1708(Arti\256cial)N
1308(Intelligence)X
1707(Laboratory.)X
2124(The)X
2269(\256les)X
2422(were)X
2599(removed)X
2900(later,)X
3083(and)X
3219(the)X
3337(precise)X
3585(time)X
3747(was)X
3892(lost.)X
4067(Sys-)X
999 1798(tem)N
1139(logging)X
1403(on)X
2 f
1503(prep)X
1 f
1670(had)X
1806(been)X
1978(broken)X
2221(for)X
2335(two)X
2475(weeks.)X
2736(The)X
2881(system)X
3123(doesn't)X
3379(run)X
3506(accounting)X
3878(and)X
4014(the)X
4132(disks)X
999 1888(aren't)N
1207(backed)X
1455(up)X
1555(to)X
1637(tape:)X
1813(a)X
1869(perfect)X
2113(target.)X
2356(A)X
2434(number)X
2699(of)X
2786(``tourist'')X
3118(users)X
3303(\(individuals)X
3705(using)X
3898(public)X
999 1978(accounts\))N
1327(were)X
1504(reported)X
1792(to)X
1874(be)X
1970(active)X
2182(that)X
2322(evening.)X
2636(These)X
2848(users)X
3033(would)X
3253(have)X
3425(appeared)X
3736(in)X
3818(the)X
3936(session)X
999 2068(logging,)N
1283(but)X
1405(see)X
1528(below.)X
555 2191(11/2:)N
739(1824)X
999(First)X
1165(known)X
1403(West)X
1588(Coast)X
1790(infection:)X
2 f
2117(rand.org)X
1 f
2419(at)X
2497(Rand)X
2686(Corp.)X
2886(in)X
2968(Santa)X
3166(Monica.)X
555 2314(11/2:)N
739(1904)X
2 f
999(csgw.berkeley.edu)X
1 f
1608(is)X
1681(infected.)X
2000(This)X
2162(machine)X
2454(is)X
2527(a)X
2583(major)X
2790(network)X
3073(gateway)X
3361(at)X
3439(UC)X
3570(Berkeley.)X
3920(Mike)X
999 2404(Karels)N
1229(and)X
1365(Phil)X
1513(Lapsley)X
1787(discover)X
2079(the)X
2197(infection)X
2502(shortly)X
2744(afterward.)X
555 2527(11/2:)N
739(1954)X
2 f
999(mimsy.umd.edu)X
1 f
1518(is)X
1591(attacked)X
1879(through)X
2148(its)X
2 f
2243(\256nger)X
1 f
2450(server.)X
2707(This)X
2869(machine)X
3161(is)X
3234(at)X
3312(the)X
3430(University)X
3788(of)X
3875(Maryland)X
999 2617(College)N
1268(Park)X
1435(Computer)X
1775(Science)X
2045(Department.)X
555 2740(11/2:)N
739(2000)X
919(\(approx.\))X
999 2830(Suns)N
1174(at)X
1252(the)X
1370(MIT)X
1537(AI)X
1642(Lab)X
1787(are)X
1906(attacked.)X
555 2953(11/2:)N
739(2028)X
999(First)X
2 f
1165(sendmail)X
1 f
1474(attack)X
1686(on)X
1786(mimsy.)X
555 3076(11/2:)N
739(2040)X
999(Berkeley)X
1309(staff)X
1472(\256gure)X
1679(out)X
1801(the)X
2 f
1919(sendmail)X
1 f
2228(and)X
2 f
2364(rsh)X
1 f
2486(attacks,)X
2749(notice)X
2 f
2965(telnet)X
1 f
3163(and)X
2 f
3299(\256nger)X
1 f
3506(peculiarities,)X
3938(and)X
4074(start)X
999 3166(shutting)N
1276(these)X
1461(services)X
1740(off.)X
555 3289(11/2:)N
739(2049)X
2 f
999(cs.utah.edu)X
1 f
1384(is)X
1457(infected.)X
1776(This)X
1938(VAX)X
2132(8600)X
2312(is)X
2385(the)X
2503(central)X
2742(Computer)X
3082(Science)X
3352(Department)X
3751(machine)X
4043(at)X
4121(the)X
999 3379(University)N
1357(of)X
1444(Utah.)X
1660(The)X
1805(next)X
1963(several)X
2211(entries)X
2445(follow)X
2674(documented)X
3086(events)X
3311(at)X
3389(Utah)X
3565(and)X
3701(are)X
3820(representative)X
999 3469(of)N
1086(other)X
1271(infections)X
1607(around)X
1850(the)X
1968(country.)X
555 3592(11/2:)N
739(2109)X
999(First)X
2 f
1165(sendmail)X
1 f
1474(attack)X
1686(at)X
2 f
1764(cs.utah.edu)X
1 f
2129(.)X
555 3715(11/2:)N
739(2121)X
999(The)X
1144(load)X
1302(average)X
1573(on)X
2 f
1673(cs.utah.edu)X
1 f
2058(reaches)X
2320(5.)X
2420(The)X
2565(``load)X
2777 0.3906(average'')AX
3102(is)X
3175(a)X
3231(system-generated)X
3813(value)X
4007(that)X
999 3805(represents)N
1345(the)X
1463(average)X
1734(number)X
1999(of)X
2086(jobs)X
2239(in)X
2321(the)X
2439(run)X
2566(queue)X
2778(over)X
2941(the)X
3059(last)X
3190(minute;)X
3454(a)X
3510(load)X
3668(of)X
3755(5)X
3815(on)X
3915(a)X
3971(VAX)X
999 3895(8600)N
1179(noticeably)X
1533(degrades)X
1839(response)X
2140(times,)X
2353(while)X
2551(a)X
2607(load)X
2765(over)X
2928(20)X
3028(is)X
3101(a)X
3157(drastic)X
3391(degradation.)X
3830(At)X
3930(9)X
3990(PM,)X
4145(the)X
999 3985(load)N
1157(is)X
1230(typically)X
1530(between)X
1818(0.5)X
1938(and)X
2074(2.)X
555 4108(11/2:)N
739(2141)X
999(The)X
1144(load)X
1302(average)X
1573(on)X
2 f
1673(cs.utah.edu)X
1 f
2058(reaches)X
2320(7.)X
555 4231(11/2:)N
739(2201)X
999(The)X
1144(load)X
1302(average)X
1573(on)X
2 f
1673(cs.utah.edu)X
1 f
2058(reaches)X
2320(16.)X
555 4354(11/2:)N
739(2206)X
999(The)X
1144(maximum)X
1488(number)X
1753(of)X
1840(distinct)X
2095(runnable)X
2396(processes)X
2724(\(100\))X
2918(is)X
2991(reached)X
3262(on)X
2 f
3362(cs.utah.edu)X
1 f
3727(;)X
3769(the)X
3887(system)X
4129(is)X
999 4444(unusable.)N
555 4567(11/2:)N
739(2220)X
999(Jeff)X
1140(Forys)X
1342(at)X
1420(Utah)X
1596(kills)X
1753(off)X
1867(worms)X
2105(on)X
2 f
2205(cs.utah.edu)X
1 f
2570(.)X
2630(Utah)X
2806(Sun)X
2950(clusters)X
3215(are)X
3334(infected.)X
555 4690(11/2:)N
739(2241)X
999(Re-infestation)X
1473(causes)X
1703(the)X
1821(load)X
1979(average)X
2250(to)X
2332(reach)X
2527(27)X
2627(on)X
2 f
2727(cs.utah.edu)X
1 f
3092(.)X
555 4813(11/2:)N
739(2249)X
999(Forys)X
1201(shuts)X
1385(down)X
2 f
1583(cs.utah.edu)X
1 f
1948(.)X
555 4936(11/3:)N
739(2321)X
999(Re-infestation)X
1473(causes)X
1703(the)X
1821(load)X
1979(average)X
2250(to)X
2332(reach)X
2527(37)X
2627(on)X
2 f
2727(cs.utah.edu)X
1 f
3092(,)X
3132(despite)X
3379(continuous)X
3750(efforts)X
3980(by)X
4080(Forys)X
999 5026(to)N
1081(kill)X
1207(worms.)X
555 5149(11/2:)N
739(2328)X
999(Peter)X
1184(Yee)X
1334(at)X
1412(NASA)X
1650(Ames)X
1857(Research)X
2172(Center)X
2406(posts)X
2590(a)X
2646(warning)X
2929(to)X
3011(the)X
3129(TCP-IP)X
3393(mailing)X
3657(list:)X
3796(``We)X
3982(are)X
999 5239(currently)N
1309(under)X
1512(attack)X
1724(from)X
1900(an)X
1996(Internet)X
2266(VIRUS.)X
2566(It)X
2635(has)X
2762(hit)X
2866(UC)X
2997(Berkeley,)X
3327(UC)X
3458(San)X
3598(Diego,)X
3834(Lawrence)X
999 5329(Livermore,)N
1378(Stanford,)X
1694(and)X
1830(NASA)X
2068(Ames.'')X
2349(He)X
2463(suggests)X
2754(turning)X
3005(off)X
2 f
3119(telnet)X
1 f
3297(,)X
2 f
3337(ftp)X
1 f
3421(,)X
2 f
3461(\256nger)X
1 f
3648(,)X
2 f
3688(rsh)X
1 f
3810(and)X
3946(SMTP)X
4174(ser-)X
999 5419(vices.)N
1224(He)X
1338(does)X
1505(not)X
1627(mention)X
2 f
1909(rexec)X
1 f
2084(.)X
2144(Yee)X
2294(is)X
2367(actually)X
2641(at)X
2719(Berkeley)X
3029(working)X
3316(with)X
3478(Keith)X
3676(Bostic,)X
3920(Mike)X
999 5509(Karels)N
1229(and)X
1365(Phil)X
1513(Lapsley.)X
555 5632(11/3:)N
739(0034)X
999(At)X
1099(another's)X
1418(prompting,)X
1791(Andy)X
1989(Sudduth)X
2275(of)X
2362(Harvard)X
2646(anonymously)X
3097(posts)X
3281(a)X
3337(warning)X
3620(to)X
3702(the)X
3820(TCP-IP)X
4084(list:)X
999 5722(``There)N
1261(may)X
1419(be)X
1515(a)X
1571(virus)X
1751(loose)X
1940(on)X
2040(the)X
2158(internet.'')X
2497(This)X
2659(is)X
2732(the)X
2850(\256rst)X
2994(message)X
3286(that)X
3426(\(brie\257y\))X
3709(describes)X
4028(how)X
4186(the)X

3 p
%%Page: 3 3
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(3)X
2 f
999 762(\256nger)N
1 f
1206(attack)X
1418(works,)X
1654(describes)X
1973(how)X
2131(to)X
2213(defeat)X
2430(the)X
2548(SMTP)X
2776(attack)X
2988(by)X
3088(rebuilding)X
2 f
3437(sendmail)X
1 f
3726(,)X
3766(and)X
3902(explicitly)X
999 852(mentions)N
1312(the)X
2 f
1430(rexec)X
1 f
1625(attack.)X
1877(Unfortunately)X
2347(Sudduth's)X
2691(message)X
2983(is)X
3056(blocked)X
3330(at)X
2 f
3408(relay.cs.net)X
1 f
3798(while)X
3996(that)X
4136(gate-)X
999 942(way)N
1153(is)X
1226(shut)X
1379(down)X
1577(to)X
1659(combat)X
1915(the)X
2033(worm,)X
2260(and)X
2396(it)X
2460(does)X
2627(not)X
2749(get)X
2867(delivered)X
3186(for)X
3300(almost)X
3533(two)X
3673(days.)X
3880(Sudduth)X
999 1032(acknowledges)N
1474(authorship)X
1832(of)X
1919(the)X
2037(message)X
2329(in)X
2411(a)X
2467(subsequent)X
2843(message)X
3135(to)X
3217(TCP-IP)X
3481(on)X
3581(Nov.)X
3759(5.)X
555 1155(11/3:)N
739(0254)X
999(Keith)X
1197(Bostic)X
1421(sends)X
1619(a)X
1675(\256x)X
1779(for)X
2 f
1893(sendmail)X
1 f
2202(to)X
2284(the)X
2402(newsgroup)X
2774(comp.bugs.4bsd.ucb-\256xes)X
3628(and)X
3764(to)X
3846(the)X
3964(TCP-IP)X
999 1245(mailing)N
1263(list.)X
1420(These)X
1632(\256xes)X
1803(\(and)X
1966(later)X
2129(ones\))X
2323(are)X
2442(also)X
2591(mailed)X
2829(directly)X
3094(to)X
3176(important)X
3507(system)X
3749(administrators)X
999 1335(around)N
1242(the)X
1360(country.)X
555 1458(11/3:)N
739(early)X
920(morning)X
999 1548(The)N
2 f
1144(wtmp)X
1 f
1337(session)X
1588(log)X
1710(is)X
1783(mysteriously)X
2216(removed)X
2517(on)X
2 f
2617(prep.ai.mit.edu)X
1 f
3104(.)X
555 1671(11/3:)N
739(0507)X
999(Edward)X
1269(Wang)X
1481(at)X
1559(Berkeley)X
1869(\256gures)X
2107(out)X
2229(and)X
2365(reports)X
2608(the)X
2 f
2726(\256nger)X
1 f
2933(attack,)X
3165(but)X
3287(his)X
3400(message)X
3692(doesn't)X
3948(come)X
4142(to)X
999 1761(Mike)N
1188(Karels')X
1445(attention)X
1745(for)X
1859(12)X
1959(hours.)X
555 1884(11/3:)N
739(0900)X
999(The)X
1144(annual)X
1378(Berkeley)X
1688(Unix)X
1868(Workshop)X
2222(commences)X
2621(at)X
2699(UC)X
2830(Berkeley.)X
3180(40)X
3280(or)X
3367(so)X
3458(important)X
3789(system)X
999 1974(administrators)N
1477(and)X
1613(hackers)X
1879(are)X
1998(in)X
2080(town)X
2260(to)X
2342(attend,)X
2578(while)X
2776(disaster)X
3041(erupts)X
3257(at)X
3335(home.)X
3573(Several)X
3834(people)X
4068(who)X
999 2064(had)N
1135(planned)X
1409(to)X
1491(\257y)X
1595(in)X
1677(on)X
1777(Thursday)X
2100(morning)X
2391(are)X
2510(trapped)X
2771(by)X
2871(the)X
2989(crisis.)X
3218(Keith)X
3416(Bostic)X
3640(spends)X
3878(much)X
4076(of)X
4163(the)X
999 2154(day)N
1135(on)X
1235(the)X
1353(phone)X
1569(at)X
1647(the)X
1765(Computer)X
2105(Systems)X
2391(Research)X
2706(Group)X
2931(of\256ces)X
3165(answering)X
3515(calls)X
3682(from)X
3858(panicked)X
4168(sys-)X
999 2244(tem)N
1139(administrators)X
1617(from)X
1793(around)X
2036(the)X
2154(country.)X
555 2367(11/3:)N
739(1500)X
919(\(approx.\))X
999 2457(The)N
1144(team)X
1320(at)X
1398(MIT)X
1565(Athena)X
1817(calls)X
1984(Berkeley)X
2294(with)X
2456(an)X
2552(example)X
2844(of)X
2931(how)X
3089(the)X
2 f
3207(\256nger)X
1 f
3414(server)X
3631(bug)X
3771(works.)X
555 2580(11/3:)N
739(1626)X
999(Dave)X
1189(Pare)X
1352(arrives)X
1591(at)X
1669(Berkeley)X
1979(CSRG)X
2207(of\256ces;)X
2463(disassembly)X
2874(and)X
3010(decompiling)X
3430(start)X
3588(shortly)X
3830(afterward)X
999 2670(using)N
1192(Pare's)X
1413(special)X
1656(tools.)X
555 2793(11/3:)N
739(1800)X
919(\(approx.\))X
999 2883(The)N
1144(Berkeley)X
1454(group)X
1661(sends)X
1859(out)X
1981(for)X
2095(calzones.)X
2432(People)X
2670(arrive)X
2878(and)X
3014(leave;)X
3226(the)X
3344(of\256ces)X
3578(are)X
3697(crowded,)X
4014(there's)X
999 2973(plenty)N
1219(of)X
1306(excitement.)X
1718(Parallel)X
1983(work)X
2168(is)X
2241(in)X
2323(progress)X
2615(at)X
2693(MIT)X
2860(Athena;)X
3134(the)X
3252(two)X
3392(groups)X
3630(swap)X
3815(code.)X
555 3096(11/3:)N
739(1918)X
999(Keith)X
1197(Bostic)X
1421(posts)X
1605(a)X
1661(\256x)X
1765(for)X
1879(the)X
2 f
1997(\256nger)X
1 f
2204(server.)X
555 3219(11/4:)N
739(0600)X
999(Members)X
1322(of)X
1409(the)X
1527(Berkeley)X
1837(team,)X
2033(with)X
2195(the)X
2313(worm)X
2520(almost)X
2753(completely)X
3129(disassembled)X
3576(and)X
3712(largely)X
3955(decom-)X
999 3309(piled,)N
1199(\256nally)X
1423(take)X
1577(off)X
1691(for)X
1805(a)X
1861(couple)X
2095(hours')X
2320(sleep)X
2505(before)X
2731(returning)X
3045(to)X
3127(the)X
3245(workshop.)X
555 3432(11/4:)N
739(1236)X
999(Theodore)X
1327(Ts'o)X
1494(of)X
1581(Project)X
1828(Athena)X
2080(at)X
2158(MIT)X
2325(publicly)X
2607(announces)X
2966(that)X
3106(MIT)X
3273(and)X
3409(Berkeley)X
3719(have)X
3891(completely)X
999 3522(disassembled)N
1446(the)X
1564(worm.)X
555 3645(11/4:)N
739(1700)X
919(\(approx.\))X
999 3735(A)N
1077(short)X
1257(presentation)X
1669(on)X
1769(the)X
1887(worm)X
2094(is)X
2167(made)X
2361(at)X
2439(the)X
2557(end)X
2693(of)X
2780(the)X
2898(Berkeley)X
3208(U)X
8 s
3266(NIX)X
10 s
3399(Workshop.)X
555 3858(11/8:)N
999(National)X
1295(Computer)X
1635(Security)X
1922(Center)X
2156(meeting)X
2434(to)X
2516(discuss)X
2767(the)X
2885(worm.)X
3132(There)X
3340(are)X
3459(about)X
3657(50)X
3757(attendees.)X
555 3981(11/11:)N
779(0038)X
999(Fully)X
1187(decompiled)X
1581(and)X
1717(commented)X
2111(worm)X
2318(source)X
2548(is)X
2621(installed)X
2912(at)X
2990(Berkeley.)X
3 f
555 4167(3.)N
655(Overview)X
1 f
755 4290(What)N
949(exactly)X
1201(did)X
1323(the)X
1441(worm)X
1648(do)X
1748(that)X
1888(led)X
2006(it)X
2070(to)X
2152(cause)X
2351(an)X
2447(epidemic?)X
2817(The)X
2962(worm)X
3169(consists)X
3442(of)X
3529(a)X
3585(99-line)X
3832(bootstrap)X
4150(pro-)X
555 4380(gram)N
740(written)X
987(in)X
1069(the)X
1187(C)X
1260(language,)X
1590(plus)X
1743(a)X
1799(large)X
1980(relocatable)X
2353(object)X
2569(\256le)X
2691(that)X
2831(comes)X
3056(in)X
3138(VAX)X
3332(and)X
3468(Sun-3)X
3679(\257avors.)X
3957(Internal)X
555 4470(evidence)N
861(showed)X
1126(that)X
1266(the)X
1384(object)X
1600(\256le)X
1722(was)X
1867(generated)X
2200(from)X
2376(C)X
2449(sources,)X
2730(so)X
2821(it)X
2885(was)X
3030(natural)X
3273(to)X
3355(decompile)X
3709(the)X
3827(binary)X
555 4560(machine)N
847(language)X
1157(into)X
1301(C;)X
1396(we)X
1510(now)X
1668(have)X
1840(over)X
2003(3200)X
2183(lines)X
2354(of)X
2441(commented)X
2835(C)X
2908(code)X
3080(which)X
3296(recompiles)X
3668(and)X
3804(is)X
3877(mostly)X
4114(com-)X
555 4650(plete.)N
771(We)X
903(shall)X
1074(start)X
1232(the)X
1350(tour)X
1499(of)X
1586(the)X
1704(worm)X
1911(with)X
2073(a)X
2129(quick)X
2327(overview)X
2646(of)X
2733(the)X
2851(basic)X
3036(goals)X
3225(of)X
3312(the)X
3430(worm,)X
3657(followed)X
3962(by)X
4062(discus-)X
555 4740(sion)N
708(in)X
790(depth)X
988(of)X
1075(the)X
1193(worm's)X
1458(various)X
1714(behaviors)X
2046(as)X
2133(revealed)X
2426(by)X
2526(decompilation.)X
755 4863(The)N
900(activities)X
1209(of)X
1296(the)X
1414(worm)X
1621(break)X
1820(down)X
2018(into)X
2162(the)X
2280(categories)X
2626(of)X
2713(attack)X
2925(and)X
3061(defense.)X
3367(Attack)X
3601(consists)X
3874(of)X
3961(locating)X
555 4953(hosts)N
739(\(and)X
902(accounts\))X
1230(to)X
1312(penetrate,)X
1647(then)X
1805(exploiting)X
2149(security)X
2423(holes)X
2612(on)X
2712(remote)X
2955(systems)X
3228(to)X
3310(pass)X
3468(across)X
3689(a)X
3745(copy)X
3921(of)X
4008(the)X
555 5043(worm)N
762(and)X
898(run)X
1025(it.)X
1129(The)X
1274(worm)X
1481(obtains)X
1732(host)X
1885(addresses)X
2213(by)X
2313(examining)X
2671(the)X
2789(system)X
3031(tables)X
2 f
3238(/etc/hosts.equiv)X
1 f
3754(and)X
2 f
3890(/.rhosts)X
1 f
4127(,)X
555 5133(user)N
709(\256les)X
862(like)X
2 f
1002(.forward)X
1 f
1299(and)X
2 f
1435(.rhosts)X
1 f
1650(,)X
1690(dynamic)X
1986(routing)X
2237(information)X
2635(produced)X
2954(by)X
3054(the)X
2 f
3172(netstat)X
1 f
3405(program,)X
3717(and)X
3853(\256nally)X
4077(ran-)X
555 5223(domly)N
779(generated)X
1112(host)X
1265(addresses)X
1593(on)X
1693(local)X
1869(networks.)X
2223(It)X
2292(ranks)X
2486(these)X
2671(by)X
2771(order)X
2961(of)X
3048 0.3625(preference,)AX
3429(trying)X
3640(a)X
3696(\256le)X
3818(like)X
2 f
555 5313(/etc/hosts.equiv)N
1 f
1071(\256rst)X
1215(because)X
1490(it)X
1554(contains)X
1841(names)X
2066(of)X
2153(local)X
2329(machines)X
2652(that)X
2792(are)X
2911(likely)X
3113(to)X
3195(permit)X
3424(unauthenticated)X
3952(connec-)X
555 5403(tions.)N
770(Penetration)X
1155(of)X
1242(a)X
1298(remote)X
1541(system)X
1783(can)X
1915(be)X
2011(accomplished)X
2472(in)X
2554(any)X
2690(of)X
2777(three)X
2958(ways.)X
3183(The)X
3328(worm)X
3535(can)X
3667(take)X
3821(advantage)X
4167(of)X
4254(a)X
555 5493(bug)N
695(in)X
777(the)X
2 f
895(\256nger)X
1 f
1102(server)X
1319(that)X
1459(allows)X
1688(it)X
1752(to)X
1834(download)X
2170(code)X
2342(in)X
2424(place)X
2614(of)X
2701(a)X
2757(\256nger)X
2964(request)X
3216(and)X
3352(trick)X
3519(the)X
3637(server)X
3854(into)X
3998(execut-)X
555 5583(ing)N
677(it.)X
781(The)X
926(worm)X
1133(can)X
1265(use)X
1392(a)X
1448(``trap)X
1647(door'')X
1868(in)X
1950(the)X
2 f
2068(sendmail)X
1 f
2377(SMTP)X
2605(mail)X
2767(service,)X
3035(exercising)X
3385(a)X
3441(bug)X
3581(in)X
3663(the)X
3781(debugging)X
4139(code)X
555 5673(that)N
695(allows)X
924(it)X
988(to)X
1070(execute)X
1336(a)X
1392(command)X
1728(interpreter)X
2083(and)X
2219(download)X
2555(code)X
2727(across)X
2948(a)X
3004(mail)X
3166(connection.)X
3578(If)X
3652(the)X
3770(worm)X
3977(can)X
555 5763(penetrate)N
870(a)X
926(local)X
1102(account)X
1372(by)X
1472(guessing)X
1772(its)X
1867(password,)X
2210(it)X
2274(can)X
2406(use)X
2533(the)X
2 f
2651(rexec)X
1 f
2846(and)X
2 f
2982(rsh)X
1 f
3104(remote)X
3347(command)X
3683(interpreter)X
4038(services)X

4 p
%%Page: 4 4
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(4)X
1 f
555 762(to)N
637(attack)X
849(hosts)X
1033(that)X
1173(share)X
1363(that)X
1503(account.)X
1813(In)X
1900(each)X
2068(case)X
2227(the)X
2345(worm)X
2552(arranges)X
2845(to)X
2927(get)X
3045(a)X
3101(remote)X
3344(command)X
3680(interpreter)X
4035(which)X
4251(it)X
555 852(can)N
687(use)X
814(to)X
896(copy)X
1072(over,)X
1255(compile)X
1533(and)X
1669(execute)X
1935(the)X
2053(99-line)X
2300(bootstrap.)X
2658(The)X
2803(bootstrap)X
3121(sets)X
3261(up)X
3361(its)X
3456(own)X
3614(network)X
3897(connection)X
555 942(with)N
717(the)X
835(local)X
1011(worm)X
1218(and)X
1354(copies)X
1579(over)X
1742(the)X
1860(other)X
2045(\256les)X
2198(it)X
2262(needs,)X
2485(and)X
2621(using)X
2814(these)X
2999(pieces)X
3220(a)X
3276(remote)X
3519(worm)X
3726(is)X
3799(built)X
3965(and)X
4101(the)X
555 1032(infection)N
860(procedure)X
1202(starts)X
1391(over)X
1554(again.)X
755 1155(Defense)N
1039(tactics)X
1264(fall)X
1391(into)X
1535(three)X
1716(categories:)X
2084(preventing)X
2447(the)X
2565(detection)X
2879(of)X
2966(intrusion,)X
3290(inhibiting)X
3620(the)X
3738(analysis)X
4016(of)X
4103(the)X
555 1245(program,)N
867(and)X
1003(authenticating)X
1477(other)X
1662(worms.)X
1940(The)X
2085(worm's)X
2350(simplest)X
2636(means)X
2861(of)X
2948(hiding)X
3172(itself)X
3352(is)X
3425(to)X
3507(change)X
3755(its)X
3850(name.)X
4084(When)X
555 1335(it)N
619(starts)X
808(up,)X
928(it)X
992(clears)X
1200(its)X
1295(argument)X
1618(list)X
1735(and)X
1871(sets)X
2011(its)X
2106(zeroth)X
2327(argument)X
2650(to)X
2 f
2732(sh)X
1 f
2803(,)X
2843(allowing)X
3143(it)X
3207(to)X
3289(masquerade)X
3693(as)X
3780(an)X
3876(innocuous)X
555 1425(command)N
891(interpreter.)X
1286(It)X
1355(uses)X
2 f
1513(fork)X
1 f
1642(\(\))X
1716(to)X
1798(change)X
2046(its)X
2141(process)X
2402(I.D.,)X
2567(never)X
2766(staying)X
3017(too)X
3139(long)X
3301(at)X
3379(one)X
3515(I.D.)X
3680(These)X
3892(two)X
4032(tactics)X
555 1515(are)N
674(intended)X
970(to)X
1052(disguise)X
1334(the)X
1452(worm's)X
1717(presence)X
2019(on)X
2119(system)X
2361(status)X
2563(listings.)X
2853(The)X
2998(worm)X
3205(tries)X
3363(to)X
3445(leave)X
3635(as)X
3722(little)X
3888(trash)X
4064(lying)X
555 1605(around)N
798(as)X
885(it)X
949(can,)X
1101(so)X
1192(at)X
1270(start-up)X
1535(it)X
1599(reads)X
1789(all)X
1889(its)X
1984(support)X
2244(\256les)X
2397(into)X
2541(memory)X
2828(and)X
2964(deletes)X
3207(the)X
3325(tell-tale)X
3590(\256lesystem)X
3934(copies.)X
4199(It)X
555 1695(turns)N
735(off)X
849(the)X
967(generation)X
1326(of)X
2 f
1413(core)X
1 f
1576(\256les,)X
1749(so)X
1840(if)X
1909(the)X
2027(worm)X
2234(makes)X
2459(a)X
2515(mistake,)X
2804(it)X
2868(doesn't)X
3124(leave)X
3314(evidence)X
3620(behind)X
3858(in)X
3940(the)X
4058(form)X
555 1785(of)N
642(core)X
801(dumps.)X
1074(The)X
1219(latter)X
1404(tactic)X
1598(is)X
1671(also)X
1820(designed)X
2125(to)X
2207(block)X
2405(analysis)X
2683(of)X
2770(the)X
2888(program\320it)X
3304(prevents)X
3596(an)X
3692(administrator)X
4139(from)X
555 1875(sending)N
824(a)X
880(software)X
1177(signal)X
1388(to)X
1470(the)X
1588(worm)X
1795(to)X
1877(force)X
2063(it)X
2127(to)X
2209(dump)X
2411(a)X
2467(core)X
2626(\256le.)X
2788(There)X
2996(are)X
3115(other)X
3300(ways)X
3485(to)X
3567(get)X
3685(a)X
3741(core)X
3900(\256le,)X
4042(how-)X
555 1965(ever,)N
734(so)X
825(the)X
943(worm)X
1150(carefully)X
1456(alters)X
1650(character)X
1966(data)X
2120(in)X
2202(memory)X
2489(to)X
2571(prevent)X
2832(it)X
2896(from)X
3072(being)X
3270(extracted)X
3585(easily.)X
3832(Copies)X
4074(of)X
4161(disk)X
555 2055(\256les)N
708(are)X
827(encoded)X
1115(by)X
1215(repeatedly)X
1570(exclusive-or'ing)X
2116(a)X
2172(ten-byte)X
2455(code)X
2627(sequence;)X
2964(static)X
3153(strings)X
3386(are)X
3505(encoded)X
3793(byte-by-byte)X
555 2145(by)N
655(exclusive-or'ing)X
1201(with)X
1363(the)X
1481(hexadecimal)X
1907(value)X
2101(81,)X
2221(except)X
2451(for)X
2565(a)X
2621(private)X
2864(word)X
3049(list)X
3166(which)X
3382(is)X
3455(encoded)X
3743(with)X
3905(hexade-)X
555 2235(cimal)N
753(80)X
853(instead.)X
1140(If)X
1214(the)X
1332(worm's)X
1597(\256les)X
1750(are)X
1869(somehow)X
2196(captured)X
2493(before)X
2719(the)X
2837(worm)X
3044(can)X
3176(delete)X
3388(them,)X
3588(the)X
3706(object)X
3922(\256les)X
4075(have)X
555 2325(been)N
727(loaded)X
961(in)X
1043(such)X
1210(a)X
1266(way)X
1420(as)X
1507(to)X
1589(remove)X
1850(most)X
2025(non-essential)X
2468(symbol)X
2723(table)X
2899(entries,)X
3153(making)X
3413(it)X
3477(harder)X
3703(to)X
3785(guess)X
3983(at)X
4061(the)X
555 2415(purposes)N
860(of)X
947(worm)X
1154(routines)X
1432(from)X
1608(their)X
1775(names.)X
2040(The)X
2185(worm)X
2392(also)X
2541(makes)X
2766(a)X
2822(trivial)X
3033(effort)X
3232(to)X
3314(stop)X
3467(other)X
3652(programs)X
3975(from)X
4151(tak-)X
555 2505(ing)N
677(advantage)X
1023(of)X
1110(its)X
1205(communications;)X
1776(in)X
1858(theory)X
2083(a)X
2139(well-prepared)X
2606(site)X
2737(could)X
2935(prevent)X
3196(infection)X
3501(by)X
3601(sending)X
3870(messages)X
4193(to)X
555 2595(ports)N
735(that)X
875(the)X
993(worm)X
1200(was)X
1345(listening)X
1640(on,)X
1760(so)X
1851(the)X
1969(worm)X
2176(is)X
2249(careful)X
2493(to)X
2575(test)X
2706(connections)X
3109(using)X
3302(a)X
3358(short)X
3538(exchange)X
3862(of)X
3949(random)X
555 2685(``magic)N
825(numbers''.)X
755 2808(When)N
967(studying)X
1262(a)X
1318(tricky)X
1525(program)X
1817(like)X
1957(this,)X
2112(it's)X
2234(just)X
2369(as)X
2456(important)X
2787(to)X
2869(establish)X
3169(what)X
3345(the)X
3463(program)X
2 f
3755(does)X
3922(not)X
1 f
4044(do)X
4144(as)X
555 2898(what)N
731(it)X
795(does)X
962(do.)X
1102(The)X
1247(worm)X
2 f
1454(does)X
1621(not)X
1743(delete)X
1955(a)X
2015(system's)X
2307(\256les)X
1 f
2436(:)X
2478(it)X
2542(only)X
2704(removes)X
2996(\256les)X
3149(that)X
3289(it)X
3353(created)X
3606(in)X
3688(the)X
3806(process)X
4067(of)X
555 2988(bootstrapping.)N
1055(The)X
1200(program)X
1492(does)X
1659(not)X
1781(attempt)X
2041(to)X
2123(incapacitate)X
2527(a)X
2583(system)X
2825(by)X
2925(deleting)X
3203(important)X
3534(\256les,)X
3707(or)X
3794(indeed)X
4028(any)X
555 3078(\256les.)N
748(It)X
817(does)X
984(not)X
1106(remove)X
1367(log)X
1489(\256les)X
1642(or)X
1729(otherwise)X
2061(interfere)X
2354(with)X
2516(normal)X
2763(operation)X
3086(other)X
3271(than)X
3429(by)X
3529(consuming)X
3900(system)X
555 3168(resources.)N
919(The)X
1064(worm)X
2 f
1271(does)X
1438(not)X
1560(modify)X
1798(existing)X
2067(\256les)X
1 f
2196(:)X
2238(it)X
2302(is)X
2375(not)X
2497(a)X
2553(virus.)X
2773(The)X
2918(worm)X
3125(propagates)X
3493(by)X
3593(copying)X
3871(itself)X
4051(and)X
555 3258(compiling)N
899(itself)X
1079(on)X
1179(each)X
1347(system;)X
1611(it)X
1675(does)X
1842(not)X
1964(modify)X
2215(other)X
2400(programs)X
2723(to)X
2805(do)X
2905(its)X
3000(work)X
3185(for)X
3299(it.)X
3403(Due)X
3557(to)X
3639(its)X
3734(method)X
3994(of)X
4081(infec-)X
555 3348(tion,)N
719(it)X
783(can't)X
964(count)X
1162(on)X
1262(suf\256cient)X
1580(privileges)X
1916(to)X
1998(be)X
2094(able)X
2248(to)X
2330(modify)X
2581(programs.)X
2944(The)X
3089(worm)X
2 f
3296(does)X
3463(not)X
3585(install)X
3804(trojan)X
4019(horses)X
1 f
4228(:)X
555 3438(its)N
650(method)X
910(of)X
997(attack)X
1209(is)X
1282(strictly)X
1524(active,)X
1756(it)X
1820(never)X
2019(waits)X
2208(for)X
2322(a)X
2378(user)X
2532(to)X
2614(trip)X
2745(over)X
2908(a)X
2964(trap.)X
3149(Part)X
3298(of)X
3385(the)X
3503(reason)X
3733(for)X
3847(this)X
3982(is)X
4055(that)X
4195(the)X
555 3528(worm)N
762(can't)X
943(afford)X
1160(to)X
1242(waste)X
1445(time)X
1607(waiting)X
1867(for)X
1981(trojan)X
2188(horses\320it)X
2537(must)X
2712(reproduce)X
3054(before)X
3280(it)X
3344(is)X
3417(discovered.)X
3825(Finally,)X
4091(the)X
555 3618(worm)N
2 f
762(does)X
929(not)X
1051(record)X
1285(or)X
1376(transmit)X
1662(decrypted)X
1999(passwords)X
1 f
2336(:)X
2378(except)X
2608(for)X
2722(its)X
2817(own)X
2975(static)X
3164(list)X
3281(of)X
3368(favorite)X
3638(passwords,)X
4012(the)X
555 3708(worm)N
762(does)X
929(not)X
1051(propagate)X
1388(cracked)X
1659(passwords)X
2013(on)X
2113(to)X
2195(new)X
2349(worms)X
2587(nor)X
2714(does)X
2881(it)X
2945(transmit)X
3227(them)X
3407(back)X
3579(to)X
3661(some)X
3850(home)X
4048(base.)X
555 3798(This)N
717(is)X
790(not)X
912(to)X
994(say)X
1121(that)X
1261(the)X
1379(accounts)X
1680(that)X
1820(the)X
1938(worm)X
2145(penetrated)X
2500(are)X
2619(secure)X
2845(merely)X
3088(because)X
3363(the)X
3481(worm)X
3688(did)X
3810(not)X
3932(tell)X
4054(anyone)X
555 3888(what)N
731(their)X
898(passwords)X
1252(were,)X
1449(of)X
1536(course\320if)X
1895(the)X
2013(worm)X
2220(can)X
2352(guess)X
2550(an)X
2646(account's)X
2974(password,)X
3317(certainly)X
3618(others)X
3834(can)X
3966(too.)X
4128(The)X
555 3978(worm)N
2 f
762(does)X
929(not)X
1051(try)X
1160(to)X
1242(capture)X
1507(superuser)X
1843(privileges)X
1 f
2159(:)X
2201(while)X
2399(it)X
2463(does)X
2630(try)X
2739(to)X
2821(break)X
3020(into)X
3164(accounts,)X
3485(it)X
3549(doesn't)X
3805(depend)X
4057(on)X
555 4068(having)N
793(particular)X
1121(privileges)X
1457(to)X
1539(propagate,)X
1896(and)X
2032(never)X
2231(makes)X
2456(special)X
2699(use)X
2826(of)X
2913(such)X
3080(privileges)X
3416(if)X
3485(it)X
3549(somehow)X
3876(gets)X
4025(them.)X
555 4158(The)N
700(worm)X
2 f
907(does)X
1074(not)X
1196(propagate)X
1545(over)X
1708(uucp)X
1 f
1884(or)X
1971(X.25)X
2149(or)X
2236(DECNET)X
2572(or)X
2659(BITNET:)X
2986(it)X
3050(speci\256cally)X
3435(requires)X
3714(TCP/IP.)X
4013(The)X
555 4248(worm)N
2 f
762(does)X
929(not)X
1051(infect)X
1249(System)X
1492(V)X
1561(systems)X
1 f
1826(unless)X
2046(they)X
2204(have)X
2376(been)X
2548(modi\256ed)X
2852(to)X
2934(use)X
3061(Berkeley)X
3371(network)X
3654(programs)X
3977(like)X
2 f
4117(send-)X
555 4338(mail)N
1 f
697(,)X
2 f
737(\256ngerd)X
1 f
984(and)X
2 f
1120(rexec)X
1 f
1295(.)X
3 f
555 4524(4.)N
655(Internals)X
1 f
755 4647(Now)N
931(for)X
1045(some)X
1234(details:)X
1485(we)X
1599(shall)X
1770(follow)X
1999(the)X
2117(main)X
2297(thread)X
2518(of)X
2605(control)X
2852(in)X
2934(the)X
3052(worm,)X
3279(then)X
3437(examine)X
3729(some)X
3918(of)X
4005(the)X
555 4737(worm's)N
820(data)X
974(structures)X
1306(before)X
1532(working)X
1819(through)X
2088(each)X
2256(phase)X
2459(of)X
2546(activity.)X
3 f
555 4923(4.1.)N
715(The)X
868(thread)X
1115(of)X
1202(control)X
1 f
755 5046(When)N
967(the)X
1085(worm)X
1292(starts)X
1481(executing)X
1813(in)X
2 f
1895(main)X
1 f
(\(\),)S
2149(it)X
2213(takes)X
2398(care)X
2553(of)X
2640(some)X
2829(initializations,)X
3304(some)X
3493(defense)X
3759(and)X
3895(some)X
555 5136(cleanup.)N
865(The)X
1010(very)X
1173(\256rst)X
1317(thing)X
1501(it)X
1565(does)X
1732(is)X
1805(to)X
1887(change)X
2135(its)X
2230(name)X
2424(to)X
2 f
2506(sh)X
1 f
2577(.)X
2637(This)X
2799(shrinks)X
3050(the)X
3168(window)X
3446(during)X
3675(which)X
3891(the)X
4009(worm)X
4216(is)X
555 5226(visible)N
788(in)X
870(a)X
926(system)X
1168(status)X
1370(listing)X
1589(as)X
1676(a)X
1732(process)X
1993(with)X
2155(an)X
2251(odd)X
2391(name)X
2585(like)X
2 f
2725(x9834753)X
1 f
3041(.)X
3101(It)X
3170(then)X
3328(initializes)X
3659(the)X
3777(random)X
4042(number)X
555 5316(generator,)N
899(seeding)X
1164(it)X
1228(with)X
1390(the)X
1508(current)X
1756(time,)X
1938(turns)X
2118(off)X
2232(core)X
2391(dumps,)X
2644(and)X
2780(arranges)X
3073(to)X
3155(die)X
3273(when)X
3467(remote)X
3710(connections)X
4113(fail.)X
555 5406(With)N
735(this)X
870(out)X
992(of)X
1079(the)X
1197(way,)X
1371(the)X
1489(worm)X
1696(processes)X
2024(its)X
2119(argument)X
2442(list.)X
2599(It)X
2668(\256rst)X
2812(looks)X
3005(for)X
3119(an)X
3215(option)X
3 f
9 f
3439(-)X
3441(-)X
3 f
3485(p)X
2 f
3549($$)X
1 f
(,)S
3669(where)X
2 f
3886($$)X
1 f
555 5496(represents)N
901(the)X
1019(process)X
1280(I.D.)X
1425(of)X
1512(its)X
1607(parent)X
1828(process;)X
2111(this)X
2246(option)X
2470(indicates)X
2775(to)X
2857(the)X
2975(worm)X
3182(that)X
3322(it)X
3386(must)X
3561(take)X
3715(care)X
3870(to)X
3952(clean)X
4142(up)X
555 5586(after)N
723(itself.)X
943(It)X
1012(proceeds)X
1318(to)X
1400(read)X
1559(in)X
1641(each)X
1809(of)X
1896(the)X
2014(\256les)X
2167(it)X
2231(was)X
2376(given)X
2574(as)X
2661(arguments;)X
3037(if)X
3106(cleaning)X
3398(up,)X
3518(it)X
3582(removes)X
3874(each)X
4042(\256le)X
555 5676(after)N
723(it)X
787(reads)X
977(it.)X
1081(If)X
1155(the)X
1273(worm)X
1480(wasn't)X
1714(given)X
1912(the)X
2030(bootstrap)X
2348(source)X
2578(\256le)X
2 f
2700(l1.c)X
1 f
2838(as)X
2925(an)X
3021(argument,)X
3364(it)X
3428(exits)X
3599(silently;)X
3876(this)X
4011(is)X
555 5766(perhaps)N
825(intended)X
1121(to)X
1203(slow)X
1374(down)X
1572(people)X
1806(who)X
1964(are)X
2083(experimenting)X
2566(with)X
2728(the)X
2846(worm.)X
3093(If)X
3167(cleaning)X
3459(up,)X
3579(the)X
3697(worm)X
3904(then)X
4062(closes)X

5 p
%%Page: 5 5
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(5)X
1 f
555 762(its)N
650(\256le)X
772(descriptors,)X
1164(temporarily)X
1558(cutting)X
1800(itself)X
1980(off)X
2094(from)X
2270(its)X
2365(remote)X
2608(parent)X
2829(worm,)X
3056(and)X
3192(removes)X
3484(some)X
3673(\256les.)X
3866(\(One)X
4047(of)X
4134(these)X
555 852(\256les,)N
2 f
728(/tmp/.dumb)X
1 f
1090(,)X
1130(is)X
1203(never)X
1402(created)X
1655(by)X
1755(the)X
1873(worm)X
2080(and)X
2216(the)X
2334(unlinking)X
2660(seems)X
2876(to)X
2958(be)X
3054(left)X
3181(over)X
3344(from)X
3520(an)X
3616(earlier)X
3842(stage)X
4027(of)X
555 942(development.\))N
1036(The)X
1181(worm)X
1388(then)X
1546(zeroes)X
1772(out)X
1894(its)X
1989(argument)X
2312(list,)X
2449(again)X
2643(to)X
2725(foil)X
2856(the)X
2974(system)X
3216(status)X
3418(program)X
2 f
3710(ps)X
1 f
3781(.)X
3841(The)X
3986(next)X
4144(step)X
555 1032(is)N
628(to)X
710(initialize)X
1010(the)X
1128(worm's)X
1393(list)X
1510(of)X
1597(network)X
1880(interfaces;)X
2235(these)X
2420(interfaces)X
2753(are)X
2872(used)X
3039(to)X
3121(\256nd)X
3265(local)X
3441(networks)X
3755(and)X
3891(to)X
3973(check)X
4181(for)X
555 1122(alternate)N
852(addresses)X
1180(of)X
1267(the)X
1385(current)X
1633(host.)X
1826(Finally,)X
2092(if)X
2161(cleaning)X
2453(up)X
2553(the)X
2671(worm)X
2878(resets)X
3081(its)X
3176(process)X
3437(group)X
3644(and)X
3780(kills)X
3937(the)X
4055(process)X
555 1212(that)N
695(helped)X
929(to)X
1011(bootstrap)X
1329(it.)X
1433(The)X
1578(worm's)X
1843(last)X
1974(act)X
2088(in)X
2 f
2170(main)X
1 f
(\(\))S
2404(is)X
2477(to)X
2559(call)X
2695(a)X
2751(function)X
3038(we)X
3152(named)X
2 f
3386(doit)X
1 f
3510(\(\),)X
3604(which)X
3820(contains)X
4107(the)X
555 1302(main)N
735(loop)X
897(of)X
984(the)X
1102(worm.)X
2 f
755 1425(doit)N
1 f
879(\(\))X
953(runs)X
1111(a)X
1167(short)X
1347(prologue)X
1652(before)X
1878(actually)X
2152(starting)X
2412(the)X
2530(main)X
2710(loop.)X
2912(It)X
2981(\(redundantly\))X
3438(seeds)X
3632(the)X
3750(random)X
4015(number)X
555 1515(generator)N
879(with)X
1041(the)X
1159(current)X
1407(time,)X
1589(saving)X
1818(the)X
1936(time)X
2098(so)X
2189(that)X
2329(it)X
2393(can)X
2525(tell)X
2647(how)X
2805(long)X
2967(it)X
3031(has)X
3158(been)X
3330(running.)X
3639(The)X
3784(worm)X
3991(then)X
555 1605(attempts)N
846(its)X
941(\256rst)X
1085(infection.)X
1430(It)X
1499(initially)X
1767(attacks)X
2010(gateways)X
2329(that)X
2469(it)X
2533(found)X
2740(with)X
2902(the)X
2 f
3020(netstat)X
1 f
3253(network)X
3536(status)X
3738(program;)X
4052(if)X
4121(it)X
555 1695(can't)N
736(infect)X
939(one)X
1075(of)X
1162(these)X
1347(hosts,)X
1551(then)X
1709(it)X
1773(checks)X
2012(random)X
2277(host)X
2430(numbers)X
2726(on)X
2826(local)X
3002(networks,)X
3336(then)X
3494(it)X
3558(tries)X
3716(random)X
3981(host)X
555 1785(numbers)N
851(on)X
951(networks)X
1265(that)X
1405(are)X
1524(on)X
1624(the)X
1742(far)X
1852(side)X
2001(of)X
2088(gateways,)X
2427(in)X
2509(each)X
2677(case)X
2836(stopping)X
3131(if)X
3200(it)X
3264(succeeds.)X
3610(\(Note)X
3813(that)X
3953(this)X
555 1875(sequence)N
870(of)X
957(attacks)X
1200(differs)X
1430(from)X
1606(the)X
1724(sequence)X
2039(the)X
2157(worm)X
2364(uses)X
2522(after)X
2690(it)X
2754(has)X
2881(entered)X
3138(the)X
3256(main)X
3436(loop.\))X
755 1998(After)N
945(this)X
1080(initial)X
1286(attempt)X
1546(at)X
1624(infection,)X
1949(the)X
2067(worm)X
2274(calls)X
2441(the)X
2559(routine)X
2 f
2806(checkother)X
1 f
3159(\(\))X
3233(to)X
3315(check)X
3523(for)X
3637(another)X
3898(worm)X
555 2088(already)N
812(on)X
912(the)X
1030(local)X
1206(machine.)X
1538(In)X
1625(this)X
1760(check)X
1968(the)X
2086(worm)X
2293(acts)X
2438(as)X
2525(a)X
2581(client)X
2779(to)X
2861(an)X
2957(existing)X
3230(worm)X
3437(which)X
3653(acts)X
3798(as)X
3885(a)X
3941(server;)X
555 2178(they)N
713(may)X
871(exchange)X
1195(``population)X
1611(control'')X
1912(messages,)X
2255(after)X
2423(which)X
2639(one)X
2775(of)X
2862(the)X
2980(two)X
3120(worms)X
3358(will)X
3502(eventually)X
3856(shut)X
4009(down.)X
755 2301(One)N
909(odd)X
1049(routine)X
1296(is)X
1369(called)X
1581(just)X
1716(before)X
1942(entering)X
2225(the)X
2343(main)X
2523(loop.)X
2725(We)X
2857(named)X
3091(this)X
3226(routine)X
2 f
3473(send_message)X
1 f
3932(\(\),)X
4026(but)X
4148(it)X
555 2391(really)N
758(doesn't)X
1014(send)X
1181(anything)X
1481(at)X
1559(all.)X
1699(It)X
1768(looks)X
1961(like)X
2101(it)X
2165(was)X
2310(intended)X
2606(to)X
2688(cause)X
2887(1)X
2947(in)X
3029(15)X
3129(copies)X
3354(of)X
3441(the)X
3559(worm)X
3766(to)X
3848(send)X
4015(a)X
4071(1-byte)X
555 2481(datagram)N
874(to)X
956(a)X
1012(port)X
1161(on)X
1261(the)X
1379(host)X
2 f
1532 0.1912(ernie.berkeley.edu)AX
1 f
2126(,)X
2166(which)X
2382(is)X
2455(located)X
2707(in)X
2789(the)X
2907(Computer)X
3247(Science)X
3517(Department)X
3916(at)X
3994(UC)X
555 2571(Berkeley.)N
905(It)X
974(has)X
1101(been)X
1273(suggested)X
1609(that)X
1749(this)X
1884(was)X
2029(a)X
2085(feint,)X
2272(designed)X
2577(to)X
2659(draw)X
2840(attention)X
3140(to)X
2 f
3222(ernie)X
1 f
3407(and)X
3543(away)X
3733(from)X
3909(the)X
4027(author's)X
12 s
10 f
555 2775(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
1 f
1035 3072(doit\(\))N
1273({)X
2 f
1227 3180(seed)N
1422(the)X
1564(random)X
1886(number)X
2203(generator)X
2606(with)X
2796(the)X
2938(time)X
1227 3288(attack)N
1487(hosts:)X
1740(gateways,)X
2146(local)X
2363(nets,)X
2566(remote)X
2857(nets)X
1 f
1227 3396(checkother\(\);)N
1227 3504(send_message\(\);)N
1227 3612(for)N
1363(\(;;\))X
1505({)X
1419 3720(cracksome\(\);)N
1419 3828(other_sleep\(30\);)N
1419 3936(cracksome\(\);)N
2 f
1419 4044(change)N
1721(our)X
1878(process)X
2195(ID)X
1419 4152(attack)N
1679(hosts:)X
1932(gateways,)X
2338(known)X
2613(hosts,)X
1611 4260(remote)N
1902(nets,)X
2105(local)X
2322(nets)X
1 f
1419 4368(other_sleep\(120\);)N
2 f
1419 4476(if)N
1497(12)X
1617(hours)X
1859(have)X
2065(passed,)X
1611 4584(reset)N
1822(hosts)X
2043(table)X
1 f
1419 4692(if)N
1502(\(pleasequit)X
1949(&&)X
2123(nextw)X
2382(>)X
2460(10\))X
1611 4800(exit\(0\);)N
1227 4908(})N
1035 5016(})N
3 f
1612 5232(``C'')N
1833(pseudo-code)X
2363(for)X
2510(the)X
2 f
2662(doit)X
3 f
2812(\(\))X
2900(function)X
1 f
10 f
555 5448(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N

6 p
%%Page: 6 6
12 s 0 xH 0 xS 10 f
10 s
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(6)X
1 f
555 762(real)N
696(host.)X
889(Since)X
1087(the)X
1205(routine)X
1452(has)X
1579(a)X
1635(bug)X
1775(\(it)X
1866(sets)X
2006(up)X
2106(a)X
2162(TCP)X
2328(socket)X
2553(but)X
2675(tries)X
2833(to)X
2915(send)X
3082(a)X
3138(UDP)X
3318(packet\),)X
3595(nothing)X
3859(gets)X
4008(sent)X
4157(at)X
555 852(all.)N
695(It's)X
822(possible)X
1104(that)X
1244(this)X
1379(was)X
1524(a)X
1580(deeper)X
1815(feint,)X
2002(designed)X
2307(to)X
2389(be)X
2485(uncovered)X
2840(only)X
3002(by)X
3102(decompilers;)X
3536(if)X
3605(so,)X
3716(this)X
3851(wouldn't)X
4160(be)X
555 942(the)N
673(only)X
835(deliberate)X
1172(impediment)X
1574(that)X
1714(the)X
1832(author)X
2057(put)X
2179(in)X
2261(our)X
2388(way.)X
2582(In)X
2669(any)X
2805(case,)X
2984(administrators)X
3462(at)X
3540(Berkeley)X
3850(never)X
555 1032(detected)N
843(any)X
979(process)X
1240(listening)X
1535(at)X
1613(port)X
1762(11357)X
1982(on)X
2082(ernie,)X
2283(and)X
2419(we)X
2533(found)X
2740(no)X
2840(code)X
3012(in)X
3094(the)X
3212(worm)X
3419(that)X
3559(listens)X
3783(at)X
3861(that)X
4001(port,)X
555 1122(regardless)N
901(of)X
988(the)X
1106(host.)X
755 1245(The)N
900(main)X
1080(loop)X
1242(begins)X
1471(with)X
1633(a)X
1689(call)X
1825(to)X
1907(a)X
1963(function)X
2250(named)X
2 f
2484(cracksome)X
1 f
2828(\(\))X
2902(for)X
3016(some)X
3205(password)X
3528(cracking.)X
3865(Password)X
555 1335(cracking)N
852(is)X
925(an)X
1021(activity)X
1281(that)X
1421(the)X
1539(worm)X
1746(is)X
1819(constantly)X
2168(working)X
2455(at)X
2533(in)X
2615(an)X
2711(incremental)X
3110(fashion.)X
3406(It)X
3475(takes)X
3660(a)X
3716(break)X
3915(for)X
4029(30)X
555 1425(seconds)N
829(to)X
911(look)X
1073(for)X
1187(intruding)X
1500(copies)X
1725(of)X
1812(the)X
1930(worm)X
2137(on)X
2237(the)X
2355(local)X
2531(host,)X
2704(and)X
2840(then)X
2998(goes)X
3165(back)X
3337(to)X
3419(cracking.)X
3756(After)X
3946(this)X
4081(ses-)X
555 1515(sion,)N
728(it)X
792(forks)X
977(\(creates)X
1248(a)X
1304(new)X
1458(process)X
1719(running)X
1988(with)X
2150(a)X
2206(copy)X
2382(of)X
2469(the)X
2587(same)X
2772(image\))X
3015(and)X
3151(the)X
3269(old)X
3391(process)X
3652(exits;)X
3845(this)X
3980(serves)X
4201(to)X
555 1605(turn)N
704(over)X
867(process)X
1128(I.D.)X
1273(numbers)X
1569(and)X
1705(makes)X
1930(it)X
1994(harder)X
2220(to)X
2302(track)X
2483(the)X
2601(worm)X
2808(with)X
2970(the)X
3088(system)X
3330(status)X
3532(program)X
2 f
3824(ps)X
1 f
3895(.)X
3955(At)X
4055(this)X
555 1695(point)N
739(the)X
857(worm)X
1064(goes)X
1231(back)X
1403(to)X
1485(its)X
1580(infectious)X
1916(stage,)X
2121(trying)X
2332(\(in)X
2441(order)X
2631(of)X
2718 0.4000(preference\))AX
3106(gateways,)X
3445(hosts)X
3629(listed)X
3822(in)X
3904(system)X
555 1785(tables)N
762(like)X
2 f
902(/etc/hosts.equiv)X
1 f
1398(,)X
1438(random)X
1703(host)X
1856(numbers)X
2152(on)X
2252(the)X
2370(far)X
2480(side)X
2629(of)X
2716(gateways)X
3035(and)X
3171(random)X
3436(hosts)X
3620(on)X
3720(local)X
3896(networks.)X
555 1875(As)N
664(before,)X
910(if)X
979(it)X
1043(succeeds)X
1349(in)X
1431(infecting)X
1736(a)X
1792(new)X
1946(host,)X
2119(it)X
2183(marks)X
2399(that)X
2539(host)X
2692(in)X
2774(a)X
2830(list)X
2947(and)X
3083(leaves)X
3304(the)X
3422(infection)X
3727(phase)X
3930(for)X
4044(the)X
555 1965(time)N
717(being.)X
955(After)X
1145(infection,)X
1470(the)X
1588(worm)X
1795(spends)X
2033(two)X
2173(minutes)X
2446(looking)X
2710(for)X
2824(new)X
2978(local)X
3154(copies)X
3379(of)X
3466(the)X
3584(worm)X
3791(again;)X
4007(this)X
4142(is)X
555 2055(done)N
731(here)X
890(because)X
1165(a)X
1221(newly)X
1437(infected)X
1716(remote)X
1959(host)X
2112(may)X
2270(try)X
2379(to)X
2461(reinfect)X
2727(the)X
2845(local)X
3021(host.)X
3214(If)X
3288(12)X
3388(hours)X
3586(have)X
3758(passed)X
3992(and)X
4128(the)X
555 2145(worm)N
762(is)X
835(still)X
974(alive,)X
1170(it)X
1234(assumes)X
1521(that)X
1661(it)X
1725(has)X
1852(had)X
1988(bad)X
2124(luck)X
2282(due)X
2418(to)X
2500(networks)X
2814(or)X
2901(hosts)X
3085(being)X
3283(down,)X
3501(and)X
3637(it)X
3701(reinitializes)X
4095(its)X
555 2235(table)N
731(of)X
818(hosts)X
1002(so)X
1093(that)X
1233(it)X
1297(can)X
1429(start)X
1587(over)X
1750(from)X
1926(scratch.)X
2214(At)X
2314(the)X
2432(end)X
2568(of)X
2655(the)X
2773(main)X
2953(loop)X
3115(the)X
3233(worm)X
3440(checks)X
3679(to)X
3761(see)X
3884(if)X
3953(it)X
4017(is)X
555 2325(scheduled)N
896(to)X
978(die)X
1096(as)X
1183(a)X
1239(result)X
1437(of)X
1524(its)X
1619(population)X
1981(control)X
2228(features,)X
2523(and)X
2659(if)X
2728(it)X
2792(is,)X
2885(and)X
3021(if)X
3090(it)X
3154(has)X
3281(done)X
3457(a)X
3513(suf\256cient)X
3831(amount)X
4091(of)X
555 2415(work)N
740(cracking)X
1037(passwords,)X
1411(it)X
1475(exits.)X
3 f
555 2601(4.2.)N
715(Data)X
900(structures)X
1 f
755 2724(The)N
900(worm)X
1107(maintains)X
1438(at)X
1516(least)X
1683(four)X
1837(interesting)X
2195(data)X
2349(structures,)X
2701(and)X
2837(each)X
3005(is)X
3078(associated)X
3428(with)X
3590(a)X
3646(set)X
3755(of)X
3842(support)X
4102(rou-)X
555 2814(tines.)N
755 2937(The)N
2 f
900(object)X
1 f
1116(structure)X
1417(is)X
1490(used)X
1657(to)X
1739(hold)X
1901(copies)X
2126(of)X
2213(\256les.)X
2406(Files)X
2581(are)X
2700(encrypted)X
3037(using)X
3230(the)X
3348(function)X
2 f
3635(xorbuf)X
1 f
3844(\(\))X
3918(while)X
4116(in)X
555 3027(memory,)N
862(so)X
953(that)X
1093(dumps)X
1326(of)X
1413(the)X
1531(worm)X
1738(won't)X
1945(reveal)X
2162(anything)X
2462(interesting.)X
2860(The)X
3005(\256les)X
3158(are)X
3277(copied)X
3511(to)X
3593(disk)X
3746(on)X
3846(a)X
3902(remote)X
4145(sys-)X
555 3117(tem)N
695(before)X
921(starting)X
1181(a)X
1237(new)X
1391(worm,)X
1618(and)X
1754(new)X
1908(worms)X
2146(read)X
2305(the)X
2423(\256les)X
2576(into)X
2720(memory)X
3007(and)X
3143(delete)X
3355(the)X
3473(disk)X
3626(copies)X
3851(as)X
3938(part)X
4083(of)X
555 3207(their)N
722(start-up)X
987(duties.)X
1238(Each)X
1419(structure)X
1720(contains)X
2007(a)X
2063(name,)X
2277(a)X
2333(length)X
2553(and)X
2689(a)X
2745(pointer)X
2992(to)X
3074(a)X
3130(buffer.)X
3387(The)X
3532(function)X
2 f
3819(getobject-)X
555 3297(byname)N
1 f
805(\(\))X
879(retrieves)X
1176(a)X
1232(pointer)X
1479(to)X
1561(a)X
1617(named)X
1851(object)X
2067(structure;)X
2390(for)X
2504(some)X
2693(reason,)X
2943(it)X
3007(is)X
3080(only)X
3242(used)X
3409(to)X
3491(call)X
3627(up)X
3727(the)X
3845(bootstrap)X
555 3387(source)N
785(\256le.)X
755 3510(The)N
2 f
900(interface)X
1 f
1205(structure)X
1506(contains)X
1793(information)X
2191(about)X
2389(the)X
2507(current)X
2755(host's)X
2966(network)X
3249(interfaces.)X
3622(This)X
3784(is)X
3857(mainly)X
4099(used)X
555 3600(to)N
637(check)X
845(for)X
959(local)X
1135(attached)X
1423(networks.)X
1777(It)X
1846(contains)X
2133(a)X
2189(name,)X
2403(a)X
2459(network)X
2742(address,)X
3023(a)X
3079(subnet)X
3308(mask)X
3497(and)X
3633(some)X
3822(\257ags.)X
4033(The)X
555 3690(interface)N
857(table)X
1033(is)X
1106(initialized)X
1446(once)X
1618(at)X
1696(start-up)X
1961(time.)X
755 3813(The)N
2 f
900(host)X
1 f
1053(structure)X
1354(is)X
1427(used)X
1594(to)X
1676(keep)X
1848(track)X
2029(of)X
2116(the)X
2234(status)X
2436(and)X
2572(addresses)X
2900(of)X
2987(hosts.)X
3211(Hosts)X
3413(are)X
3532(added)X
3744(to)X
3826(this)X
3961(list)X
555 3903(dynamically,)N
991(as)X
1078(the)X
1196(worm)X
1403(encounters)X
1771(new)X
1925(sources)X
2186(of)X
2273(host)X
2426(names)X
2651(and)X
2787(addresses.)X
3155(The)X
3300(list)X
3417(can)X
3549(be)X
3645(searched)X
3947(for)X
4061(a)X
4117(par-)X
555 3993(ticular)N
780(address)X
1041(or)X
1128(name,)X
1342(with)X
1504(an)X
1600(option)X
1824(to)X
1906(insert)X
2104(a)X
2160(new)X
2314(entry)X
2499(if)X
2568(no)X
2668(matching)X
2986(entry)X
3171(is)X
3244(found.)X
3491(Flag)X
3653(bits)X
3788(are)X
3907(used)X
4074(to)X
555 4083(indicate)N
829(whether)X
1108(the)X
1226(host)X
1379(is)X
1452(a)X
1508(gateway,)X
1816(whether)X
2095(it)X
2159(was)X
2304(found)X
2511(in)X
2593(a)X
2649(system)X
2891(table)X
3067(like)X
2 f
3207(/etc/hosts.equiv)X
1 f
3703(,)X
3743(whether)X
4022(the)X
555 4173(worm)N
762(has)X
889(found)X
1096(it)X
1160(impossible)X
1526(to)X
1608(attack)X
1820(the)X
1938(host)X
2091(for)X
2205(some)X
2394(reason,)X
2644(and)X
2780(whether)X
3059(the)X
3177(host)X
3330(has)X
3457(already)X
3714(been)X
3886(successfully)X
555 4263(infected.)N
874(The)X
1019(bits)X
1154(for)X
1268(``can't)X
1503(infect'')X
1760(and)X
1896(``infected'')X
2283(are)X
2402(cleared)X
2655(every)X
2854(12)X
2954(hours,)X
3172(and)X
3308(low)X
3448(priority)X
3708(hosts)X
3892(are)X
4011(deleted,)X
555 4353(to)N
637(be)X
733(accumulated)X
1159(again)X
1353(later.)X
1556(The)X
1701(structure)X
2002(contains)X
2289(up)X
2389(to)X
2471(12)X
2571(names)X
2796(\(aliases\))X
3084(and)X
3220(up)X
3320(to)X
3402(6)X
3462(distinct)X
3717(network)X
555 4443(addresses)N
883(for)X
997(each)X
1165(host.)X
755 4566(In)N
842(our)X
969(sources,)X
1250(what)X
1426(we've)X
1643(called)X
1855(the)X
2 f
1973(muck)X
1 f
2163(structure)X
2464(is)X
2537(used)X
2704(to)X
2786(keep)X
2958(track)X
3139(of)X
3226(accounts)X
3527(for)X
3641(the)X
3759(purpose)X
4033(of)X
4120(pass-)X
555 4656(word)N
740(cracking.)X
1077(\(It)X
1173(was)X
1318(awarded)X
1611(the)X
1729(name)X
2 f
1923(muck)X
1 f
2113(for)X
2227(sentimental)X
2616(reasons,)X
2897(although)X
2 f
3197(pw)X
1 f
3310(or)X
2 f
3397(acct)X
1 f
3551(might)X
3757(be)X
3853(more)X
555 4746(mnemonic.\))N
960(Each)X
1141(structure)X
1442(contains)X
1729(an)X
1825(account)X
2095(name,)X
2309(an)X
2405(encrypted)X
2742(password,)X
3085(a)X
3141(decrypted)X
3478(password)X
3801(\(if)X
3897(available\))X
555 4836(plus)N
708(the)X
826(home)X
1024(directory)X
1334(and)X
1470(personal)X
1762(information)X
2160(\256elds)X
2353(from)X
2529(the)X
2647(password)X
2970(\256le.)X
3 f
555 5022(4.3.)N
715(Population)X
1107(growth)X
1 f
755 5145(The)N
900(worm)X
1107(contains)X
1394(a)X
1450(mechanism)X
1835(that)X
1975(seems)X
2191(to)X
2273(be)X
2369(designed)X
2674(to)X
2756(limit)X
2926(the)X
3044(number)X
3309(of)X
3396(copies)X
3621(of)X
3708(the)X
3826(worm)X
4033(running)X
555 5235(on)N
655(a)X
711(given)X
909(system,)X
1171(but)X
1293(beyond)X
1549(that)X
1689(our)X
1816(current)X
2064(understanding)X
2538(of)X
2625(the)X
2743(design)X
2972(goals)X
3161(is)X
3234(itself)X
3414(limited.)X
3700(It)X
3769(clearly)X
4008(does)X
4175(not)X
555 5325(prevent)N
816(a)X
872(system)X
1114(from)X
1290(being)X
1488(overloaded,)X
1885(although)X
2185(it)X
2249(does)X
2416(appear)X
2651(to)X
2733(pace)X
2901(the)X
3019(infection)X
3324(so)X
3415(that)X
3555(early)X
3736(copies)X
3961(can)X
4093(go)X
555 5415(undetected.)N
963(It)X
1032(has)X
1159(been)X
1331(suggested)X
1667(that)X
1807(a)X
1863(simulation)X
2220(of)X
2307(the)X
2425(worm's)X
2690(population)X
3052(control)X
3299(features)X
3574(might)X
3780(reveal)X
3997(more)X
555 5505(about)N
753(its)X
848(design,)X
1097(and)X
1233(we)X
1347(are)X
1466(interested)X
1798(writing)X
2049(such)X
2216(a)X
2272(simulation.)X
755 5628(The)N
900(worm)X
1107(uses)X
1265(a)X
1321 0.1953(client-and-server)AX
1886(technique)X
2218(to)X
2300(control)X
2547(the)X
2665(number)X
2930(of)X
3017(copies)X
3242(executing)X
3574(on)X
3674(the)X
3792(current)X
555 5718(machine.)N
887(A)X
965(routine)X
2 f
1212(checkother)X
1 f
1565(\(\))X
1639(is)X
1712(run)X
1839(at)X
1917(start-up)X
2182(time.)X
2384(This)X
2546(function)X
2833(tries)X
2991(to)X
3073(connect)X
3343(to)X
3425(a)X
3481(server)X
3698(listening)X
3993(at)X
4071(TCP)X

7 p
%%Page: 7 7
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(7)X
1 f
555 762(port)N
704(23357.)X
964(The)X
1109(connection)X
1481(attempt)X
1741(returns)X
1984(immediately)X
2404(if)X
2473(no)X
2573(server)X
2790(is)X
2863(present,)X
3135(but)X
3257(blocks)X
3486(if)X
3555(one)X
3691(is)X
3764(available)X
4074(and)X
555 852(busy;)N
748(a)X
804(server)X
1021(worm)X
1228(periodically)X
1631(runs)X
1789(its)X
1884(server)X
2101(code)X
2273(during)X
2502(time-consuming)X
3042(operations)X
3396(so)X
3487(that)X
3627(the)X
3745(queue)X
3957(of)X
4044(connec-)X
555 942(tions)N
730(does)X
897(not)X
1019(grow)X
1204(large.)X
1425(After)X
1615(the)X
1733(client)X
1931(exchanges)X
2286(magic)X
2502(numbers)X
2798(with)X
2960(the)X
3078(server)X
3295(as)X
3382(a)X
3438(trivial)X
3649(form)X
3825(of)X
3912(authentica-)X
555 1032(tion,)N
719(the)X
837(client)X
1035(and)X
1171(the)X
1289(server)X
1506(roll)X
1637(dice)X
1791(to)X
1873(see)X
1996(who)X
2154(gets)X
2303(to)X
2385(survive.)X
2681(If)X
2755(the)X
2873(exclusive-or)X
3290(of)X
3377(the)X
3495(respective)X
3841(low)X
3981(bits)X
4116(of)X
555 1122(the)N
673(client's)X
929(and)X
1065(the)X
1183(server's)X
1458(random)X
1723(numbers)X
2019(is)X
2092(1,)X
2172(the)X
2290(server)X
2507(wins,)X
2698(otherwise)X
3030(the)X
3148(client)X
3346(wins.)X
3557(The)X
3702(loser)X
3878(sets)X
4018(a)X
4074(\257ag)X
2 f
555 1212(pleasequit)N
1 f
904(that)X
1044(eventually)X
1398(allows)X
1627(it)X
1691(to)X
1773(exit)X
1913(at)X
1991(the)X
2109(bottom)X
2355(of)X
2442(the)X
2560(main)X
2740(loop.)X
2942(If)X
3016(at)X
3094(any)X
3230(time)X
3392(a)X
3448(problem)X
3735(occurs\320a)X
4081(read)X
555 1302(from)N
731(the)X
849(server)X
1066(fails,)X
1244(or)X
1331(the)X
1449(wrong)X
1674(magic)X
1890(number)X
2155(is)X
2228(returned\320the)X
2694(client)X
2892(worm)X
3099(returns)X
3342(from)X
3518(the)X
3636(function,)X
3943(becoming)X
555 1392(a)N
611(worm)X
818(that)X
958(never)X
1157(acts)X
1302(as)X
1389(a)X
1445(server)X
1662(and)X
1798(hence)X
2006(does)X
2173(not)X
2295(engage)X
2543(in)X
2625(population)X
2987(control.)X
3274(Perhaps)X
3548(as)X
3635(a)X
3691(precaution)X
4050(against)X
555 1482(a)N
611(cataleptic)X
939(server,)X
1176(a)X
1232(test)X
1363(at)X
1441(the)X
1559(top)X
1681(of)X
1768(the)X
1886(function)X
2173(causes)X
2403(1)X
2463(in)X
2545(7)X
2605(worms)X
2843(to)X
2925(skip)X
3078(population)X
3440(control.)X
3727(Thus)X
3907(the)X
4025(worm)X
555 1572(\256nishes)N
819(the)X
937(population)X
1299(game)X
1493(in)X
2 f
1575(checkother)X
1 f
1928(\(\))X
2002(in)X
2084(one)X
2220(of)X
2307(three)X
2488(states:)X
2708(scheduled)X
3049(to)X
3131(die)X
3249(after)X
3417(some)X
3606(time,)X
3788(with)X
2 f
3950(pleasequit)X
1 f
555 1662(set;)N
686(running)X
955(as)X
1042(a)X
1098(server,)X
1335(with)X
1497(the)X
1615(possibility)X
1967(of)X
2054(losing)X
2269(the)X
2387(game)X
2581(later;)X
2766(and)X
2902(immortal,)X
3235(safe)X
3385(from)X
3561(the)X
3679(gamble)X
3935(of)X
4022(popula-)X
555 1752(tion)N
699(control.)X
755 1875(A)N
833(complementary)X
1352(routine)X
2 f
1599(other_sleep)X
1 f
1973(\(\))X
2047(executes)X
2344(the)X
2462(server)X
2679(function.)X
3006(It)X
3075(is)X
3148(passed)X
3382(a)X
3438(time)X
3600(in)X
3682(seconds,)X
3976(and)X
4112(it)X
555 1965(uses)N
713(the)X
831(Berkeley)X
2 f
1141(select)X
1 f
1324(\(\))X
1398(system)X
1640(call)X
1776(to)X
1858(wait)X
2016(for)X
2130(that)X
2270(amount)X
2530(of)X
2617(time)X
2779(accepting)X
3107(connections)X
3510(from)X
3686(clients.)X
3955(On)X
4073(entry)X
555 2055(to)N
637(the)X
755(function,)X
1062(it)X
1126(tests)X
1288(to)X
1370(see)X
1493(whether)X
1772(it)X
1836(has)X
1963(a)X
2019(communications)X
2568(port)X
2717(with)X
2879(which)X
3095(to)X
3177(accept)X
3403(connections;)X
3828(if)X
3897(not,)X
4039(it)X
4103(sim-)X
555 2145(ply)N
677(sleeps)X
893(for)X
1007(the)X
1125(speci\256ed)X
1430(amount)X
1690(of)X
1777(time)X
1939(and)X
2075(returns.)X
2358(Otherwise)X
2708(it)X
2772(loops)X
2965(on)X
2 f
3065(select)X
1 f
3248(\(\),)X
3342(decrementing)X
3799(its)X
3894(time)X
555 2235(remaining)N
900(after)X
1068(serving)X
1324(a)X
1380(client)X
1578(until)X
1744(no)X
1844(more)X
2029(time)X
2191(is)X
2264(left)X
2391(and)X
2527(the)X
2645(function)X
2932(returns.)X
3215(When)X
3427(the)X
3545(server)X
3762(acquires)X
4050(a)X
555 2325(client,)N
773(it)X
837(performs)X
1147(the)X
1265(inverse)X
1517(of)X
1604(the)X
1722(client's)X
1978(protocol,)X
2285(eventually)X
2639(deciding)X
2935(whether)X
3214(to)X
3296(proceed)X
3571(or)X
3658(to)X
3740(quit.)X
2 f
555 2415(other_sleep)N
1 f
929(\(\))X
1003(is)X
1076(called)X
1288(from)X
1464(many)X
1662(different)X
1959(places)X
2180(in)X
2262(the)X
2380(code,)X
2572(so)X
2663(that)X
2803(clients)X
3032(are)X
3151(not)X
3273(kept)X
3431(waiting)X
3691(too)X
3813(long.)X
755 2538(Given)N
971(the)X
1089(worm's)X
1354(elaborate)X
1669(scheme)X
1930(for)X
2044(controlling)X
2415(re-infection,)X
2830(what)X
3006(led)X
3124(it)X
3188(to)X
3270(reproduce)X
3612(so)X
3703(quickly)X
3963(on)X
4063(an)X
555 2628(individual)N
899(machine)X
1191(that)X
1331(it)X
1395(could)X
1593(swamp)X
1840(it?)X
1960(One)X
2114(culprit)X
2343(is)X
2416(the)X
2534(1)X
2594(in)X
2676(7)X
2736(test)X
2867(in)X
2 f
2949(checkother)X
1 f
3302(\(\):)X
3398(worms)X
3636(that)X
3776(skip)X
3929(the)X
4047(client)X
555 2718(phase)N
758(become)X
1028(immortal,)X
1361(and)X
1497(thus)X
1650(don't)X
1839(risk)X
1979(being)X
2177(eliminated)X
2535(by)X
2635(a)X
2691(roll)X
2822(of)X
2909(the)X
3027(dice.)X
3221(Another)X
3504(source)X
3734(of)X
3821(system)X
4063(load-)X
555 2808(ing)N
677(is)X
750(the)X
868(problem)X
1155(that)X
1295(when)X
1489(a)X
1545(worm)X
1752(decides)X
2013(it)X
2077(has)X
2204(lost,)X
2359(it)X
2423(can)X
2555(still)X
2694(do)X
2794(a)X
2850(lot)X
2954(of)X
3041(work)X
3226(before)X
3452(it)X
3516(actually)X
3790(exits.)X
4001(The)X
555 2898(client)N
753(routine)X
1000(isn't)X
1162(even)X
1334(run)X
1461(until)X
1627(the)X
1745(newly)X
1961(born)X
2128(worm)X
2335(has)X
2462(attempted)X
2798(to)X
2880(infect)X
3083(at)X
3161(least)X
3328(one)X
3464(remote)X
3707(host,)X
3880(and)X
4016(even)X
4188(if)X
4257(a)X
555 2988(worm)N
762(loses)X
942(the)X
1060(roll,)X
1211(it)X
1275(continues)X
1602(executing)X
1934(to)X
2016(the)X
2134(bottom)X
2380(of)X
2467(the)X
2585(main)X
2765(loop,)X
2947(and)X
3083(even)X
3255(then)X
3413(it)X
3477(won't)X
3684(exit)X
3824(unless)X
4044(it)X
4108(has)X
555 3078(gone)N
731(through)X
1000(the)X
1118(main)X
1298(loop)X
1460(several)X
1708(times,)X
1921(limited)X
2167(by)X
2267(its)X
2362(progress)X
2654(in)X
2736(cracking)X
3033(passwords.)X
3427(Finally,)X
3693(new)X
3847(worms)X
4085(lose)X
555 3168(all)N
655(of)X
742(the)X
860(history)X
1102(of)X
1189(infection)X
1494(that)X
1634(their)X
1801(parents)X
2053(had,)X
2209(so)X
2300(the)X
2418(children)X
2701(of)X
2788(a)X
2844(worm)X
3051(are)X
3170(constantly)X
3519(trying)X
3730(to)X
3812(re-infect)X
4105(the)X
555 3258(parent's)N
834(host,)X
1007(as)X
1094(well)X
1252(as)X
1339(the)X
1457(other)X
1642(children's)X
1983(hosts.)X
2207(Put)X
2333(all)X
2433(of)X
2520(these)X
2705(factors)X
2944(together)X
3227(and)X
3363(it)X
3427(comes)X
3652(as)X
3739(no)X
3839(surprise)X
4113(that)X
555 3348(within)N
779(an)X
875(hour)X
1042(or)X
1129(two)X
1269(after)X
1437(infection,)X
1762(a)X
1818(machine)X
2110(may)X
2268(be)X
2364(entirely)X
2629(devoted)X
2903(to)X
2985(executing)X
3317(worms.)X
3 f
555 3534(4.4.)N
715(Locating)X
1037(new)X
1195(hosts)X
1388(to)X
1475(infect)X
1 f
755 3657(One)N
909(of)X
996(the)X
1114(characteristics)X
1594(of)X
1681(the)X
1799(worm)X
2006(is)X
2079(that)X
2219(all)X
2319(of)X
2406(its)X
2501(attacks)X
2744(are)X
2863(active,)X
3095(never)X
3294(passive.)X
3590(A)X
3668(consequence)X
4099(of)X
555 3747(this)N
690(is)X
763(that)X
903(the)X
1021(worm)X
1228(can't)X
1409(wait)X
1567(for)X
1681(a)X
1737(user)X
1891(to)X
1973(take)X
2127(it)X
2191(over)X
2354(to)X
2436(another)X
2697(machine)X
2989(like)X
3129(gum)X
3291(on)X
3391(a)X
3447(shoe\320it)X
3738(must)X
3913(search)X
4139(out)X
555 3837(hosts)N
739(on)X
839(its)X
934(own.)X
755 3960(The)N
900(worm)X
1107(has)X
1234(a)X
1290(very)X
1453(distinct)X
1708(list)X
1825(of)X
1912(priorities)X
2221(when)X
2415(hunting)X
2679(for)X
2793(hosts.)X
3017(Its)X
3117(favorite)X
3387(hosts)X
3571(are)X
3690(gateways;)X
4031(the)X
2 f
4149(hg)X
1 f
(\(\))S
555 4050(routine)N
802(tries)X
960(to)X
1042(infect)X
1245(each)X
1413(of)X
1500(the)X
1618(hosts)X
1802(it)X
1866(believes)X
2149(to)X
2231(be)X
2327(gateways.)X
2686(Only)X
2866(when)X
3060(all)X
3160(of)X
3247(the)X
3365(gateways)X
3684(are)X
3803(known)X
4041(to)X
4123(be)X
555 4140(infected)N
834(or)X
921(infection-proof)X
1427(does)X
1594(the)X
1712(worm)X
1919(go)X
2019(on)X
2119(to)X
2201(other)X
2386(hosts.)X
2 f
2610(hg)X
1 f
(\(\))S
2764(calls)X
2931(the)X
2 f
3049(rt_init)X
1 f
3248(\(\))X
3322(function)X
3609(to)X
3691(get)X
3809(a)X
3865(list)X
3982(of)X
4069(gate-)X
555 4230(ways;)N
762(this)X
897(list)X
1014(is)X
1087(derived)X
1348(by)X
1448(running)X
1717(the)X
2 f
1835(netstat)X
1 f
2068(network)X
2351(status)X
2553(program)X
2845(and)X
2981(parsing)X
3237(its)X
3332(output.)X
3596(The)X
3741(worm)X
3948(is)X
4021(careful)X
555 4320(to)N
637(skip)X
790(the)X
908(loopback)X
1222(device)X
1452(and)X
1588(any)X
1724(local)X
1900(interfaces)X
2233(\(in)X
2342(the)X
2460(event)X
2654(that)X
2794(the)X
2912(current)X
3160(host)X
3313(is)X
3386(a)X
3442(gateway\);)X
3779(when)X
3973(it)X
555 4410(\256nishes,)N
839(it)X
903(randomizes)X
1293(the)X
1411(order)X
1601(of)X
1688(the)X
1806(list)X
1923(and)X
2059(adds)X
2226(the)X
2344(\256rst)X
2488(20)X
2588(gateways)X
2907(to)X
2989(the)X
3107(host)X
3260(table)X
3436(to)X
3518(speed)X
3721(up)X
3821(the)X
3939(initial)X
555 4500(searches.)N
888(It)X
957(then)X
1115(tries)X
1273(each)X
1441(gateway)X
1729(in)X
1811(sequence)X
2126(until)X
2292(it)X
2356(\256nds)X
2531(a)X
2587(host)X
2740(that)X
2880(can)X
3012(be)X
3108(infected,)X
3407(or)X
3494(it)X
3558(runs)X
3716(out)X
3838(of)X
3925(hosts.)X
755 4623(After)N
945(taking)X
1165(care)X
1320(of)X
1407(gateways,)X
1746(the)X
1864(worm's)X
2129(next)X
2287(priority)X
2547(is)X
2620(hosts)X
2804(whose)X
3029(names)X
3254(were)X
3431(found)X
3638(in)X
3720(a)X
3776(scan)X
3939(of)X
4026(system)X
555 4713(\256les.)N
748(At)X
848(the)X
966(start)X
1124(of)X
1211(password)X
1534(cracking,)X
1851(the)X
1969(\256les)X
2 f
2122(/etc/hosts.equiv)X
1 f
2638(\(which)X
2881(contains)X
3168(names)X
3393(of)X
3480(hosts)X
3664(to)X
3746(which)X
3962(the)X
4080(local)X
555 4803(host)N
708(grants)X
924(user)X
1078(permissions)X
1480(without)X
1744(authentication\))X
2245(and)X
2 f
2381(/.rhosts)X
1 f
2638(\(which)X
2881(contains)X
3168(names)X
3393(of)X
3480(hosts)X
3664(from)X
3840(which)X
4056(the)X
555 4893(local)N
731(host)X
884(permits)X
1144(remote)X
1387(privileged)X
1732(logins\))X
1974(are)X
2093(examined,)X
2445(as)X
2532(are)X
2651(all)X
2751(users')X
2 f
2963(.forward)X
1 f
3260(\256les)X
3413(\(which)X
3656(list)X
3773(hosts)X
3957(to)X
4039(which)X
555 4983(mail)N
717(is)X
790(forwarded)X
1141(from)X
1317(the)X
1435(current)X
1683(host\).)X
1903(These)X
2115(hosts)X
2299(are)X
2418(\257agged)X
2674(so)X
2765(that)X
2905(they)X
3063(can)X
3195(be)X
3291(scanned)X
3570(earlier)X
3796(than)X
3954(the)X
4072(rest.)X
555 5073(The)N
2 f
700(hi)X
1 f
762(\(\))X
836(function)X
1123(is)X
1196(then)X
1354(responsible)X
1739(for)X
1853(attacking)X
2167(these)X
2352(hosts.)X
755 5196(When)N
967(the)X
1085(most)X
1260(pro\256table)X
1587(hosts)X
1771(have)X
1943(been)X
2115(used)X
2282(up,)X
2402(the)X
2520(worm)X
2727(starts)X
2916(looking)X
3180(for)X
3294(hosts)X
3478(that)X
3618(aren't)X
3826(recorded)X
4128(in)X
555 5286(\256les.)N
748(The)X
893(routine)X
2 f
1140(hl)X
1 f
1202(\(\))X
1276(checks)X
1515(local)X
1691(networks:)X
2027(it)X
2091(runs)X
2249(through)X
2518(the)X
2636(local)X
2812(host's)X
3023(addresses,)X
3371(masking)X
3662(off)X
3776(the)X
3894(host)X
4047(part)X
555 5376(and)N
691(substituting)X
1083(a)X
1139(random)X
1404(value.)X
2 f
1638(ha)X
1 f
(\(\))S
1792(does)X
1959(the)X
2077(same)X
2262(job)X
2384(for)X
2498(remote)X
2741(hosts,)X
2945(checking)X
3255(alternate)X
3552(addresses)X
3880(of)X
3967(gateways.)X
555 5466(Special)N
811(code)X
983(handles)X
1248(the)X
1366(ARPAnet)X
1697(practice)X
1972(of)X
2059(putting)X
2305(the)X
2423(IMP)X
2585(number)X
2850(in)X
2932(the)X
3050(low)X
3190(host)X
3343(bits)X
3478(and)X
3614(the)X
3732(actual)X
3944(IMP)X
4106(port)X
555 5556(\(representing)N
999(the)X
1117(host\))X
1297(in)X
1379(the)X
1497(high)X
1659(host)X
1812(bits.)X
1987(The)X
2132(function)X
2419(that)X
2559(runs)X
2717(these)X
2902(random)X
3167(probes,)X
3421(which)X
3637(we)X
3751(named)X
2 f
555 5646(hack_netof)N
1 f
907(\(\),)X
1001(seems)X
1217(to)X
1299(have)X
1471(a)X
1527(bug)X
1667(that)X
1807(prevents)X
2099(it)X
2163(from)X
2339(attacking)X
2653(hosts)X
2837(on)X
2937(local)X
3113(networks;)X
3449(this)X
3584(may)X
3742(be)X
3838(due)X
3974(to)X
4056(our)X
555 5736(own)N
713(misunderstanding,)X
1322(of)X
1409(course,)X
1659(but)X
1781(in)X
1863(any)X
1999(case)X
2158(the)X
2276(check)X
2484(of)X
2571(hosts)X
2755(from)X
2931(system)X
3173(\256les)X
3326(should)X
3559(be)X
3655(suf\256cient)X
3973(to)X
4055(cover)X

8 p
%%Page: 8 8
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(8)X
1 f
555 762(all)N
655(or)X
742(nearly)X
963(all)X
1063(of)X
1150(the)X
1268(local)X
1444(hosts)X
1628(anyway.)X
755 885(Password)N
1082(cracking)X
1379(is)X
1452(another)X
1713(generator)X
2037(of)X
2124(host)X
2277(names,)X
2522(but)X
2644(since)X
2829(this)X
2964(is)X
3037(handled)X
3311(separately)X
3657(from)X
3833(the)X
3951(usual)X
4140(host)X
555 975(attack)N
767(scheme)X
1028(presented)X
1356(here,)X
1535(it)X
1599(will)X
1743(be)X
1839(discussed)X
2166(below)X
2382(with)X
2544(the)X
2662(other)X
2847(material)X
3130(on)X
3230(passwords.)X
3 f
555 1161(4.5.)N
715(Security)X
1020(holes)X
1 f
9 s
715 1275(The)N
850(\256rst)X
985(fact)X
1116(to)X
1195(face)X
1338(is)X
1409(that)X
1540(Unix)X
1707(was)X
1842(not)X
1957(developed)X
2275(with)X
2425(security,)X
2693(in)X
2771(any)X
2897(realistic)X
3147(sense,)X
3343(in)X
3421(mind...)X
3663([Dennis)X
3913(Ritchie,)X
715 1356(``On)N
869(the)X
975(Security)X
1233(of)X
1311(Unix''])X
10 s
755 1512(This)N
917(section)X
1164(discusses)X
1482(the)X
1600(TCP)X
1766(services)X
2045(used)X
2212(by)X
2312(the)X
2430(worm)X
2637(to)X
2719(penetrate)X
3034(systems.)X
3347(It's)X
3474(a)X
3530(touch)X
3728(unfair)X
3940(to)X
4022(use)X
4149(the)X
555 1602(quote)N
753(above)X
965(when)X
1159(the)X
1277(implementation)X
1799(of)X
1886(the)X
2004(services)X
2283(we're)X
2487(about)X
2685(to)X
2767(discuss)X
3018(was)X
3163(distributed)X
3525(by)X
3625(Berkeley)X
3935(rather)X
4143(than)X
555 1692(Bell)N
708(Labs,)X
904(but)X
1026(the)X
1144(sentiment)X
1475(is)X
1548(appropriate.)X
1974(For)X
2105(a)X
2161(long)X
2323(time)X
2485(the)X
2603(balance)X
2869(between)X
3157(security)X
3431(and)X
3567(convenience)X
3989(on)X
4089(Unix)X
555 1782(systems)N
828(has)X
955(been)X
1127(tilted)X
1311(in)X
1393(favor)X
1583(of)X
1670(convenience.)X
2132(As)X
2241(Brian)X
2439(Reid)X
2610(has)X
2737(said)X
2886(about)X
3084(the)X
3202(break-in)X
3490(at)X
3568(Stanford)X
3864(two)X
4004(years)X
555 1872(ago:)N
713(``Programmer)X
1188(convenience)X
1610(is)X
1683(the)X
1801(antithesis)X
2123(of)X
2210(security,)X
2504(because)X
2779(it)X
2843(is)X
2916(going)X
3118(to)X
3200(become)X
3470(intruder)X
3744(convenience)X
4166(if)X
555 1962(the)N
673(programmer's)X
1148(account)X
1418(is)X
1491(ever)X
1650(compromised.'')X
2180(The)X
2325(lesson)X
2545(from)X
2721(that)X
2861(experience)X
3230(seems)X
3446(to)X
3528(have)X
3700(been)X
3872(forgotten)X
4186(by)X
555 2052(most)N
730(people,)X
984(but)X
1106(not)X
1228(by)X
1328(the)X
1446(author)X
1671(of)X
1758(the)X
1876(worm.)X
3 f
555 2238(4.5.1.)N
775(Rsh)X
928(and)X
1076(rexec)X
1 f
9 s
715 2352(These)N
906(notes)X
1077(describe)X
1336(how)X
1479(the)X
1586(design)X
1793(of)X
1872(TCP/IP)X
2107(and)X
2230(the)X
2337(4.2BSD)X
2586(implementation)X
3057(allow)X
3235(users)X
3401(on)X
3491(untrusted)X
3777(and)X
3899(possibly)X
715 2433(very)N
871(distant)X
1091(hosts)X
1267(to)X
1351(masquerade)X
1722(as)X
1809(users)X
1984(on)X
2083(trusted)X
2306(hosts.)X
2517([Robert)X
2764(T.)X
2853(Morris,)X
3094(``A)X
3221(Weakness)X
3540(in)X
3623(the)X
3738(4.2BSD)X
3995(Unix)X
715 2514(TCP/IP)N
949(Software''])X
2 f
10 s
755 2670(Rsh)N
1 f
895(and)X
2 f
1031(rexec)X
1 f
1226(are)X
1345(network)X
1628(services)X
1907(which)X
2123(offer)X
2300(remote)X
2543(command)X
2879(interpreters.)X
2 f
3305(Rexec)X
1 f
3518(uses)X
3676(password)X
3999(authenti-)X
555 2760(cation;)N
2 f
793(rsh)X
1 f
915(relies)X
1109(on)X
1209(a)X
1265(``privileged'')X
1718(originating)X
2089(port)X
2238(and)X
2374(permissions)X
2776(\256les.)X
2969(Two)X
3136(vulnerabilities)X
3614(are)X
3733(exploited)X
4051(by)X
4151(the)X
555 2850(worm\320the)N
940(likelihood)X
1284(that)X
1424(a)X
1480(remote)X
1723(machine)X
2015(that)X
2155(has)X
2282(an)X
2378(account)X
2648(for)X
2762(a)X
2818(local)X
2994(user)X
3148(will)X
3292(have)X
3464(the)X
3582(same)X
3767(password)X
4090(as)X
4177(the)X
555 2940(local)N
731(account,)X
1021(allowing)X
1321(penetration)X
1702(through)X
2 f
1971(rexec)X
1 f
2146(,)X
2186(and)X
2322(the)X
2440(likelihood)X
2784(that)X
2924(such)X
3091(a)X
3147(remote)X
3390(account)X
3660(will)X
3804(include)X
4060(the)X
555 3030(local)N
731(host)X
884(in)X
966(its)X
2 f
1061(rsh)X
1 f
1183(permissions)X
1585(\256les.)X
1778(Both)X
1953(of)X
2040(these)X
2225(vulnerabilities)X
2703(are)X
2822(really)X
3025(problems)X
3343(with)X
3505(laxness)X
3761(or)X
3848(convenience)X
555 3120(for)N
669(users)X
854(and)X
990(system)X
1232(administrators)X
1710(rather)X
1918(than)X
2076(actual)X
2288(bugs,)X
2479(but)X
2601(they)X
2759(represent)X
3074(avenues)X
3353(for)X
3467(infection)X
3772(just)X
3907(like)X
4047(inad-)X
555 3210(vertent)N
798(security)X
1072(bugs.)X
755 3333(The)N
900(\256rst)X
1044(use)X
1171(of)X
2 f
1258(rsh)X
1 f
1380(by)X
1480(the)X
1598(worm)X
1805(is)X
1878(fairly)X
2072(simple:)X
2327(it)X
2391(looks)X
2584(for)X
2698(a)X
2754(remote)X
2997(account)X
3267(with)X
3429(the)X
3547(same)X
3732(name)X
3926(as)X
4013(the)X
4131(one)X
555 3423(that)N
695(is)X
768(\(unsuspectingly\))X
1322(running)X
1591(the)X
1709(worm)X
1916(on)X
2016(the)X
2134(local)X
2310(machine.)X
2642(This)X
2804(test)X
2935(is)X
3008(part)X
3153(of)X
3240(the)X
3358(standard)X
3650(menu)X
3848(of)X
3935(hacks)X
4138(con-)X
555 3513(ducted)N
789(for)X
903(each)X
1071(host;)X
1246(if)X
1315(it)X
1379(fails,)X
1557(the)X
1675(worm)X
1882(falls)X
2040(back)X
2212(upon)X
2 f
2392(\256nger)X
1 f
2579(,)X
2619(then)X
2 f
2777(sendmail)X
1 f
3066(.)X
3126(Many)X
3333(sites,)X
3515(including)X
3837(Utah,)X
4033(already)X
555 3603(were)N
732(protected)X
1051(from)X
1227(this)X
1362(trivial)X
1573(attack)X
1785(by)X
1885(not)X
2007(providing)X
2338(remote)X
2581(shells)X
2783(for)X
2897(pseudo-users)X
3336(like)X
2 f
3476(daemon)X
1 f
3750(or)X
2 f
3837(nobody)X
1 f
4073(.)X
755 3726(A)N
833(more)X
1018(sophisticated)X
1456(use)X
1583(of)X
1670(these)X
1855(services)X
2134(is)X
2207(found)X
2414(in)X
2496(the)X
2614(password)X
2937(cracking)X
3234(routines.)X
3552(After)X
3742(a)X
3798(password)X
4121(is)X
555 3816(successfully)N
967(guessed,)X
1261(the)X
1379(worm)X
1586(immediately)X
2006(tries)X
2164(to)X
2246(penetrate)X
2561(remote)X
2804(hosts)X
2988(associated)X
3338(with)X
3500(the)X
3618(broken)X
3861(account.)X
4171(It)X
555 3906(reads)N
745(the)X
863(user's)X
2 f
1075(.forward)X
1 f
1372(\256le)X
1494(\(which)X
1737(contains)X
2024(an)X
2120(address)X
2381(to)X
2463(which)X
2679(mail)X
2841(is)X
2914(forwarded\))X
3292(and)X
2 f
3428(.rhosts)X
1 f
3663(\256le)X
3785(\(which)X
4028(contains)X
555 3996(a)N
611(list)X
728(of)X
815(hosts)X
999(and)X
1135(optionally)X
1479(user)X
1633(names)X
1858(on)X
1958(those)X
2147(hosts)X
2331(which)X
2547(are)X
2666(granted)X
2927(permission)X
3298(to)X
3380(access)X
3606(the)X
3724(local)X
3900(machine)X
555 4086(with)N
2 f
717(rsh)X
1 f
839(bypassing)X
1179(the)X
1297(usual)X
1486(password)X
1809(authentication\),)X
2330(trying)X
2541(these)X
2726(hostnames)X
3084(until)X
3250(it)X
3314(succeeds.)X
3660(Each)X
3841(target)X
4044(host)X
4197(is)X
555 4176(attacked)N
843(in)X
925(two)X
1065(ways.)X
1290(The)X
1435(worm)X
1642(\256rst)X
1786(contacts)X
2069(the)X
2187(remote)X
2430(host's)X
2 f
2641(rexec)X
1 f
2836(server)X
3053(and)X
3189(sends)X
3387(it)X
3451(the)X
3569(account)X
3839(name)X
4033(found)X
555 4266(in)N
637(the)X
2 f
755(.forward)X
1 f
1052(or)X
2 f
1139(.rhosts)X
1 f
1374(\256les)X
1527(followed)X
1832(by)X
1932(the)X
2050(guessed)X
2324(password.)X
2687(If)X
2761(this)X
2896(fails,)X
3074(the)X
3192(worm)X
3399(connects)X
3700(to)X
3782(the)X
3900(local)X
2 f
4076(rexec)X
1 f
555 4356(server)N
772(with)X
934(the)X
1052(local)X
1228(account)X
1498(name)X
1692(and)X
1828(uses)X
1986(that)X
2126(to)X
2208(contact)X
2460(the)X
2578(target's)X
2 f
2839(rsh)X
1 f
2961(server.)X
3218(The)X
3363(remote)X
2 f
3606(rsh)X
1 f
3728(server)X
3945(will)X
4089(permit)X
555 4446(the)N
673(connection)X
1045(provided)X
1350(the)X
1468(name)X
1662(of)X
1749(the)X
1867(local)X
2043(host)X
2196(appears)X
2462(in)X
2544(either)X
2747(the)X
2 f
2865(/etc/hosts.equiv)X
1 f
3381(\256le)X
3503(or)X
3590(the)X
3708(user's)X
3920(private)X
2 f
555 4536(.rhosts)N
1 f
790(\256le.)X
755 4659(Strengthening)N
1224(these)X
1409(network)X
1692(services)X
1971(is)X
2044(far)X
2154(more)X
2339(problematic)X
2742(than)X
2900(\256xing)X
2 f
3106(\256nger)X
1 f
3313(and)X
2 f
3449(sendmail)X
1 f
3738(,)X
3778(unfortunately.)X
555 4749(Users)N
758(don't)X
947(like)X
1087(the)X
1205(inconvenience)X
1689(of)X
1776(typing)X
2000(their)X
2167(password)X
2490(when)X
2684(logging)X
2948(in)X
3030(on)X
3130(a)X
3186(trusted)X
3424(local)X
3600(host,)X
3773(and)X
3909(they)X
4067(don't)X
555 4839(want)N
731(to)X
813(remember)X
1159(different)X
1456(passwords)X
1810(for)X
1924(each)X
2092(of)X
2179(the)X
2297(many)X
2495(hosts)X
2679(they)X
2837(may)X
2995(have)X
3167(to)X
3249(deal)X
3403(with.)X
3605(Some)X
3807(of)X
3894(the)X
4012(solu-)X
555 4929(tions)N
730(may)X
888(be)X
984(worse)X
1196(than)X
1354(the)X
1472(disease\320for)X
1898(example,)X
2210(a)X
2266(user)X
2420(who)X
2578(is)X
2651(forced)X
2877(to)X
2959(deal)X
3113(with)X
3275(many)X
3473(passwords)X
3827(is)X
3900(more)X
4085(likely)X
555 5019(to)N
637(write)X
822(them)X
1002(down)X
1200(somewhere.)X
3 f
555 5205(4.5.2.)N
775(Finger)X
1 f
2 f
9 s
715 5319(gets)N
1 f
851(was)X
983(removed)X
1255(from)X
1415(our)X
1531([C)X
1623(library])X
1859(a)X
1911(couple)X
2123(days)X
2274(ago.)X
2433([Bill)X
2584(Cheswick)X
2887(at)X
2958(AT&T)X
3173(Bell)X
3312(Labs)X
3471(Research,)X
3772(private)X
3991(com-)X
715 5400(munication,)N
1075(11/9/88])X
10 s
755 5556(Probably)N
1064(the)X
1182(neatest)X
1425(hack)X
1597(in)X
1679(the)X
1797(worm)X
2004(is)X
2077(its)X
2172(co-opting)X
2499(of)X
2586(the)X
2704(TCP)X
2 f
2870(\256nger)X
1 f
3077(service)X
3325(to)X
3407(gain)X
3565(entry)X
3750(to)X
3832(a)X
3888(system.)X
2 f
555 5646(Finger)N
1 f
793(reports)X
1036(information)X
1434(about)X
1632(a)X
1688(user)X
1842(on)X
1942(a)X
1998(host,)X
2171(usually)X
2422(including)X
2744(things)X
2959(like)X
3099(the)X
3217(user's)X
3429(full)X
3560(name,)X
3774(where)X
3991(their)X

9 p
%%Page: 9 9
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4259(9)X
1 f
555 778(of\256ce)N
758(is,)X
851(the)X
969(number)X
1234(of)X
1321(their)X
1488(phone)X
1704(extension)X
2031(and)X
2167(so)X
2258(on.)X
2398(The)X
2543(Berkeley)X
7 s
2833 746(3)N
10 s
2881 778(version)N
3137(of)X
3224(the)X
2 f
3342(\256nger)X
1 f
3549(server)X
3766(is)X
3839(a)X
3895(really)X
4098(trivial)X
555 868(program:)N
869(it)X
933(reads)X
1123(a)X
1179(request)X
1431(from)X
1607(the)X
1725(originating)X
2096(host,)X
2269(then)X
2427(runs)X
2585(the)X
2703(local)X
2 f
2879(\256nger)X
1 f
3086(program)X
3378(with)X
3540(the)X
3658(request)X
3910(as)X
3997(an)X
4093(argu-)X
555 958(ment)N
735(and)X
871(ships)X
1055(the)X
1173(output)X
1397(back.)X
1609(Unfortunately)X
2079(the)X
2 f
2197(\256nger)X
1 f
2404(server)X
2621(reads)X
2811(the)X
2929(remote)X
3172(request)X
3424(with)X
2 f
3586(gets)X
1 f
3715(\(\),)X
3809(a)X
3865(standard)X
4157(C)X
555 1048(library)N
789(routine)X
1036(that)X
1176(dates)X
1361(from)X
1537(the)X
1655(dawn)X
1849(of)X
1936(time)X
2098(and)X
2234(which)X
2450(does)X
2617(not)X
2739(check)X
2947(for)X
3061(over\257ow)X
3366(of)X
3453(the)X
3571(server's)X
3846(512)X
3986(byte)X
555 1138(request)N
807(buffer)X
1024(on)X
1124(the)X
1242(stack.)X
1467(The)X
1612(worm)X
1819(supplies)X
2101(the)X
2219(\256nger)X
2426(server)X
2643(with)X
2805(a)X
2861(request)X
3113(that)X
3253(is)X
3326(536)X
3466(bytes)X
3655(long;)X
3839(the)X
3957(bulk)X
4119(of)X
555 1228(the)N
673(request)X
925(is)X
998(some)X
1187(VAX)X
1381(machine)X
1673(code)X
1845(that)X
1985(asks)X
2143(the)X
2261(system)X
2503(to)X
2585(execute)X
2851(the)X
2969(command)X
3305(interpreter)X
2 f
3660(sh)X
1 f
3731(,)X
3771(and)X
3907(the)X
4025(extra)X
4206(24)X
555 1318(bytes)N
744(represent)X
1059(just)X
1194(enough)X
1450(data)X
1604(to)X
1686(write)X
1871(over)X
2034(the)X
2152(server's)X
2427(stack)X
2612(frame)X
2820(for)X
2934(the)X
3052(main)X
3232(routine.)X
3519(When)X
3731(the)X
3849(main)X
4029(routine)X
555 1408(of)N
642(the)X
760(server)X
977(exits,)X
1168(the)X
1286(calling)X
1524(function's)X
1869(program)X
2161(counter)X
2422(is)X
2495(supposed)X
2813(to)X
2895(be)X
2991(restored)X
3270(from)X
3446(the)X
3564(stack,)X
3769(but)X
3891(the)X
4009(worm)X
555 1498(wrote)N
758(over)X
921(this)X
1056(program)X
1348(counter)X
1609(with)X
1771(one)X
1907(that)X
2047(points)X
2262(to)X
2344(the)X
2462(VAX)X
2656(code)X
2828(in)X
2910(the)X
3028(request)X
3280(buffer.)X
3537(The)X
3682(program)X
3974(jumps)X
4189(to)X
555 1588(the)N
673(worm's)X
938(code)X
1110(and)X
1246(runs)X
1404(the)X
1522(command)X
1858(interpreter,)X
2233(which)X
2449(the)X
2567(worm)X
2774(uses)X
2932(to)X
3014(enter)X
3195(its)X
3290(bootstrap.)X
755 1711(Not)N
895(surprisingly,)X
1317(shortly)X
1559(after)X
1727(the)X
1845(worm)X
2052(was)X
2197(reported)X
2485(to)X
2567(use)X
2694(this)X
2829(feature)X
3073(of)X
2 f
3160(gets)X
1 f
3289(\(\),)X
3383(a)X
3439(number)X
3704(of)X
3791(people)X
4025(replaced)X
555 1801(all)N
655(instances)X
969(of)X
2 f
1056(gets)X
1 f
1185(\(\))X
1259(in)X
1341(system)X
1583(code)X
1755(with)X
1917(sensible)X
2195(code)X
2367(that)X
2507(checks)X
2746(the)X
2864(length)X
3084(of)X
3171(the)X
3289(buffer.)X
3546(Some)X
3748(even)X
3920(went)X
4096(so)X
4187(far)X
555 1891(as)N
642(to)X
724(remove)X
2 f
985(gets)X
1 f
1114(\(\))X
1188(from)X
1364(the)X
1482(library,)X
1736(although)X
2036(the)X
2154(function)X
2441(is)X
2514(apparently)X
2873(mandated)X
3205(by)X
3305(the)X
3423(forthcoming)X
3839(ANSI)X
4046(C)X
4119(stan-)X
555 1997(dard)N
7 s
698 1965(4)N
10 s
1997(.)Y
786(So)X
890(far)X
1000(no)X
1100(one)X
1236(has)X
1363(claimed)X
1637(to)X
1719(have)X
1891(exercised)X
2215(the)X
2333(\256nger)X
2540(server)X
2757(bug)X
2897(before)X
3123(the)X
3241(worm)X
3448(incident,)X
3746(but)X
3868(in)X
3950(May)X
4117(1988,)X
555 2087(students)N
837(at)X
915(UC)X
1046(Santa)X
1244(Cruz)X
1420(apparently)X
1779(penetrated)X
2134(security)X
2408(using)X
2601(a)X
2657(different)X
2954(\256nger)X
3161(server)X
3378(with)X
3540(a)X
3596(similar)X
3838(bug.)X
4018(The)X
4163(sys-)X
555 2177(tem)N
695(administrator)X
1142(at)X
1220(UCSC)X
1448(noticed)X
1704(that)X
1844(the)X
1962(Berkeley)X
2272(\256nger)X
2479(server)X
2696(had)X
2832(a)X
2888(similar)X
3130(bug)X
3270(and)X
3406(sent)X
3555(mail)X
3717(to)X
3799(Berkeley,)X
4129(but)X
555 2267(the)N
673(seriousness)X
1058(of)X
1145(the)X
1263(problem)X
1550(was)X
1695(not)X
1817(appreciated)X
2208(at)X
2286(the)X
2404(time)X
2566(\(Jim)X
2728(Haynes,)X
3009(private)X
3252(communication\).)X
755 2390(One)N
909(\256nal)X
1071(note:)X
1251(the)X
1369(worm)X
1576(is)X
1649(meticulous)X
2020(in)X
2102(some)X
2291(areas)X
2477(but)X
2599(not)X
2721(in)X
2803(others.)X
3059(From)X
3252(what)X
3428(we)X
3542(can)X
3674(tell,)X
3816(there)X
3997(was)X
4142(no)X
555 2480(Sun-3)N
766(version)X
1022(of)X
1109(the)X
2 f
1227(\256nger)X
1 f
1434(intrusion)X
1738(even)X
1910(though)X
2152(the)X
2270(Sun-3)X
2481(server)X
2698(was)X
2843(just)X
2978(as)X
3065(vulnerable)X
3424(as)X
3511(the)X
3629(VAX)X
3823(one.)X
3999(Perhaps)X
555 2570(the)N
673(author)X
898(had)X
1034(VAX)X
1228(sources)X
1489(available)X
1799(but)X
1921(not)X
2043(Sun)X
2187(sources?)X
3 f
555 2756(4.5.3.)N
775(Sendmail)X
1 f
9 s
715 2870([T]he)N
899(trap)X
1035(door)X
1191(resulted)X
1443(from)X
1607(two)X
1739(distinct)X
1975(`features')X
2275(that,)X
2425(although)X
2701(innocent)X
2973(by)X
3069(themselves,)X
3431(were)X
3595(deadly)X
3811(when)X
3991(com-)X
715 2951(bined)N
893(\(kind)X
1063(of)X
1141(like)X
1267(binary)X
1469(nerve)X
1647(gas\).)X
1821([Eric)X
1983(Allman,)X
2235(personal)X
2497(communication,)X
2981(11/22/88])X
10 s
755 3107(The)N
2 f
900(sendmail)X
1 f
1209(attack)X
1421(is)X
1494(perhaps)X
1764(the)X
1882(least)X
2049(preferred)X
2365(in)X
2447(the)X
2565(worm's)X
2830(arsenal,)X
3098(but)X
3220(in)X
3302(spite)X
3473(of)X
3560(that)X
3700(one)X
3836(site)X
3967(at)X
4045(Utah)X
555 3197(was)N
700(subjected)X
1023(to)X
1105(nearly)X
1326(150)X
2 f
1466(sendmail)X
1 f
1775(attacks)X
2018(on)X
2118(Black)X
2325(Thursday.)X
2 f
2688(Sendmail)X
1 f
3006(is)X
3079(the)X
3197(program)X
3489(that)X
3629(provides)X
3925(the)X
4043(SMTP)X
555 3287(mail)N
717(service)X
965(on)X
1065(TCP)X
1231(networks)X
1545(for)X
1659(Berkeley)X
1969(U)X
8 s
2027(NIX)X
10 s
2160(systems.)X
2473(It)X
2542(uses)X
2700(a)X
2756(simple)X
2989 0.2500(character-oriented)AX
3595(protocol)X
3882(to)X
3964(accept)X
555 3377(mail)N
717(from)X
893(remote)X
1136(sites.)X
1338(One)X
1492(feature)X
1736(of)X
2 f
1823(sendmail)X
1 f
2132(is)X
2205(that)X
2345(it)X
2409(permits)X
2669(mail)X
2831(to)X
2913(be)X
3009(delivered)X
3328(to)X
3410(processes)X
3738(instead)X
3985(of)X
4072(mail-)X
555 3467(box)N
695(\256les;)X
870(this)X
1005(can)X
1137(be)X
1233(used)X
1400(with)X
1562(\(say\))X
1743(the)X
2 f
1861(vacation)X
1 f
2157(program)X
2449(to)X
2531(notify)X
2742(senders)X
3003(that)X
3143(you)X
3283(are)X
3402(out)X
3524(of)X
3611(town)X
3791(and)X
3927(are)X
4046(tem-)X
555 3557(porarily)N
829(unable)X
1063(to)X
1145(respond)X
1419(to)X
1501(their)X
1668(mail.)X
1870(Normally)X
2197(this)X
2332(feature)X
2576(is)X
2649(only)X
2811(available)X
3121(to)X
3203(recipients.)X
3575(Unfortunately)X
4045(a)X
4101(little)X
555 3647(loophole)N
855(was)X
1000(accidentally)X
1408(created)X
1661(when)X
1855(a)X
1911(couple)X
2145(of)X
2232(earlier)X
2458(security)X
2732(bugs)X
2903(were)X
3080(being)X
3278(\256xed\320if)X
2 f
3587(sendmail)X
1 f
3896(is)X
3969(compiled)X
555 3737(with)N
717(the)X
2 f
835(DEBUG)X
1 f
1127(\257ag,)X
1287(and)X
1423(the)X
1541(sender)X
1771(at)X
1849(runtime)X
2118(asks)X
2276(that)X
2 f
2416(sendmail)X
1 f
2725(enter)X
2906(debug)X
3122(mode)X
3320(by)X
3420(sending)X
3689(the)X
2 f
3807(debug)X
1 f
4023(com-)X
555 3827(mand,)N
773(it)X
837(permits)X
1097(senders)X
1358(to)X
1440(pass)X
1598(in)X
1680(a)X
1736(command)X
2072(sequence)X
2387(instead)X
2634(of)X
2721(a)X
2777(user)X
2931(name)X
3125(for)X
3239(a)X
3295(recipient.)X
3636(Alas,)X
3823(most)X
3998(versions)X
555 3917(of)N
2 f
642(sendmail)X
1 f
951(are)X
1070(compiled)X
1388(with)X
2 f
1550(DEBUG)X
1 f
1822(,)X
1862(including)X
2184(the)X
2302(one)X
2438(that)X
2578(Sun)X
2722(sends)X
2920(out)X
3042(in)X
3124(its)X
3219(binary)X
3444(distribution.)X
3872(The)X
4017(worm)X
555 4007(mimics)N
810(a)X
866(remote)X
1109(SMTP)X
1337(connection,)X
1729(feeding)X
1990(in)X
2 f
2072(/dev/null)X
1 f
2372(as)X
2459(the)X
2577(name)X
2771(of)X
2858(the)X
2976(sender)X
3206(and)X
3342(a)X
3398(carefully)X
3704(crafted)X
3948(string)X
4150(as)X
555 4097(the)N
673(recipient.)X
1014(The)X
1159(string)X
1361(sets)X
1501(up)X
1601(a)X
1657(command)X
1993(that)X
2133(deletes)X
2376(the)X
2494(header)X
2729(of)X
2816(the)X
2934(message)X
3226(and)X
3362(passes)X
3587(the)X
3705(body)X
3885(to)X
3967(a)X
4023(com-)X
555 4187(mand)N
753(interpreter.)X
1148(The)X
1293(body)X
1473(contains)X
1760(a)X
1816(copy)X
1992(of)X
2079(the)X
2197(worm)X
2404(bootstrap)X
2722(source)X
2952(plus)X
3105(commands)X
3472(to)X
3554(compile)X
3832(and)X
3968(run)X
4095(it.)X
555 4277(After)N
745(the)X
863(worm)X
1070(\256nishes)X
1334(the)X
1452(protocol)X
1739(and)X
1875(closes)X
2091(the)X
2209(connection)X
2581(to)X
2 f
2663(sendmail)X
1 f
2952(,)X
2992(the)X
3110(bootstrap)X
3428(will)X
3572(be)X
3668(built)X
3834(on)X
3934(the)X
4052(remote)X
555 4367(host)N
708(and)X
844(the)X
962(local)X
1138(worm)X
1345(waits)X
1534(for)X
1648(its)X
1743(connection)X
2115(so)X
2206(that)X
2346(it)X
2410(can)X
2542(complete)X
2856(the)X
2974(process)X
3235(of)X
3322(building)X
3608(a)X
3664(new)X
3818(worm.)X
755 4490(Of)N
860(course)X
1090(this)X
1225(is)X
1298(not)X
1420(the)X
1538(\256rst)X
1682(time)X
1844(that)X
1984(an)X
2080(inadvertent)X
2461(loophole)X
2761(or)X
2848(``trap)X
3047(door'')X
3268(like)X
3408(this)X
3543(has)X
3670(been)X
3842(found)X
4049(in)X
555 4580(sendmail,)N
884(and)X
1020(it)X
1084(may)X
1242(not)X
1364(be)X
1460(the)X
1578(last.)X
1749(In)X
1836(his)X
1949(Turing)X
2187(Award)X
2426(lecture,)X
2685(Ken)X
2839(Thompson)X
3201(said:)X
3372(``You)X
3584(can't)X
3765(trust)X
3927(code)X
4099(that)X
555 4670(you)N
695(did)X
817(not)X
939(totally)X
1163(create)X
1376(yourself.)X
1699(\(Especially)X
2080(code)X
2252(from)X
2428(companies)X
2791(that)X
2931(employ)X
3191(people)X
3425(like)X
3565(me.\)'')X
3784(In)X
3871(fact,)X
4032(as)X
4119(Eric)X
555 4760(Allman)N
815(says,)X
993(``[Y]ou)X
1259(can't)X
1440(even)X
1612(trust)X
1774(code)X
1946(that)X
2086(you)X
2226(did)X
2348(totally)X
2572(create)X
2785(yourself.'')X
3142(The)X
3287(basic)X
3472(problem)X
3759(of)X
3846(trusting)X
4110(sys-)X
555 4850(tem)N
695(programs)X
1018(is)X
1091(not)X
1213(one)X
1349(that)X
1489(is)X
1562(easy)X
1725(to)X
1807(solve.)X
3 f
555 5036(4.6.)N
715(Infection)X
1 f
755 5159(The)N
900(worm)X
1107(uses)X
1265(two)X
1405(favorite)X
1675(routines)X
1953(when)X
2147(it)X
2211(decides)X
2472(that)X
2612(it)X
2676(wants)X
2883(to)X
2965(infect)X
3168(a)X
3224(host.)X
3417(One)X
3571(routine)X
3818(that)X
3958(we)X
4072(named)X
2 f
555 5249(infect)N
1 f
733(\(\))X
807(is)X
880(used)X
1047(from)X
1223(host)X
1376(scanning)X
1681(routines)X
1959(like)X
2 f
2099(hg)X
1 f
(\(\).)S
2 f
2293(infect)X
1 f
2471(\(\))X
2545(\256rst)X
2689(checks)X
2928(that)X
3068(it)X
3132(isn't)X
3294(infecting)X
3599(the)X
3717(local)X
3893(machine,)X
4205(an)X
555 5339(already)N
812(infected)X
1091(machine)X
1383(or)X
1470(a)X
1526(machine)X
1818(previously)X
2176(attacked)X
2464(but)X
2586(not)X
2708(successfully)X
3120(infected;)X
3421(the)X
3539(``infected'')X
3926(and)X
8 s
10 f
555 5411(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
5 s
1 f
727 5489(3)N
8 s
765 5514(Actually,)N
1019(like)X
1133(much)X
1293(of)X
1363(the)X
1458(code)X
1595(in)X
1662(the)X
1757(Berkeley)X
2004(distribution,)X
2333(the)X
2 f
2428(\256nger)X
1 f
2594(server)X
2766(was)X
2882(contributed)X
3190(from)X
3331(elsewhere;)X
3620(in)X
3687(this)X
3797(case,)X
3939(it)X
3992(appears)X
4203(that)X
555 5586(MIT)N
688(was)X
803(the)X
897(source.)X
5 s
727 5664(4)N
8 s
763 5689(See)N
871(for)X
961(example)X
1193(Appendix)X
1461(B,)X
1536(section)X
1733(1.4)X
1829(of)X
1898(the)X
1992(second)X
2185(edition)X
2379(of)X
2 f
2448(The)X
2560(C)X
2619(Programming)X
2994(Language)X
1 f
3266(by)X
3346(Kernighan)X
3631(and)X
3739(Ritchie.)X

10 p
%%Page: 10 10
8 s 0 xH 0 xS 1 f
10 s
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(10)X
1 f
555 762(``immune'')N
945(states)X
1143(are)X
1262(marked)X
1523(by)X
1623(\257ags)X
1794(on)X
1894(a)X
1950(host)X
2103(structure)X
2404(when)X
2598(attacks)X
2841(succeed)X
3116(or)X
3203(fail,)X
3350(respectively.)X
3798(The)X
3943(worm)X
4150(then)X
555 852(makes)N
780(sure)X
934(that)X
1074(it)X
1138(can)X
1270(get)X
1388(an)X
1484(address)X
1745(for)X
1859(the)X
1977(target)X
2180(host,)X
2353(marking)X
2640(the)X
2758(host)X
2911(immune)X
3193(if)X
3262(it)X
3326(can't.)X
3547(Then)X
3732(comes)X
3957(a)X
4013(series)X
4216(of)X
555 942(attacks:)N
820(\256rst)X
964(by)X
2 f
1064(rsh)X
1 f
1186(from)X
1362(the)X
1480(account)X
1750(that)X
1890(the)X
2008(worm)X
2215(is)X
2288(running)X
2557(under,)X
2780(then)X
2938(through)X
2 f
3207(\256nger)X
1 f
3394(,)X
3434(then)X
3592(through)X
2 f
3861(sendmail)X
1 f
4150(.)X
4210(If)X
2 f
555 1032(infect)N
1 f
733(\(\))X
807(fails,)X
985(it)X
1049(marks)X
1265(the)X
1383(host)X
1536(as)X
1623(immune.)X
755 1155(The)N
900(other)X
1085(infection)X
1390(routine)X
1637(is)X
1710(named)X
2 f
1944(hu1)X
1 f
(\(\))S
2138(and)X
2274(it)X
2338(is)X
2411(run)X
2538(from)X
2714(the)X
2832(password)X
3155(cracking)X
3452(code)X
3624(after)X
3792(a)X
3848(password)X
4171(has)X
555 1245(been)N
727(guessed.)X
2 f
1041(hu1)X
1 f
(\(\),)S
1255(like)X
2 f
1395(infect)X
1 f
1573(\(\),)X
1667(makes)X
1892(sure)X
2046(that)X
2186(it's)X
2308(not)X
2430(re-infecting)X
2825(a)X
2881(host,)X
3054(then)X
3212(it)X
3276(checks)X
3515(for)X
3629(an)X
3725(address.)X
4026(If)X
4100(a)X
555 1335(potential)N
855(remote)X
1098(user)X
1252(name)X
1446(is)X
1519(available)X
1829(from)X
2005(a)X
2 f
2061(.forward)X
1 f
2358(or)X
2 f
2445(.rhosts)X
1 f
2680(\256le,)X
2822(the)X
2940(worm)X
3147(checks)X
3386(it)X
3450(to)X
3532(make)X
3726(sure)X
3880(it)X
3944(is)X
555 1425(reasonable\320it)N
1043(must)X
1218(contain)X
1474(no)X
1574(punctuation)X
1972(or)X
2059(control)X
2306(characters.)X
2693(If)X
2767(a)X
2823(remote)X
3066(user)X
3220(name)X
3414(is)X
3487(unavailable)X
3877(the)X
3995(worm)X
555 1515(uses)N
713(the)X
831(local)X
1007(user)X
1161(name.)X
1395(Once)X
1585(the)X
1703(worm)X
1910(has)X
2037(a)X
2093(user)X
2247(name)X
2441(and)X
2577(a)X
2633(password,)X
2976(it)X
3040(contacts)X
3323(the)X
2 f
3441(rexec)X
1 f
3636(server)X
3853(on)X
3953(the)X
4071(target)X
555 1605(host)N
708(and)X
844(tries)X
1002(to)X
1084(authenticate)X
1492(itself.)X
1712(If)X
1786(it)X
1850(can,)X
2002(it)X
2066(proceeds)X
2372(to)X
2454(the)X
2572(bootstrap)X
2890(phase;)X
3115(otherwise,)X
3467(it)X
3531(tries)X
3689(a)X
3745(slightly)X
4004(different)X
555 1695(approach\320it)N
994(connects)X
1295(to)X
1377(the)X
1495(local)X
2 f
1671(rexec)X
1 f
1866(server)X
2083(with)X
2245(the)X
2363(local)X
2539(user)X
2693(name)X
2887(and)X
3023(password,)X
3366(then)X
3524(uses)X
3682(this)X
3817(command)X
555 1785(interpreter)N
910(to)X
992(\256re)X
1119(off)X
1233(a)X
1289(command)X
1625(interpreter)X
1980(on)X
2080(the)X
2198(target)X
2401(machine)X
2693(with)X
2 f
2855(rsh)X
1 f
2957(.)X
3017(This)X
3179(will)X
3323(succeed)X
3598(if)X
3667(the)X
3785(remote)X
4028(host)X
555 1875(says)N
713(it)X
777(trusts)X
970(the)X
1088(local)X
1264(host)X
1417(in)X
1499(its)X
2 f
1594(/etc/hosts.equiv)X
1 f
2110(\256le,)X
2252(or)X
2339(the)X
2457(remote)X
2700(account)X
2970(says)X
3128(it)X
3192(trusts)X
3385(the)X
3503(local)X
3679(account)X
3949(in)X
4031(its)X
2 f
555 1965(.rhosts)N
1 f
790(\256le.)X
2 f
952(hu1)X
1 f
(\(\))S
1146(ignores)X
2 f
1402(infect)X
1 f
1580(\(\)'s)X
1712(``immune'')X
2102(\257ag)X
2242(and)X
2378(does)X
2545(not)X
2667(set)X
2776(this)X
2911(\257ag)X
3051(itself,)X
3251(since)X
2 f
3436(hu1)X
1 f
(\(\))S
3630(may)X
3788(\256nd)X
3932(success)X
4193(on)X
555 2055(a)N
611(per-account)X
1011(basis)X
1191(that)X
2 f
1331(infect)X
1 f
1509(\(\))X
1583(can't)X
1764(achieve)X
2030(on)X
2130(a)X
2186(per-host)X
2469(basis.)X
755 2194(Both)N
2 f
930(infect)X
1 f
1108(\(\))X
1182(and)X
2 f
1318(hu1)X
1 f
(\(\))S
1512(use)X
1639(a)X
1695(routine)X
1942(we)X
2056(call)X
2 f
2192(sendworm)X
1 f
2521(\(\))X
2595(to)X
2677(do)X
2777(their)X
2944(dirty)X
3115(work)X
7 s
3280 2162(5)N
10 s
2194(.)Y
2 f
3368(sendworm)X
1 f
3697(\(\))X
3771(looks)X
3964(for)X
4078(the)X
2 f
555 2284(l1.c)N
1 f
693(bootstrap)X
1011(source)X
1241(\256le)X
1363(in)X
1445(its)X
1540(objects)X
1787(list,)X
1924(then)X
2082(it)X
2146(uses)X
2304(the)X
2 f
2422(makemagic)X
1 f
2788(\(\))X
2862(routine)X
3109(to)X
3191(get)X
3309(a)X
3365(communication)X
3883(stream)X
4117(end-)X
555 2374(point)N
739(\(a)X
2 f
822(socket)X
1 f
1023(\),)X
1090(a)X
1146(random)X
1411(network)X
1694(port)X
1843(number)X
2108(to)X
2190(rendezvous)X
2576(at,)X
2674(and)X
2810(a)X
2866(magic)X
3082(number)X
3347(for)X
3461(authentication.)X
3975(\(There)X
4210(is)X
555 2464(an)N
651(interesting)X
1009(side)X
1158(effect)X
1362(to)X
2 f
1444(makemagic)X
1 f
1810(\(\)\320it)X
2008(looks)X
2201(for)X
2315(a)X
2371(usable)X
2596(address)X
2857(for)X
2971(the)X
3089(target)X
3292(host)X
3445(by)X
3545(trying)X
3756(to)X
3838(connect)X
4108(to)X
4190(its)X
555 2554(TCP)N
2 f
721(telnet)X
1 f
919(port;)X
1090(this)X
1225(produces)X
1535(a)X
1591(characteristic)X
2040(log)X
2162(message)X
2454(from)X
2630(the)X
2 f
2748(telnet)X
1 f
2946(server.\))X
3210(If)X
2 f
3284(makemagic)X
1 f
3650(\(\))X
3724(was)X
3869(successful,)X
555 2644(the)N
673(worm)X
880(begins)X
1109(to)X
1191(send)X
1358(commands)X
1725(to)X
1807(the)X
1925(remote)X
2168(command)X
2504(interpreter)X
2859(that)X
2999(was)X
3144(started)X
3378(up)X
3478(by)X
3578(the)X
3696(immediately)X
555 2734(preceding)N
892(attack.)X
1144(It)X
1213(changes)X
1492(its)X
1587(directory)X
1897(to)X
1979(an)X
2075(unprotected)X
2474(place)X
2664(\()X
2 f
2691(/usr/tmp)X
1 f
2957(\),)X
3024(then)X
3182(it)X
3246(sends)X
3444(across)X
3665(the)X
3783(bootstrap)X
555 2824(source,)N
805(using)X
998(the)X
1116(U)X
8 s
1174(NIX)X
10 s
1307(stream)X
1541(editor)X
2 f
1748(sed)X
1 f
1875(to)X
1957(parse)X
2147(the)X
2265(input)X
2449(stream.)X
2723(The)X
2868(bootstrap)X
3186(source)X
3416(is)X
3489(compiled)X
3807(and)X
3943(run)X
4070(on)X
4170(the)X
555 2914(remote)N
798(system,)X
1060(and)X
1196(the)X
1314(worm)X
1521(runs)X
1679(a)X
1735(routine)X
1982(named)X
2 f
2216(waithit)X
1 f
2437(\(\))X
2511(to)X
2593(wait)X
2751(for)X
2865(the)X
2983(remote)X
3226(bootstrap)X
3544(to)X
3626(call)X
3762(back)X
3934(on)X
4034(the)X
555 3004(selected)N
834(port.)X
755 3127(The)N
900(bootstrap)X
1218(is)X
1291(quite)X
1471(simple.)X
1744(It)X
1813(is)X
1886(supplied)X
2177(the)X
2295(address)X
2556(of)X
2643(the)X
2761(originating)X
3132(host,)X
3305(a)X
3361(TCP)X
3527(port)X
3676(number)X
3941(and)X
4077(a)X
555 3217(magic)N
771(number)X
1036(as)X
1123(arguments.)X
1517(When)X
1729(it)X
1793(starts,)X
2002(it)X
2066(unlinks)X
2321(itself)X
2501(so)X
2592(that)X
2732(it)X
2796(can't)X
2977(be)X
3073(detected)X
3361(in)X
3443(the)X
3561(\256lesystem,)X
3925(then)X
4083(it)X
4147(calls)X
2 f
555 3307(fork)N
1 f
684(\(\))X
758(to)X
840(create)X
1053(a)X
1109(new)X
1263(process)X
1524(with)X
1686(the)X
1804(same)X
1989(image.)X
2245(The)X
2390(old)X
2512(process)X
2773(exits,)X
2964(permitting)X
3317(the)X
3435(originating)X
3806(worm)X
4013(to)X
4095(con-)X
555 3397(tinue)N
735(with)X
897(its)X
992(business.)X
1323(The)X
1468(bootstrap)X
1786(reads)X
1976(its)X
2071(arguments)X
2425(then)X
2583(zeroes)X
2809(them)X
2989(out)X
3111(to)X
3193(hide)X
3351(them)X
3531(from)X
3707(the)X
3825(system)X
4067(status)X
555 3487(program;)N
869(then)X
1027(it)X
1091(is)X
1164(ready)X
1363(to)X
1445(connect)X
1715(over)X
1878(the)X
1996(network)X
2279(to)X
2361(the)X
2479(parent)X
2700(worm.)X
2947(When)X
3159(the)X
3277(connection)X
3649(is)X
3722(made,)X
3936(the)X
555 3577(bootstrap)N
873(sends)X
1071(over)X
1234(the)X
1352(magic)X
1568(number,)X
1853(which)X
2069(the)X
2187(parent)X
2408(will)X
2552(check)X
2760(against)X
3007(its)X
3102(own)X
3260(copy.)X
3476(If)X
3550(the)X
3668(parent)X
3889(accepts)X
4146(the)X
555 3667(number)N
820(\(which)X
1063(is)X
1136(carefully)X
1442(rendered)X
1744(to)X
1826(be)X
1922(independent)X
2334(of)X
2421(host)X
2574(byte)X
2732(order\),)X
2969(it)X
3033(will)X
3177(send)X
3344(over)X
3507(a)X
3563(series)X
3766(of)X
3853(\256lenames)X
4180(and)X
555 3757(\256les)N
708(which)X
924(the)X
1042(bootstrap)X
1360(writes)X
1576(to)X
1658(disk.)X
1851(If)X
1925(trouble)X
2172(occurs,)X
2422(the)X
2540(bootstrap)X
2858(removes)X
3150(all)X
3250(these)X
3435(\256les)X
3588(and)X
3724(exits.)X
3935(Eventually)X
555 3847(the)N
673(transaction)X
1045(completes,)X
1410(and)X
1546(the)X
1664(bootstrap)X
1982(calls)X
2149(up)X
2249(a)X
2305(command)X
2641(interpreter)X
2996(to)X
3078(\256nish)X
3275(the)X
3393(job.)X
755 3970(In)N
842(the)X
960(meantime,)X
1316(the)X
1434(parent)X
1655(in)X
2 f
1737(waithit)X
1 f
1958(\(\))X
2032(spends)X
2270(up)X
2370(to)X
2452(two)X
2592(minutes)X
2865(waiting)X
3125(for)X
3239(the)X
3357(bootstrap)X
3675(to)X
3757(call)X
3893(back;)X
4087(if)X
4156(the)X
555 4060(bootstrap)N
873(fails)X
1031(to)X
1113(call)X
1249(back,)X
1441(or)X
1528(the)X
1646(authentication)X
2120(fails,)X
2298(the)X
2416(worm)X
2623(decides)X
2884(to)X
2966(give)X
3124(up)X
3224(and)X
3360(reports)X
3603(a)X
3659(failure.)X
3929(When)X
4141(a)X
555 4150(connection)N
927(is)X
1000(successful,)X
1370(the)X
1488(worm)X
1695(ships)X
1879(all)X
1979(of)X
2066(its)X
2161(\256les)X
2314(across)X
2535(followed)X
2840(by)X
2940(an)X
3036(end-of-\256le)X
3395(indicator.)X
3740(It)X
3809(pauses)X
4043(four)X
555 4240(seconds)N
829(to)X
911(let)X
1011(a)X
1067(command)X
1403(interpreter)X
1758(start)X
1916(on)X
2016(the)X
2134(remote)X
2377(side,)X
2546(then)X
2704(it)X
2768(issues)X
2979(commands)X
3346(to)X
3428(create)X
3641(a)X
3697(new)X
3851(worm.)X
4098(For)X
555 4330(each)N
723(relocatable)X
1096(object)X
1312(\256le)X
1434(in)X
1516(the)X
1634(list)X
1751(of)X
1838(\256les,)X
2011(the)X
2129(worm)X
2336(tries)X
2494(to)X
2576(build)X
2760(an)X
2856(executable)X
3220(object;)X
3458(typically)X
3758(each)X
3926(\256le)X
4048(con-)X
555 4420(tains)N
726(code)X
898(for)X
1012(a)X
1068(particular)X
1396(make)X
1590(of)X
1677(computer,)X
2020(and)X
2156(the)X
2274(builds)X
2489(will)X
2633(fail)X
2760(until)X
2926(the)X
3044(worm)X
3251(tries)X
3409(the)X
3527(proper)X
3757(computer)X
4080(type.)X
555 4510(If)N
629(the)X
747(parent)X
968(worm)X
1175(\256nally)X
1399(gets)X
1548(an)X
1644(executable)X
2008(child)X
2188(worm)X
2395(built,)X
2581(it)X
2645(sets)X
2785(it)X
2849(loose)X
3038(with)X
3200(the)X
3 f
9 f
3318(-)X
3320(-)X
3 f
3364(p)X
1 f
3428(option)X
3652(to)X
3734(kill)X
3860(the)X
3978(command)X
555 4600(interpreter,)N
930(then)X
1088(shuts)X
1272(down)X
1470(the)X
1588(connection.)X
2000(The)X
2145(target)X
2348(host)X
2501(is)X
2574(marked)X
2835(``infected''.)X
3262(If)X
3336(none)X
3512(of)X
3599(the)X
3717(objects)X
3964(produces)X
555 4690(a)N
611(usable)X
836(child)X
1016(worm,)X
1243(the)X
1361(parent)X
1582(removes)X
1874(the)X
1992(detritus)X
2252(and)X
2 f
2388(waithit)X
1 f
2609(\(\))X
2683(returns)X
2926(an)X
3022(error)X
3199(indication.)X
755 4813(When)N
967(a)X
1023(system)X
1265(is)X
1338(being)X
1536(swamped)X
1859(by)X
1959(worms,)X
2217(the)X
2 f
2335(/usr/tmp)X
1 f
2621(directory)X
2931(can)X
3063(\256ll)X
3171(with)X
3333(leftover)X
3603(\256les)X
3756(as)X
3843(a)X
3899(conse-)X
555 4903(quence)N
803(of)X
890(a)X
946(bug)X
1086(in)X
2 f
1168(waithit)X
1 f
1389(\(\).)X
1503(If)X
1577(a)X
1633(worm)X
1840(compile)X
2118(takes)X
2303(more)X
2488(than)X
2646(30)X
2746(seconds,)X
3040(resynchronization)X
3635(code)X
3807(will)X
3951(report)X
4163(an)X
555 4993(error)N
732(but)X
2 f
854(waithit)X
1 f
1075(\(\))X
1149(will)X
1293(fail)X
1420(to)X
1502(remove)X
1763(the)X
1881(\256les)X
2034(it)X
2098(has)X
2225(created.)X
2518(On)X
2636(one)X
2772(of)X
2859(our)X
2986(machines,)X
3329(13)X
3429(MB)X
3573(of)X
3660(material)X
3943(represent-)X
555 5083(ing)N
677(86)X
777(sets)X
917(of)X
1004(\256les)X
1157(accumulated)X
1583(over)X
1746(5.5)X
1866(hours.)X
8 s
10 f
555 5378(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
5 s
1 f
727 5456(5)N
8 s
764 5481(One)N
887(minor)X
1057(exception:)X
1340(the)X
2 f
1435(sendmail)X
1 f
1682(attack)X
1850(doesn't)X
2054(use)X
2 f
2155(sendworm)X
1 f
2418(\(\))X
2476(since)X
2623(it)X
2675(needs)X
2836(to)X
2902(handle)X
3088(the)X
3182(SMTP)X
3366(protocol)X
3595(in)X
3661(addition)X
3887(to)X
3953(the)X
4047(command)X
555 5553(interpreter)N
836(interface,)X
1090(but)X
1188(the)X
1282(principle)X
1525(is)X
1584(the)X
1678(same.)X

11 p
%%Page: 11 11
8 s 0 xH 0 xS 1 f
10 s
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(11)X
555 762(4.7.)N
715(Password)X
1064(cracking)X
1 f
755 885(A)N
833(password)X
1156(cracking)X
1453(algorithm)X
1784(seems)X
2000(like)X
2140(a)X
2196(slow)X
2367(and)X
2503(bulky)X
2705(item)X
2867(to)X
2949(put)X
3071(in)X
3153(a)X
3209(worm,)X
3436(but)X
3558(the)X
3676(worm)X
3883(makes)X
4108(this)X
555 975(work)N
740(by)X
840(being)X
1038(persistent)X
1365(and)X
1501(ef\256cient.)X
1824(The)X
1969(worm)X
2176(is)X
2249(aided)X
2443(by)X
2543(some)X
2732(unfortunate)X
3122(statistics)X
3417(about)X
3615(typical)X
3853(password)X
555 1065(choices.)N
856(Here)X
1033(we)X
1147(discuss)X
1398(how)X
1556(the)X
1674(worm)X
1881(goes)X
2048(about)X
2246(choosing)X
2555(passwords)X
2909(to)X
2991(test)X
3122(and)X
3258(how)X
3416(the)X
3534(U)X
8 s
3592(NIX)X
10 s
3725(password)X
4048(encryp-)X
555 1155(tion)N
699(routine)X
946(was)X
1091(modi\256ed.)X
3 f
555 1341(4.7.1.)N
775(Guessing)X
1105(passwords)X
1 f
9 s
715 1455(For)N
837(example,)X
1120(if)X
1185(the)X
1294(login)X
1463(name)X
1640(is)X
1709(``abc'',)X
1944(then)X
2089(``abc'',)X
2324(``cba'',)X
2559(and)X
2684(``abcabc'')X
3001(are)X
3110(excellent)X
3391(candidates)X
3716(for)X
3821(passwords.)X
715 1536([Grampp)N
993(and)X
1115(Morris,)X
1347(``U)X
7 s
(NIX)S
9 s
1564(Operating)X
1870(System)X
2100(Security''])X
10 s
755 1692(The)N
900(worm's)X
1165(password)X
1488(guessing)X
1788(is)X
1861(driven)X
2086(by)X
2186(a)X
2242(little)X
2408(4-state)X
2642(machine.)X
2974(The)X
3119(\256rst)X
3263(state)X
3430(gathers)X
3682(password)X
4005(data,)X
555 1782(while)N
753(the)X
871(remaining)X
1216(states)X
1414(represent)X
1729(increasingly)X
2141(less)X
2281(likely)X
2483(sources)X
2744(of)X
2831(potential)X
3131(passwords.)X
3525(The)X
3670(central)X
3909(cracking)X
555 1872(routine)N
802(is)X
875(called)X
2 f
1087(cracksome)X
1 f
1431(\(\),)X
1525(and)X
1661(it)X
1725(contains)X
2012(a)X
2068(switch)X
2297(on)X
2397(each)X
2565(of)X
2652(the)X
2770(four)X
2924(states.)X
755 1995(The)N
900(routine)X
1147(that)X
1287(implements)X
1680(the)X
1798(\256rst)X
1942(state)X
2109(we)X
2223(named)X
2 f
2457(crack_0)X
1 f
2716(\(\).)X
2830(This)X
2992(routine's)X
3297(job)X
3419(is)X
3492(to)X
3574(collect)X
3808(information)X
555 2085(about)N
753(hosts)X
937(and)X
1073(accounts.)X
1414(It)X
1483(is)X
1556(only)X
1718(run)X
1845(once;)X
2039(the)X
2157(information)X
2555(it)X
2619(gathers)X
2871(persists)X
3131(for)X
3245(the)X
3363(lifetime)X
3632(of)X
3719(the)X
3837(worm.)X
4084(Its)X
555 2175(implementation)N
1077(is)X
1150(straightforward:)X
1687(it)X
1751(reads)X
1941(the)X
2059(\256les)X
2 f
2212(/etc/hosts.equiv)X
1 f
2728(and)X
2 f
2864(/.rhosts)X
1 f
3121(for)X
3235(hosts)X
3419(to)X
3501(attack,)X
3733(then)X
3891(reads)X
4081(the)X
555 2265(password)N
878(\256le)X
1000(looking)X
1264(for)X
1378(accounts.)X
1719(For)X
1850(each)X
2018(account,)X
2308(the)X
2426(worm)X
2633(saves)X
2827(the)X
2945(name,)X
3159(the)X
3277(encrypted)X
3614(password,)X
3957(the)X
4075(home)X
555 2355(directory)N
865(and)X
1001(the)X
1119(user)X
1273(information)X
1671(\256elds.)X
1904(As)X
2013(a)X
2069(quick)X
2267(preliminary)X
2661(check,)X
2889(it)X
2953(looks)X
3146(for)X
3260(a)X
2 f
3316(.forward)X
1 f
3613(\256le)X
3735(in)X
3817(each)X
3985(user's)X
555 2445(home)N
753(directory)X
1063(and)X
1199(saves)X
1393(any)X
1529(host)X
1682(name)X
1876(it)X
1940(\256nds)X
2115(in)X
2197(that)X
2337(\256le,)X
2479(marking)X
2766(it)X
2830(like)X
2970(the)X
3088(previous)X
3384(ones.)X
755 2568(We)N
887(unimaginatively)X
1427(called)X
1639(the)X
1757(function)X
2044(for)X
2158(the)X
2276(next)X
2434(state)X
2 f
2601(crack_1)X
1 f
2860(\(\).)X
2 f
2974(crack_1)X
1 f
3233(\(\))X
3307(looks)X
3500(for)X
3614(trivially)X
3887(broken)X
4130(pass-)X
555 2658(words.)N
811(These)X
1023(are)X
1142(passwords)X
1496(which)X
1712(can)X
1844(be)X
1940(guessed)X
2214(merely)X
2457(on)X
2557(the)X
2675(basis)X
2855(of)X
2942(information)X
3340(already)X
3597(contained)X
3929(in)X
4011(the)X
4129(pass-)X
555 2748(word)N
740(\256le.)X
902(Grampp)X
1185(and)X
1321(Morris)X
1559(report)X
1771(a)X
1827(survey)X
2061(of)X
2148(over)X
2311(100)X
2451(password)X
2774(\256les)X
2927(where)X
3144(between)X
3432(8)X
3492(and)X
3628(30)X
3728(percent)X
3985(of)X
4072(all)X
555 2838(passwords)N
909(were)X
1086(guessed)X
1360(using)X
1553(just)X
1688(the)X
1806(literal)X
2013(account)X
2283(name)X
2477(and)X
2613(a)X
2669(couple)X
2903(of)X
2990(variations.)X
3366(The)X
3511(worm)X
3718(tries)X
3876(a)X
3932(little)X
555 2928(harder)N
781(than)X
939(this:)X
1096(it)X
1160(checks)X
1399(the)X
1517(null)X
1661(password,)X
2004(the)X
2122(account)X
2392(name,)X
2606(the)X
2724(account)X
2994(name)X
3188(concatenated)X
3628(with)X
3790(itself,)X
3990(the)X
4108(\256rst)X
555 3018(name)N
749(\(extracted)X
1091(from)X
1267(the)X
1385(user)X
1539(information)X
1937(\256eld,)X
2119(with)X
2281(the)X
2399(\256rst)X
2543(letter)X
2728(mapped)X
3002(to)X
3084(lower)X
3287(case\),)X
3493(the)X
3611(last)X
3742(name,)X
3956(and)X
4092(the)X
555 3108(account)N
825(name)X
1019(reversed.)X
1352(It)X
1421(runs)X
1579(through)X
1848(up)X
1948(to)X
2030(50)X
2130(accounts)X
2431(per)X
2554(call)X
2690(to)X
2 f
2772(cracksome)X
1 f
3116(\(\),)X
3210(saving)X
3439(its)X
3534(place)X
3724(in)X
3806(the)X
3924(list)X
4041(of)X
555 3198(accounts)N
856(and)X
992(advancing)X
1342(to)X
1424(the)X
1542(next)X
1700(state)X
1867(when)X
2061(it)X
2125(runs)X
2283(out)X
2405(of)X
2492(accounts)X
2793(to)X
2875(try.)X
755 3321(The)N
900(next)X
1058(state)X
1225(is)X
1298(handled)X
1572(by)X
2 f
1672(crack_2)X
1 f
1931(\(\).)X
2045(In)X
2132(this)X
2267(state)X
2434(the)X
2552(worm)X
2759(compares)X
3087(a)X
3143(list)X
3260(of)X
3347(favorite)X
3617(passwords,)X
3991(one)X
4127(pass-)X
555 3411(word)N
740(per)X
863(call,)X
1019(with)X
1181(all)X
1281(of)X
1368(the)X
1486(encrypted)X
1823(passwords)X
2177(in)X
2259(the)X
2377(password)X
2700(\256le.)X
2862(The)X
3007(list)X
3124(contains)X
3411(432)X
3551(words,)X
3787(most)X
3962(of)X
4049(which)X
555 3501(are)N
674(real)X
815(English)X
1079(words)X
1295(or)X
1382(proper)X
1612(names;)X
1859(it)X
1923(seems)X
2139(likely)X
2341(that)X
2481(this)X
2616(list)X
2733(was)X
2878(generated)X
3211(by)X
3311(stealing)X
3580(password)X
3903(\256les)X
4056(and)X
555 3591(cracking)N
852(them)X
1032(at)X
1110(leisure)X
1344(on)X
1444(the)X
1562(worm)X
1769(author's)X
2052(home)X
2250(machine.)X
2582(A)X
2660(global)X
2880(variable)X
2 f
3159(nextw)X
1 f
3366(is)X
3439(used)X
3606(to)X
3688(count)X
3886(the)X
4004(number)X
555 3681(of)N
642(passwords)X
996(tried,)X
1183(and)X
1319(it)X
1383(is)X
1456(this)X
1591(count)X
1789(\(plus)X
1969(a)X
2025(loss)X
2169(in)X
2251(the)X
2369(population)X
2731(control)X
2978(game\))X
3199(that)X
3339(controls)X
3617(whether)X
3896(the)X
4014(worm)X
555 3771(exits)N
726(at)X
804(the)X
922(end)X
1058(of)X
1145(the)X
1263(main)X
1443(loop\320)X
2 f
1665(nextw)X
1 f
1872(must)X
2047(be)X
2143(greater)X
2387(than)X
2545(10)X
2645(before)X
2871(the)X
2989(worm)X
3196(can)X
3328(exit.)X
3508(Since)X
3706(the)X
3824(worm)X
4031(nor-)X
555 3861(mally)N
757(spends)X
995(2.5)X
1115(minutes)X
1388(checking)X
1698(for)X
1812(clients)X
2041(over)X
2204(the)X
2322(course)X
2552(of)X
2639(the)X
2757(main)X
2937(loop)X
3099(and)X
3235(calls)X
2 f
3402(cracksome)X
1 f
3746(\(\))X
3820(twice)X
4014(in)X
4096(that)X
555 3951(period,)N
800(it)X
864(appears)X
1130(that)X
1270(the)X
1388(worm)X
1595(must)X
1770(make)X
1964(a)X
2020(minimum)X
2350(of)X
2437(7)X
2497(passes)X
2722(through)X
2991(the)X
3109(main)X
3289(loop,)X
3471(taking)X
3691(more)X
3876(than)X
4034(15)X
555 4057(minutes)N
7 s
808 4025(6)N
10 s
4057(.)Y
896(It)X
965(will)X
1109(take)X
1263(at)X
1341(least)X
1508(9)X
1568(hours)X
1766(for)X
1880(the)X
1998(worm)X
2205(to)X
2287(scan)X
2450(its)X
2545(built-in)X
2800(password)X
3123(list)X
3240(and)X
3376(proceed)X
3651(to)X
3733(the)X
3851(next)X
4009(state.)X
755 4180(The)N
900(last)X
1031(state)X
1198(is)X
1271(handled)X
1545(by)X
2 f
1645(crack_3)X
1 f
1904(\(\).)X
2018(It)X
2087(opens)X
2294(the)X
2412(U)X
8 s
2470(NIX)X
10 s
2603(online)X
2823(dictionary)X
2 f
3168(/usr/dict/words)X
1 f
3671(and)X
3807(goes)X
3974(through)X
4243(it)X
555 4270(one)N
691(word)X
876(at)X
954(a)X
1010(time.)X
1212(If)X
1286(a)X
1342(word)X
1527(is)X
1600(capitalized,)X
1988(the)X
2106(worm)X
2313(tries)X
2471(a)X
2527(lower-case)X
2896(version)X
3152(as)X
3239(well.)X
3437(This)X
3599(search)X
3825(can)X
3957(essentially)X
555 4360(go)N
655(on)X
755(forever:)X
1030(it)X
1094(would)X
1314(take)X
1468(something)X
1821(like)X
1961(four)X
2115(weeks)X
2336(for)X
2450(the)X
2568(worm)X
2775(to)X
2857(\256nish)X
3054(a)X
3110(typical)X
3348(dictionary)X
3693(like)X
3833(ours.)X
755 4483(When)N
967(the)X
1085(worm)X
1292(selects)X
1526(a)X
1582(potential)X
1882(password,)X
2225(it)X
2289(passes)X
2514(it)X
2578(to)X
2660(a)X
2716(routine)X
2963(we)X
3077(called)X
2 f
3289(try_password)X
1 f
3724(\(\).)X
3838(This)X
4000(function)X
555 4573(calls)N
722(the)X
840(worm's)X
1105(special)X
1348(version)X
1604(of)X
1691(the)X
1809(U)X
8 s
1867(NIX)X
10 s
2000(password)X
2323(encryption)X
2686(function)X
2 f
2973(crypt)X
1 f
3138(\(\))X
3212(and)X
3348(compares)X
3676(the)X
3794(result)X
3992(with)X
4154(the)X
555 4663(target)N
758(account's)X
1086(actual)X
1298(encrypted)X
1635(password.)X
1998(If)X
2072(they)X
2230(are)X
2349(equal,)X
2563(or)X
2650(if)X
2719(the)X
2837(password)X
3160(and)X
3296(guess)X
3494(are)X
3613(the)X
3731(null)X
3875(string)X
4077(\(no)X
555 4753(password\),)N
925(the)X
1043(worm)X
1250(saves)X
1444(the)X
1562(cleartext)X
1859(password)X
2182(and)X
2318(proceeds)X
2624(to)X
2706(attack)X
2918(hosts)X
3102(that)X
3242(are)X
3361(connected)X
3707(to)X
3789(this)X
3924(account.)X
4234(A)X
555 4843(routine)N
802(we)X
916(called)X
2 f
1128(try_forward_and_rhosts)X
1 f
1909(\(\))X
1983(reads)X
2173(the)X
2291(user's)X
2 f
2503(.forward)X
1 f
2800(and)X
2 f
2936(.rhosts)X
1 f
3171(\256les,)X
3344(calling)X
3582(the)X
3700(previously)X
555 4933(described)N
2 f
883(hu1)X
1 f
(\(\))S
1077(function)X
1364(for)X
1478(each)X
1646(remote)X
1889(account)X
2159(it)X
2223(\256nds.)X
8 s
10 f
555 5005(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)N
5 s
1 f
727 5083(6)N
8 s
768 5108(For)N
878(those)X
1034(mindful)X
1258(of)X
1332(details:)X
1538(The)X
1658(\256rst)X
1779(call)X
1892(to)X
2 f
1963(cracksome)X
1 f
2235(\(\))X
2298(is)X
2362(consumed)X
2642(reading)X
2854(system)X
3053(\256les.)X
3213(The)X
3333(worm)X
3503(must)X
3649(spend)X
3819(at)X
3886(least)X
4024(one)X
4137(call)X
4249(to)X
2 f
555 5180(cracksome)N
1 f
827(\(\))X
889(in)X
959(the)X
1057(second)X
1254(state)X
1391(attacking)X
1645(trivial)X
1818(passwords.)X
2136(This)X
2270(accounts)X
2513(for)X
2607(at)X
2673(least)X
2809(one)X
2920(pass)X
3049(through)X
3267(the)X
3364(main)X
3511(loop.)X
3676(In)X
3748(the)X
3845(third)X
3985(state,)X
2 f
4137(crack-)X
555 5252(some)N
1 f
686(\(\))X
747(tests)X
880(one)X
990(password)X
1249(from)X
1391(its)X
1470(list)X
1567(of)X
1638(favorites)X
1879(on)X
1961(each)X
2095(call;)X
2223(the)X
2319(worm)X
2486(will)X
2604(exit)X
2718(if)X
2775(it)X
2829(lost)X
2940(a)X
2986(roll)X
3093(of)X
3164(the)X
3260(dice)X
3384(and)X
3494(more)X
3643(than)X
3771(ten)X
3867(words)X
4041(have)X
4179(been)X
555 5324(checked,)N
799(so)X
876(this)X
989(accounts)X
1232(for)X
1326(at)X
1392(least)X
1529(six)X
1623(loops,)X
1797(two)X
1912(words)X
2087(on)X
2170(each)X
2305(loop)X
2438(for)X
2531(\256ve)X
2646(loops)X
2804(to)X
2873(reach)X
3029(10)X
3112(words,)X
3303(then)X
3432(another)X
3642(loop)X
3775(to)X
3844(pass)X
3973(that)X
4088(number.)X
555 5396(Altogether)N
852(this)X
969(amounts)X
1210(to)X
1284(a)X
1335(minimum)X
1608(of)X
1684(7)X
1739(loops.)X
1933(If)X
1998(all)X
2085(7)X
2140(loops)X
2302(took)X
2439(the)X
2540(maximum)X
2823(amount)X
3038(of)X
3114(time)X
3251(waiting)X
3466(for)X
3563(clients,)X
3769(this)X
3885(would)X
4068(require)X
4271(a)X
555 5468(minimum)N
827(of)X
902(17.5)X
1036(minutes,)X
1277(but)X
1381(the)X
1481(2-minute)X
1734(check)X
1904(can)X
2014(exit)X
2132(early)X
2281(if)X
2342(a)X
2392(client)X
2556(connects)X
2801(and)X
2915(the)X
3015(server)X
3191(loses)X
3340(the)X
3439(challenge,)X
3720(hence)X
3889(15.5)X
4022(minutes)X
4246(of)X
555 5540(waiting)N
764(time)X
895(plus)X
1019(runtime)X
1235(overhead)X
1485(is)X
1545(the)X
1640(minimum)X
1907(lifetime.)X
2155(In)X
2225(this)X
2335(period)X
2515(a)X
2560(worm)X
2726(will)X
2843(attack)X
3011(at)X
3073(least)X
3206(8)X
3254(hosts)X
3402(through)X
3617(the)X
3711(host)X
3834(infection)X
4077(routines,)X
555 5612(and)N
663(will)X
779(try)X
866(about)X
1024(18)X
1104(passwords)X
1386(for)X
1476(each)X
1608(account,)X
1838(attacking)X
2088(more)X
2235(hosts)X
2383(if)X
2438(accounts)X
2677(are)X
2770(cracked.)X

12 p
%%Page: 12 12
8 s 0 xH 0 xS 1 f
10 s
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(12)X
555 762(4.7.2.)N
775(Faster)X
1014(password)X
1358(encryption)X
1 f
9 s
715 876(The)N
850(use)X
969(of)X
1052(encrypted)X
1359(passwords)X
1682(appears)X
1925(reasonably)X
2260(secure)X
2467(in)X
2546(the)X
2657(absence)X
2908(of)X
2991(serious)X
3218(attention)X
3493(of)X
3575(experts)X
3805(in)X
3883(the)X
3993(\256eld.)X
715 957([Morris)N
953(and)X
1075(Thompson,)X
1419(``Password)X
1761(Security:)X
2039(A)X
2109(Case)X
2267(History''])X
10 s
755 1113(Unfortunately)N
1225(some)X
1414(experts)X
1666(in)X
1748(the)X
1866(\256eld)X
2028(have)X
2200(been)X
2372(giving)X
2596(serious)X
2843(attention)X
3143(to)X
3225(fast)X
3361(implementations)X
3914(of)X
4001(the)X
4119(U)X
8 s
4177(NIX)X
10 s
555 1203(password)N
878(encryption)X
1241(algorithm.)X
1612(U)X
8 s
1670(NIX)X
10 s
1803(password)X
2126(authentication)X
2600(works)X
2816(without)X
3080(putting)X
3326(any)X
3462(readable)X
3755(version)X
4011(of)X
4098(the)X
555 1293(password)N
878(onto)X
1040(the)X
1158(system,)X
1420(and)X
1556(indeed)X
1790(works)X
2006(without)X
2270(protecting)X
2615(the)X
2733(encrypted)X
3070(password)X
3393(against)X
3640(reading)X
3901(by)X
4001(users)X
4186(on)X
555 1383(the)N
673(system.)X
955(When)X
1167(a)X
1223(user)X
1377(types)X
1566(a)X
1622(password)X
1945(in)X
2027(the)X
2145(clear,)X
2342(the)X
2460(system)X
2702(encrypts)X
2994(it)X
3058(using)X
3251(the)X
3369(standard)X
2 f
3661(crypt)X
1 f
3826(\(\))X
3900(library)X
4134(rou-)X
555 1473(tine,)N
715(then)X
873(compares)X
1201(it)X
1265(against)X
1512(a)X
1568(saved)X
1771(copy)X
1947(of)X
2034(the)X
2152(encrypted)X
2489(password.)X
2852(The)X
2997(encryption)X
3360(algorithm)X
3691(is)X
3764(meant)X
3980(to)X
4062(be)X
555 1563(basically)N
860(impossible)X
1226(to)X
1308(invert,)X
1535(preventing)X
1898(the)X
2016(retrieval)X
2304(of)X
2391(passwords)X
2745(by)X
2845(examining)X
3203(only)X
3365(the)X
3483(encrypted)X
3820(text,)X
3980(and)X
4116(it)X
4180(is)X
555 1653(meant)N
771(to)X
853(be)X
949(expensive)X
1290(to)X
1372(run,)X
1519(so)X
1610(that)X
1750(testing)X
1983(guesses)X
2248(will)X
2392(take)X
2546(a)X
2602(long)X
2764(time.)X
2966(The)X
3111(U)X
8 s
3169(NIX)X
10 s
3302(password)X
3625(encryption)X
3988(algorithm)X
555 1743(is)N
628(based)X
831(on)X
931(the)X
1049(Federal)X
1310(Data)X
1482(Encryption)X
1858(Standard)X
2163(\(DES\).)X
2428(Currently)X
2755(no)X
2855(one)X
2991(knows)X
3220(how)X
3378(to)X
3460(invert)X
3667(this)X
3802(algorithm)X
4133(in)X
4215(a)X
555 1833(reasonable)N
919(amount)X
1179(of)X
1266(time,)X
1448(and)X
1584(while)X
1782(fast)X
1918(DES)X
2089(encoding)X
2403(chips)X
2592(are)X
2711(available,)X
3041(the)X
3159(U)X
8 s
3217(NIX)X
10 s
3350(version)X
3606(of)X
3693(the)X
3811(algorithm)X
4142(is)X
555 1923(slightly)N
814(perturbed)X
1142(so)X
1233(that)X
1373(it)X
1437(is)X
1510(impossible)X
1876(to)X
1958(use)X
2085(a)X
2141(standard)X
2433(DES)X
2604(chip)X
2762(to)X
2844(implement)X
3206(it.)X
755 2046(Two)N
922(problems)X
1240(have)X
1412(been)X
1584(mitigating)X
1932(against)X
2179(the)X
2297(U)X
8 s
2355(NIX)X
10 s
2488(implementation)X
3010(of)X
3097(DES.)X
3308(Computers)X
3679(are)X
3798(continually)X
555 2136(increasing)N
905(in)X
987(speed\320current)X
1498(machines)X
1821(are)X
1940(typically)X
2240(several)X
2488(times)X
2681(faster)X
2880(than)X
3038(the)X
3156(machines)X
3479(that)X
3619(were)X
3796(available)X
4106(when)X
555 2226(the)N
673(current)X
921(password)X
1244(scheme)X
1505(was)X
1650(invented.)X
1986(At)X
2086(the)X
2204(same)X
2389(time,)X
2571(ways)X
2756(have)X
2928(been)X
3100(discovered)X
3468(to)X
3550(make)X
3744(software)X
4041(DES)X
555 2316(run)N
682(faster.)X
921(U)X
8 s
979(NIX)X
10 s
1112(passwords)X
1466(are)X
1585(now)X
1743(far)X
1853(more)X
2038(susceptible)X
2414(to)X
2496(persistent)X
2823(guessing,)X
3143(particularly)X
3533(if)X
3602(the)X
3720(encrypted)X
4057(pass-)X
555 2406(words)N
771(are)X
890(already)X
1147(known.)X
1425(The)X
1570(worm's)X
1835(version)X
2091(of)X
2178(the)X
2296(U)X
8 s
2354(NIX)X
2 f
10 s
2487(crypt)X
1 f
2652(\(\))X
2726(routine)X
2973(ran)X
3096(more)X
3281(than)X
3439(9)X
3499(times)X
3692(faster)X
3891(than)X
4049(the)X
555 2496(standard)N
847(version)X
1103(when)X
1297(we)X
1411(tested)X
1618(it)X
1682(on)X
1782(our)X
1909(VAX)X
2103(8600.)X
2323(While)X
2539(the)X
2657(standard)X
2 f
2949(crypt)X
1 f
3114(\(\))X
3188(takes)X
3373(54)X
3473(seconds)X
3747(to)X
3829(encrypt)X
4090(271)X
555 2586(passwords)N
909(on)X
1009(our)X
1136(8600)X
1316(\(the)X
1461(number)X
1726(of)X
1813(passwords)X
2167(actually)X
2441(contained)X
2773(in)X
2855(our)X
2982(password)X
3305(\256le\),)X
3474(the)X
3592(worm's)X
2 f
3857(crypt)X
1 f
4022(\(\))X
4096(takes)X
555 2676(less)N
695(than)X
853(6)X
913(seconds.)X
755 2799(The)N
900(worm's)X
2 f
1165(crypt)X
1 f
1330(\(\))X
1404(algorithm)X
1735(appears)X
2001(to)X
2083(be)X
2179(a)X
2235(compromise)X
2651(between)X
2939(time)X
3101(and)X
3237(space:)X
3458(the)X
3576(time)X
3738(needed)X
3986(to)X
555 2889(encrypt)N
816(one)X
952(password)X
1275(guess)X
1473(versus)X
1698(the)X
1816(substantial)X
2178(extra)X
2359(table)X
2535(space)X
2734(needed)X
2982(to)X
3064(squeeze)X
3339(performance)X
3766(out)X
3888(of)X
3975(the)X
4093(algo-)X
555 2979(rithm.)N
788(Curiously,)X
1143(one)X
1279(performance)X
1706(improvement)X
2153(actually)X
2427(saves)X
2621(a)X
2677(little)X
2843(space.)X
3082(The)X
3227(traditional)X
3576(U)X
8 s
3634(NIX)X
10 s
3767(algorithm)X
4098(stores)X
555 3069(each)N
723(bit)X
827(of)X
914(the)X
1032(password)X
1355(in)X
1437(a)X
1493(byte,)X
1671(while)X
1869(the)X
1987(worm's)X
2252(algorithm)X
2583(packs)X
2786(the)X
2904(bits)X
3039(into)X
3183(two)X
3323(32-bit)X
3534(words.)X
3790(This)X
3952(permits)X
555 3159(the)N
673(worm's)X
938(algorithm)X
1269(to)X
1351(use)X
1478(bit-\256eld)X
1751(and)X
1887(shift)X
2049(operations)X
2403(on)X
2503(the)X
2621(password)X
2944(data,)X
3118(which)X
3334(is)X
3407(immensely)X
3778(faster.)X
4017(Other)X
555 3249(speedups)N
869(include)X
1125(unrolling)X
1438(loops,)X
1651(combining)X
2013(tables,)X
2240(precomputing)X
2705(shifts)X
2898(and)X
3034(masks,)X
3274(and)X
3410(eliminating)X
3794(redundant)X
4135(ini-)X
555 3339(tial)N
677(and)X
813(\256nal)X
975(permutations)X
1413(when)X
1607(performing)X
1988(the)X
2106(25)X
2206(applications)X
2613(of)X
2700(modi\256ed)X
3004(DES)X
3175(that)X
3315(the)X
3433(password)X
3756(encryption)X
4119(algo-)X
555 3429(rithm)N
748(uses.)X
946(The)X
1091(biggest)X
1342(performance)X
1769(improvement)X
2216(comes)X
2441(as)X
2528(a)X
2584(result)X
2782(of)X
2869(combining)X
3231(permutations:)X
3691(the)X
3809(worm)X
4016(uses)X
555 3519(expanded)N
883(arrays)X
1100(which)X
1316(are)X
1435(indexed)X
1709(by)X
1809(groups)X
2047(of)X
2134(bits)X
2269(rather)X
2477(than)X
2635(the)X
2753(single)X
2964(bits)X
3099(used)X
3266(by)X
3366(the)X
3484(standard)X
3776(algorithm.)X
4147(Matt)X
555 3609(Bishop's)N
859(fast)X
995(version)X
1251(of)X
2 f
1338(crypt)X
1 f
1503(\(\))X
1577(does)X
1744(all)X
1844(of)X
1931(these)X
2116(things)X
2331(and)X
2467(also)X
2616(precomputes)X
3046(even)X
3218(more)X
3403(functions,)X
3741(yielding)X
4023(twice)X
555 3699(the)N
673(performance)X
1100(of)X
1187(the)X
1305(worm's)X
1570(algorithm)X
1901(but)X
2023(requiring)X
2337(nearly)X
2558(200)X
2698(KB)X
2829(of)X
2916(initialized)X
3256(data)X
3410(as)X
3497(opposed)X
3784(to)X
3866(the)X
3984(6)X
4044(KB)X
555 3789(used)N
722(by)X
822(the)X
940(worm)X
1147(and)X
1283(the)X
1401(less)X
1541(than)X
1699(2)X
1759(KB)X
1890(used)X
2057(by)X
2157(the)X
2275(normal)X
2 f
2522(crypt)X
1 f
2687(\(\).)X
755 3912(How)N
931(can)X
1063(system)X
1305(administrators)X
1783(defend)X
2022(against)X
2269(fast)X
2405(implementations)X
2958(of)X
2 f
3045(crypt)X
1 f
3210(\(\)?)X
3340(One)X
3494(suggestion)X
3856(that)X
3996(has)X
4123(been)X
555 4002(introduced)N
918(for)X
1032(foiling)X
1265(the)X
1383(bad)X
1519(guys)X
1690(is)X
1763(the)X
1881(idea)X
2035(of)X
2122(shadow)X
2387(password)X
2710(\256les.)X
2903(In)X
2990(this)X
3125(scheme,)X
3406(the)X
3524(encrypted)X
3861(passwords)X
555 4092(are)N
674(hidden)X
912(rather)X
1120(than)X
1278(public,)X
1518(forcing)X
1770(a)X
1826(cracker)X
2084(to)X
2166(either)X
2369(break)X
2568(a)X
2624(privileged)X
2969(account)X
3239(or)X
3326(use)X
3453(the)X
3571(host's)X
3782(CPU)X
3957(and)X
4093(\(slow\))X
555 4182(encryption)N
918(algorithm)X
1249(to)X
1331(attack,)X
1563(with)X
1725(the)X
1843(added)X
2055(danger)X
2294(that)X
2434(password)X
2757(test)X
2888(requests)X
3171(could)X
3369(be)X
3465(logged)X
3703(and)X
3839(password)X
555 4272(cracking)N
852(discovered.)X
1260(The)X
1405(disadvantage)X
1844(of)X
1931(shadow)X
2196(password)X
2519(\256les)X
2672(is)X
2745(that)X
2885(if)X
2954(the)X
3072(bad)X
3208(guys)X
3379(somehow)X
3706(get)X
3824(around)X
4067(the)X
555 4362(protections)N
931(for)X
1045(the)X
1163(\256le)X
1285(that)X
1425(contains)X
1712(the)X
1830(actual)X
2042(passwords,)X
2416(all)X
2516(of)X
2603(the)X
2721(passwords)X
3075(must)X
3250(be)X
3346(considered)X
3714(cracked)X
3985(and)X
4121(will)X
555 4452(need)N
727(to)X
809(be)X
905(replaced.)X
1238(Another)X
1521(suggestion)X
1883(has)X
2010(been)X
2182(to)X
2264(replace)X
2517(the)X
2635(U)X
8 s
2693(NIX)X
10 s
2826(DES)X
2997(implementation)X
3519(with)X
3681(the)X
3799(fastest)X
4024(avail-)X
555 4542(able)N
709(implementation,)X
1251(but)X
1373(run)X
1500(it)X
1564(1000)X
1744(times)X
1937(or)X
2024(more)X
2209(instead)X
2456(of)X
2543(the)X
2661(25)X
2761(times)X
2954(used)X
3121(in)X
3203(the)X
3321(U)X
8 s
3379(NIX)X
2 f
10 s
3512(crypt)X
1 f
3677(\(\))X
3751(code.)X
3963(Unless)X
4201(the)X
555 4632(repeat)N
772(count)X
970(is)X
1043(somehow)X
1370(pegged)X
1622(to)X
1704(the)X
1822(fastest)X
2047(available)X
2357(CPU)X
2532(speed,)X
2755(this)X
2890(approach)X
3205(merely)X
3448(postpones)X
3788(the)X
3906(day)X
4042(of)X
555 4722(reckoning)N
896(until)X
1062(the)X
1180(cracker)X
1438(\256nds)X
1613(a)X
1669(faster)X
1868(machine.)X
2200(It's)X
2327(interesting)X
2685(to)X
2767(note)X
2925(that)X
3065(Morris)X
3303(and)X
3439(Thompson)X
3801(measured)X
4129(the)X
555 4812(time)N
717(to)X
799(compute)X
1095(the)X
1213(old)X
1335(M-209)X
1573(\(non-DES\))X
1945(password)X
2268(encryption)X
2631(algorithm)X
2962(used)X
3129(in)X
3211(early)X
3392(versions)X
3679(of)X
3766(U)X
8 s
3824(NIX)X
10 s
3957(on)X
4057(the)X
555 4902(PDP-11/70)N
930(and)X
1066(found)X
1273(that)X
1413(a)X
1469(good)X
1649(implementation)X
2171(took)X
2333(only)X
2495(1.25)X
2655(milliseconds)X
3079(per)X
3202(encryption,)X
3585(which)X
3801(they)X
3959(deemed)X
555 4992(insuf\256cient;)N
957(currently)X
1267(the)X
1385(VAX)X
1579(8600)X
1759(using)X
1952(Matt)X
2123(Bishop's)X
2427(DES-based)X
2808(algorithm)X
3139(needs)X
3342(11.5)X
3502(milliseconds)X
3926(per)X
4049(encryp-)X
555 5082(tion,)N
719(and)X
855(machines)X
1178(10)X
1278(times)X
1471(faster)X
1670(than)X
1828(the)X
1946(VAX)X
2140(8600)X
2320(at)X
2398(a)X
2454(cheaper)X
2725(price)X
2906(will)X
3050(be)X
3146(available)X
3456(soon)X
3627(\(if)X
3723(they)X
3881(aren't)X
555 5172(already!\).)N
3 f
555 5358(5.)N
655(Opinions)X
1 f
9 s
715 5472(The)N
847(act)X
951(of)X
1031(breaking)X
1303(into)X
1435(a)X
1486(computer)X
1777(system)X
1996(has)X
2111(to)X
2186(have)X
2341(the)X
2448(same)X
2615(social)X
2802(stigma)X
3013(as)X
3092(breaking)X
3363(into)X
3494(a)X
3545(neighbor's)X
3872(house.)X
4095(It)X
715 5553(should)N
925(not)X
1035(matter)X
1237(that)X
1363(the)X
1469(neighbor's)X
1795(door)X
1945(is)X
2011(unlocked.)X
2329([Ken)X
2491(Thompson,)X
2835(1983)X
2997(Turing)X
3211(Award)X
3425(Lecture])X
715 5674([Creators)N
1002(of)X
1081(viruses)X
1304(are])X
1435(stealing)X
1678(a)X
1729(car)X
1836(for)X
1939(the)X
2046(purpose)X
2293(of)X
2372(joyriding.)X
2691([R)X
2781(H)X
2851(Morris,)X
3083(in)X
3157(1983)X
3319(Capitol)X
3549(Hill)X
3679(testimony,)X
3999(cited)X
715 5755(in)N
789(the)X
895(New)X
1049(York)X
1215(Times)X
1413(11/11/88])X

13 p
%%Page: 13 13
9 s 0 xH 0 xS 1 f
10 s
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(13)X
1 f
755 762(I)N
802(don't)X
991(propose)X
1265(to)X
1347(offer)X
1524(de\256nitive)X
1846(statements)X
2204(on)X
2304(the)X
2422(morality)X
2713(of)X
2800(the)X
2918(worm's)X
3183(author,)X
3428(the)X
3546(ethics)X
3753(of)X
3840(publishing)X
555 852(security)N
829(information)X
1227(or)X
1314(the)X
1432(security)X
1706(needs)X
1909(of)X
1996(the)X
2114(U)X
8 s
2172(NIX)X
10 s
2305(computing)X
2667(community,)X
3071(since)X
3256(people)X
3490(better)X
3693(\(and)X
3856(less\))X
555 942(quali\256ed)N
855(than)X
1013(I)X
1060(are)X
1179(still)X
1318(copiously)X
1649(\257aming)X
1913(on)X
2013(these)X
2198(topics)X
2409(in)X
2491(the)X
2609(various)X
2865(network)X
3148(newsgroups)X
3551(and)X
3687(mailing)X
3951(lists.)X
4139(For)X
555 1032(the)N
673(sake)X
836(of)X
923(the)X
1041(mythical)X
1341(ordinary)X
1633(system)X
1875(administrator)X
2322(who)X
2480(might)X
2686(have)X
2858(been)X
3030(confused)X
3340(by)X
3440(all)X
3540(the)X
3658(information)X
4056(and)X
555 1122(misinformation,)N
1088(I)X
1135(will)X
1279(try)X
1388(to)X
1470(answer)X
1718(a)X
1774(few)X
1915(of)X
2002(the)X
2120(most)X
2295(relevant)X
2574(questions)X
2896(in)X
2978(a)X
3034(narrow)X
3282(but)X
3404(useful)X
3620(way.)X
2 f
755 1245(Did)N
895(the)X
1013(worm)X
1215(cause)X
1418(damage?)X
1 f
1752(The)X
1897(worm)X
2104(did)X
2226(not)X
2348(destroy)X
2604(\256les,)X
2777(intercept)X
3078(private)X
3321(mail,)X
3503(reveal)X
3720(passwords,)X
4094(cor-)X
555 1335(rupt)N
704(databases)X
1032(or)X
1119(plant)X
1299(trojan)X
1506(horses.)X
1771(It)X
1840(did)X
1962(compete)X
2254(for)X
2368(CPU)X
2543(time)X
2705(with,)X
2887(and)X
3023(eventually)X
3377(overwhelm,)X
3778(ordinary)X
4070(user)X
555 1425(processes.)N
923(It)X
992(used)X
1159(up)X
1259(limited)X
1505(system)X
1747(resources)X
2071(such)X
2238(as)X
2325(the)X
2443(open)X
2619(\256le)X
2741(table)X
2917(and)X
3053(the)X
3171(process)X
3432(text)X
3572(table,)X
3768(causing)X
4033(user)X
555 1515(processes)N
883(to)X
965(fail)X
1092(for)X
1206(lack)X
1360(of)X
1447(same.)X
1672(It)X
1741(caused)X
1980(some)X
2169(machines)X
2492(to)X
2574(crash)X
2764(by)X
2864(operating)X
3187(them)X
3367(close)X
3552(to)X
3634(the)X
3752(limits)X
3953(of)X
4040(their)X
555 1605(capacity,)N
863(exercising)X
1213(bugs)X
1384(that)X
1524(do)X
1624(not)X
1746(appear)X
1981(under)X
2184(normal)X
2431(loads.)X
2660(It)X
2729(forced)X
2955(administrators)X
3433(to)X
3515(perform)X
3794(one)X
3930(or)X
4017(more)X
555 1695(reboots)N
811(to)X
893(clear)X
1070(worms)X
1308(from)X
1484(the)X
1602(system,)X
1864(terminating)X
2253(user)X
2407(sessions)X
2689(and)X
2825(long-running)X
3263(jobs.)X
3456(It)X
3525(forced)X
3751(administrators)X
4229(to)X
555 1785(shut)N
708(down)X
906(network)X
1189(gateways,)X
1528(including)X
1850(gateways)X
2169(between)X
2457(important)X
2788(nation-wide)X
3191(research)X
3480(networks,)X
3814(in)X
3896(an)X
3992(effort)X
4191(to)X
555 1875(isolate)N
784(the)X
902(worm;)X
1131(this)X
1266(led)X
1384(to)X
1466(delays)X
1691(of)X
1778(up)X
1878(to)X
1960(several)X
2208(days)X
2375(in)X
2457(the)X
2575(exchange)X
2899(of)X
2986(electronic)X
3323(mail,)X
3505(causing)X
3770(some)X
3959(projects)X
4233(to)X
555 1965(miss)N
721(deadlines)X
1044(and)X
1180(others)X
1396(to)X
1478(lose)X
1627(valuable)X
1919(research)X
2208(time.)X
2410(It)X
2479(made)X
2673(systems)X
2946(staff)X
3109(across)X
3330(the)X
3448(country)X
3713(drop)X
3880(their)X
4047(ongo-)X
555 2055(ing)N
677(hacks)X
880(and)X
1016(work)X
1201(24-hour)X
1475(days)X
1642(trying)X
1853(to)X
1935(corner)X
2161(and)X
2297(kill)X
2423(worms.)X
2701(It)X
2770(caused)X
3009(members)X
3323(of)X
3410(management)X
3840(in)X
3922(at)X
4000(least)X
4167(one)X
555 2145(institution)N
898(to)X
980(become)X
1250(so)X
1341(frightened)X
1691(that)X
1831(they)X
1989(scrubbed)X
2299(all)X
2399(the)X
2517(disks)X
2701(at)X
2779(their)X
2946(facility)X
3193(that)X
3333(were)X
3510(online)X
3730(at)X
3808(the)X
3926(time)X
4088(of)X
4175(the)X
555 2235(infection,)N
880(and)X
1016(limited)X
1262(reloading)X
1585(of)X
1672(\256les)X
1825(to)X
1907(data)X
2061(that)X
2201(was)X
2346(veri\256ably)X
2673(unmodi\256ed)X
3057(by)X
3157(a)X
3213(foreign)X
3465(agent.)X
3699(It)X
3768(caused)X
555 2325(bandwidth)N
913(through)X
1182(gateways)X
1501(that)X
1641(were)X
1818(still)X
1957(running)X
2226(after)X
2394(the)X
2512(infection)X
2817(started)X
3051(to)X
3133(become)X
3403(substantially)X
3827(degraded\320)X
555 2415(the)N
673(gateways)X
992(were)X
1169(using)X
1362(much)X
1560(of)X
1647(their)X
1814(capacity)X
2102(just)X
2237(shipping)X
2532(the)X
2650(worm)X
2857(from)X
3033(one)X
3169(network)X
3452(to)X
3534(another.)X
3835(It)X
3904(penetrated)X
555 2505(user)N
709(accounts)X
1010(and)X
1146(caused)X
1385(it)X
1449(to)X
1531(appear)X
1766(that)X
1906(a)X
1962(given)X
2160(user)X
2314(was)X
2459(disturbing)X
2803(a)X
2859(system)X
3101(when)X
3295(in)X
3377(fact)X
3518(they)X
3676(were)X
3853(not)X
3975(responsi-)X
555 2595(ble.)N
713(It's)X
840(true)X
985(that)X
1125(the)X
1243(worm)X
1450(could)X
1648(have)X
1820(been)X
1992(far)X
2102(more)X
2287(harmful)X
2561(that)X
2701(it)X
2765(actually)X
3039(turned)X
3264(out)X
3386(to)X
3468(be:)X
3586(in)X
3668(the)X
3786(last)X
3917(few)X
4058(weeks,)X
555 2685(several)N
803(security)X
1077(bugs)X
1248(have)X
1420(come)X
1614(to)X
1696(light)X
1862(which)X
2078(the)X
2196(worm)X
2403(could)X
2601(have)X
2773(used)X
2940(to)X
3022(thoroughly)X
3393(destroy)X
3649(a)X
3705(system.)X
3987(Perhaps)X
555 2775(we)N
669(should)X
902(be)X
998(grateful)X
1268(that)X
1408(we)X
1522(escaped)X
1797(incredibly)X
2142(awful)X
2345(consequences,)X
2827(and)X
2963(perhaps)X
3233(we)X
3347(should)X
3580(also)X
3729(be)X
3825(grateful)X
4095(that)X
555 2865(we)N
669(have)X
841(learned)X
1098(so)X
1189(much)X
1387(about)X
1585(the)X
1703(weaknesses)X
2098(in)X
2180(our)X
2307(systems')X
2607(defenses,)X
2924(but)X
3046(I)X
3093(think)X
3277(we)X
3391(should)X
3624(share)X
3814(our)X
3941(grateful-)X
555 2955(ness)N
713(with)X
875(someone)X
1180(other)X
1365(than)X
1523(the)X
1641(worm's)X
1906(author.)X
2 f
755 3078(Was)N
913(the)X
1031(worm)X
1233(malicious?)X
1 f
1624(Some)X
1826(people)X
2060(have)X
2232(suggested)X
2568(that)X
2708(the)X
2826(worm)X
3033(was)X
3178(an)X
3274(innocent)X
3570(experiment)X
3951(that)X
4091(got)X
555 3168(out)N
677(of)X
764(hand,)X
960(and)X
1096(that)X
1236(it)X
1300(was)X
1445(never)X
1644(intended)X
1940(to)X
2022(spread)X
2252(so)X
2343(fast)X
2479(or)X
2566(so)X
2657(widely.)X
2935(We)X
3067(can)X
3199(\256nd)X
3343(evidence)X
3649(in)X
3731(the)X
3849(worm)X
4056(to)X
4138(sup-)X
555 3258(port)N
704(and)X
840(to)X
922(contradict)X
1263(this)X
1398(hypothesis.)X
1800(There)X
2008(are)X
2127(a)X
2183(number)X
2448(of)X
2535(bugs)X
2706(in)X
2788(the)X
2906(worm)X
3113(that)X
3253(appear)X
3488(to)X
3570(be)X
3666(the)X
3784(result)X
3982(of)X
4069(hasty)X
555 3348(or)N
642(careless)X
917(programming.)X
1413(For)X
1544(example,)X
1856(in)X
1938(the)X
2056(worm's)X
2 f
2321(if_init)X
1 f
2511(\(\))X
2585(routine,)X
2852(there)X
3033(is)X
3106(a)X
3162(call)X
3298(to)X
3380(the)X
3498(block)X
3696(zero)X
3855(function)X
2 f
555 3438(bzero)N
1 f
733(\(\))X
807(that)X
947(incorrectly)X
1315(uses)X
1473(the)X
1591(block)X
1789(itself)X
1969(rather)X
2177(than)X
2335(the)X
2453(block's)X
2709(address)X
2970(as)X
3057(an)X
3153(argument.)X
3516(It's)X
3643(also)X
3792(possible)X
4074(that)X
4214(a)X
555 3528(bug)N
695(was)X
840(responsible)X
1225(for)X
1339(the)X
1457(ineffectiveness)X
1959(of)X
2046(the)X
2164(population)X
2526(control)X
2773(measures)X
3092(used)X
3259(by)X
3359(the)X
3477(worm.)X
3724(This)X
3886(could)X
4084(be)X
555 3618(seen)N
718(as)X
805(evidence)X
1111(that)X
1251(a)X
1307(development)X
1741(version)X
1997(of)X
2084(the)X
2202(worm)X
2409(``got)X
2585(loose'')X
2828(accidentally,)X
3256(and)X
3392(perhaps)X
3662(the)X
3780(author)X
4005(origi-)X
555 3708(nally)N
735(intended)X
1031(to)X
1113(test)X
1244(the)X
1362(\256nal)X
1524(version)X
1780(under)X
1983(controlled)X
2328(conditions,)X
2701(in)X
2783(an)X
2879(environment)X
3304(from)X
3480(which)X
3696(it)X
3760(would)X
3980(not)X
555 3798(escape.)N
830(On)X
948(the)X
1066(other)X
1251(hand,)X
1447(there)X
1628(is)X
1701(considerable)X
2127(evidence)X
2433(that)X
2573(the)X
2691(worm)X
2898(was)X
3043(designed)X
3348(to)X
3430(reproduce)X
3772(quickly)X
4032(and)X
555 3888(spread)N
785(itself)X
965(over)X
1128(great)X
1309(distances.)X
1663(It)X
1732(can)X
1864(be)X
1960(argued)X
2199(that)X
2339(the)X
2457(population)X
2819(control)X
3066(hacks)X
3269(in)X
3351(the)X
3469(worm)X
3676(are)X
3795(anemic)X
4047(by)X
555 3978(design:)N
806(they)X
964(are)X
1083(a)X
1139(compromise)X
1555(between)X
1843(spreading)X
2175(the)X
2293(worm)X
2500(as)X
2587(quickly)X
2847(as)X
2934(possible)X
3216(and)X
3352(raising)X
3590(the)X
3708(load)X
3866(enough)X
4122(to)X
4204(be)X
555 4068(detected)N
843(and)X
979(defeated.)X
1312(A)X
1390(worm)X
1597(will)X
1741(exist)X
1912(for)X
2026(a)X
2082(substantial)X
2444(amount)X
2704(of)X
2791(time)X
2953(and)X
3089(will)X
3233(perform)X
3512(a)X
3568(substantial)X
3930(amount)X
4190(of)X
555 4158(work)N
740(even)X
912(if)X
981(it)X
1045(loses)X
1225(the)X
1343(roll)X
1474(of)X
1561(the)X
1679(\(imaginary\))X
2078(dice;)X
2254(moreover,)X
2602(1)X
2662(in)X
2744(7)X
2804(worms)X
3042(become)X
3312(immortal)X
3625(and)X
3761(can't)X
3942(be)X
4038(killed)X
555 4248(by)N
655(dice)X
809(rolls.)X
1011(There)X
1219(is)X
1292(ample)X
1508(evidence)X
1814(that)X
1954(the)X
2072(worm)X
2279(was)X
2424(designed)X
2729(to)X
2811(hamper)X
3072(efforts)X
3302(to)X
3384(stop)X
3537(it)X
3601(even)X
3773(after)X
3941(it)X
4005(was)X
555 4338(identi\256ed)N
877(and)X
1013(captured.)X
1350(It)X
1419(certainly)X
1720(succeeded)X
2071(in)X
2153(this,)X
2308(since)X
2493(it)X
2557(took)X
2719(almost)X
2952(a)X
3008(day)X
3144(before)X
3370(the)X
3488(last)X
3619(mode)X
3817(of)X
3904(infection)X
555 4428(\(the)N
2 f
700(\256nger)X
1 f
907(server\))X
1151(was)X
1296(identi\256ed,)X
1638(analyzed)X
1944(and)X
2080(reported)X
2368(widely;)X
2628(the)X
2746(worm)X
2953(was)X
3098(very)X
3261(successful)X
3611(in)X
3693(propagating)X
4096(itself)X
555 4518(during)N
784(this)X
919(time)X
1081(even)X
1253(on)X
1353(systems)X
1626(which)X
1842(had)X
1978(\256xed)X
2158(the)X
2 f
2276(sendmail)X
1 f
2585(debug)X
2801(problem)X
3088(and)X
3224(had)X
3360(turned)X
3585(off)X
2 f
3699(rexec)X
1 f
3874(.)X
3934(Finally,)X
555 4608(there)N
736(is)X
809(evidence)X
1115(that)X
1255(the)X
1373(worm's)X
1638(author)X
1863(deliberately)X
2262(introduced)X
2625(the)X
2743(worm)X
2950(to)X
3032(a)X
3088(foreign)X
3340(site)X
3471(that)X
3611(was)X
3756(left)X
3883(open)X
4059(and)X
555 4698(welcome)N
865(to)X
947(casual)X
1168(outside)X
1419(users,)X
1624(rather)X
1832(ungraciously)X
2266(abusing)X
2535(this)X
2670(hospitality.)X
3067(He)X
3181(apparently)X
3540(further)X
3779(abused)X
4022(this)X
4157(trust)X
555 4788(by)N
655(deleting)X
933(a)X
989(log)X
1111(\256le)X
1233(that)X
1373(might)X
1579(have)X
1751(revealed)X
2044(information)X
2442(that)X
2582(could)X
2780(link)X
2924(his)X
3037(home)X
3235(site)X
3366(with)X
3528(the)X
3646(infection.)X
3991(I)X
4038(think)X
555 4878(the)N
673(innocence)X
1019(lies)X
1150(in)X
1232(the)X
1350(research)X
1639(community)X
2023(rather)X
2231(than)X
2389(with)X
2551(the)X
2669(worm's)X
2934(author.)X
2 f
755 5001(Will)N
908(publication)X
1292(of)X
1374(worm)X
1576(details)X
1809(further)X
2051(harm)X
2240(security?)X
1 f
2574(In)X
2661(a)X
2717(sense,)X
2931(the)X
3049(worm)X
3256(itself)X
3436(has)X
3563(solved)X
3792(that)X
3932(problem:)X
4241(it)X
555 5091(has)N
682(published)X
1013(itself)X
1193(by)X
1293(sending)X
1562(copies)X
1787(to)X
1869(hundreds)X
2183(or)X
2270(thousands)X
2610(of)X
2697(machines)X
3020(around)X
3263(the)X
3381(world.)X
3628(Of)X
3733(course)X
3963(a)X
4019(bad)X
4155(guy)X
555 5181(who)N
713(wants)X
920(to)X
1002(use)X
1129(the)X
1247(worm's)X
1512(tricks)X
1710(would)X
1930(have)X
2102(to)X
2184(go)X
2284(through)X
2553(the)X
2671(same)X
2856(effort)X
3055(that)X
3195(we)X
3309(went)X
3485(through)X
3754(in)X
3836(order)X
4026(to)X
555 5271(understand)N
927(the)X
1045(program,)X
1357(but)X
1479(then)X
1637(it)X
1701(only)X
1863(took)X
2025(us)X
2116(a)X
2172(week)X
2362(to)X
2444(completely)X
2820(decompile)X
3174(the)X
3292(program,)X
3604(so)X
3695(while)X
3893(it)X
3957(takes)X
4142(for-)X
555 5361(titude)N
757(to)X
839(hack)X
1011(the)X
1129(worm,)X
1356(it)X
1420(clearly)X
1659(is)X
1732(not)X
1854(greatly)X
2097(dif\256cult)X
2370(for)X
2484(a)X
2540(decent)X
2770(programmer.)X
3227(One)X
3381(of)X
3468(the)X
3586(worm's)X
3851(most)X
4026(effec-)X
555 5451(tive)N
695(tricks)X
893(was)X
1038(advertised)X
1388(when)X
1582(it)X
1646(entered\320the)X
2081(bulk)X
2243(of)X
2330(the)X
2 f
2448(sendmail)X
1 f
2757(hack)X
2929(is)X
3002(visible)X
3235(in)X
3317(the)X
3435(log)X
3557(\256le,)X
3699(and)X
3835(a)X
3891(few)X
555 5541(minutes')N
855(work)X
1040(with)X
1202(the)X
1320(sources)X
1581(will)X
1725(reveal)X
1942(the)X
2060(rest)X
2196(of)X
2283(the)X
2401(trick.)X
2608(The)X
2753(worm's)X
3018(fast)X
3154(password)X
3477(algorithm)X
3808(could)X
4006(be)X
4102(useful)X
555 5631(to)N
637(the)X
755(bad)X
891(guys,)X
1082(but)X
1204(at)X
1282(least)X
1449(two)X
1589(other)X
1774(faster)X
1973(implementations)X
2526(have)X
2698(been)X
2870(available)X
3180(for)X
3294(a)X
3350(year)X
3509(or)X
3596(more,)X
3801(so)X
3892(it)X
3956(isn't)X
4118(very)X
555 5721(secret,)N
783(or)X
870(even)X
1042(very)X
1205(original.)X
1514(Finally,)X
1780(the)X
1898(details)X
2127(of)X
2214(the)X
2332(worm)X
2539(have)X
2711(been)X
2883(well)X
3041(enough)X
3297(sketched)X
3598(out)X
3720(on)X
3820(various)X

14 p
%%Page: 14 14
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(14)X
1 f
555 762(newsgroups)N
958(and)X
1094(mailing)X
1358(lists)X
1506(that)X
1646(the)X
1764(principal)X
2069(hacks)X
2272(are)X
2391(common)X
2691(knowledge.)X
3103(I)X
3150(think)X
3334(it's)X
3456(more)X
3641(important)X
3972(that)X
4112(we)X
555 852(understand)N
927(what)X
1103(happened,)X
1451(so)X
1542(that)X
1682(we)X
1796(can)X
1928(make)X
2122(it)X
2186(less)X
2326(likely)X
2528(to)X
2610(happen)X
2862(again,)X
3076(than)X
3234(that)X
3374(we)X
3488(spend)X
3695(time)X
3857(in)X
3939(a)X
3995(futile)X
555 942(effort)N
754(to)X
836(cover)X
1035(up)X
1135(the)X
1253(issue)X
1433(from)X
1609(everyone)X
1924(but)X
2046(the)X
2164(bad)X
2300(guys.)X
2511(Fixes)X
2704(for)X
2818(both)X
2980(source)X
3210(and)X
3346(binary)X
3571(distributions)X
3990(are)X
555 1032(widely)N
793(available,)X
1123(and)X
1259(anyone)X
1511(who)X
1669(runs)X
1827(a)X
1883(system)X
2125(with)X
2287(these)X
2472(vulnerabilities)X
2950(needs)X
3153(to)X
3235(look)X
3397(into)X
3541(these)X
3726(\256xes)X
3897(immedi-)X
555 1122(ately,)N
751(if)X
820(they)X
978(haven't)X
1239(done)X
1415(so)X
1506(already.)X
3 f
555 1308(6.)N
655(Conclusion)X
1 f
9 s
715 1422(It)N
777(has)X
891(raised)X
1081(the)X
1187(public)X
1385(awareness)X
1699(to)X
1773(a)X
1823(considerable)X
2205(degree.)X
2451([R)X
2541(H)X
2611(Morris,)X
2843(quoted)X
3057(in)X
3131(the)X
3237(New)X
3391(York)X
3557(Times)X
3755(11/5/88])X
10 s
755 1578(This)N
917(quote)X
1115(is)X
1188(one)X
1324(of)X
1411(the)X
1529(understatements)X
2070(of)X
2157(the)X
2275(year.)X
2474(The)X
2619(worm)X
2826(story)X
3006(was)X
3151(on)X
3251(the)X
3369(front)X
3545(page)X
3717(of)X
3804(the)X
3922(New)X
4094(York)X
555 1668(Times)N
775(and)X
911(other)X
1096(newspapers)X
1491(for)X
1605(days.)X
1812(It)X
1881(was)X
2026(the)X
2144(subject)X
2391(of)X
2478(television)X
2809(and)X
2945(radio)X
3130(features.)X
3445(Even)X
3630(the)X
2 f
3748(Bloom)X
3977(County)X
1 f
555 1758(comic)N
771(strip)X
933(poked)X
1149(fun)X
1276(at)X
1354(it.)X
755 1881(Our)N
900(community)X
1284(has)X
1411(never)X
1610(before)X
1836(been)X
2008(in)X
2090(the)X
2208(limelight)X
2516(in)X
2598(this)X
2733(way,)X
2907(and)X
3043(judging)X
3307(by)X
3407(the)X
3525(response,)X
3846(it)X
3910(has)X
4037(scared)X
555 1971(us.)N
686(I)X
733(won't)X
940(offer)X
1117(any)X
1253(fancy)X
1452(platitudes)X
1783(about)X
1981(how)X
2139(the)X
2257(experience)X
2626(is)X
2699(going)X
2901(to)X
2983(change)X
3231(us,)X
3342(but)X
3464(I)X
3511(will)X
3655(say)X
3782(that)X
3922(I)X
3969(think)X
555 2061(these)N
740(issues)X
951(have)X
1123(been)X
1295(ignored)X
1560(for)X
1674(much)X
1872(longer)X
2097(than)X
2255(was)X
2400(safe,)X
2570(and)X
2706(I)X
2753(feel)X
2894(that)X
3034(a)X
3090(better)X
3293(understanding)X
3767(of)X
3854(the)X
3972(crisis)X
4161(just)X
555 2151(past)N
704(will)X
848(help)X
1006(us)X
1097(cope)X
1269(better)X
1472(with)X
1634(the)X
1752(next)X
1910(one.)X
2086(Let's)X
2271(hope)X
2447(we're)X
2651(as)X
2738(lucky)X
2936(next)X
3094(time)X
3256(as)X
3343(we)X
3457(were)X
3634(this)X
3769(time.)X
3 f
555 2337(Acknowledgments)N
1 f
755 2460(No)N
873(one)X
1009(is)X
1082(to)X
1164(blame)X
1380(for)X
1494(the)X
1612(inaccuracies)X
2030(herein)X
2251(except)X
2481(me,)X
2619(but)X
2741(there)X
2922(are)X
3041(plenty)X
3261(of)X
3348(people)X
3582(to)X
3664(thank)X
3862(for)X
3976(helping)X
4236(to)X
555 2550(decompile)N
909(the)X
1027(worm)X
1234(and)X
1370(for)X
1484(helping)X
1744(to)X
1826(document)X
2162(the)X
2280(epidemic.)X
2634(Dave)X
2824(Pare)X
2987(and)X
3123(Chris)X
3316(Torek)X
3528(were)X
3705(at)X
3783(the)X
3901(center)X
4118(of)X
555 2640(the)N
673(action)X
889(during)X
1118(the)X
1236(late)X
1372(night)X
1556(session)X
1807(at)X
1885(Berkeley,)X
2215(and)X
2351(they)X
2509(had)X
2645(help)X
2803(and)X
2939(kibitzing)X
3243(from)X
3419(Keith)X
3617(Bostic,)X
3861(Phil)X
4009(Lapsley,)X
555 2730(Peter)N
740(Yee,)X
910(Jay)X
1037(Lepreau)X
1321(and)X
1457(a)X
1513(cast)X
1658(of)X
1745(thousands.)X
2125(Glenn)X
2341(Adams)X
2588(and)X
2724(Dave)X
2914(Siegel)X
3134(provided)X
3439(good)X
3619(information)X
4017(on)X
4117(the)X
555 2820(MIT)N
722(AI)X
827(Lab)X
972(attack,)X
1204(while)X
1402(Steve)X
1600(Miller)X
1820(gave)X
1992(me)X
2110(details)X
2339(on)X
2439(Maryland,)X
2791(Jeff)X
2932(Forys)X
3134(on)X
3234(Utah,)X
3430(and)X
3566(Phil)X
3714(Lapsley,)X
4008(Peter)X
555 2910(Yee)N
705(and)X
841(Keith)X
1039(Bostic)X
1263(on)X
1363(Berkeley.)X
1713(Bill)X
1852(Cheswick)X
2188(sent)X
2337(me)X
2455(a)X
2511(couple)X
2745(of)X
2832(fun)X
2959(anecdotes)X
3296(from)X
3472(AT&T)X
3710(Bell)X
3863(Labs.)X
4079(Jim)X
555 3000(Haynes)N
816(gave)X
988(me)X
1106(the)X
1224(run-down)X
1556(on)X
1656(the)X
1774(security)X
2048(problems)X
2366(turned)X
2591(up)X
2691(by)X
2791(his)X
2904(busy)X
3075(little)X
3241(undergrads)X
3618(at)X
3696(UC)X
3827(Santa)X
4025(Cruz.)X
555 3090(Eric)N
709(Allman,)X
989(Keith)X
1187(Bostic,)X
1431(Bill)X
1570(Cheswick,)X
1926(Mike)X
2115(Hibler,)X
2360(Jay)X
2487(Lepreau,)X
2791(Chris)X
2984(Torek)X
3196(and)X
3332(Mike)X
3521(Zeleznik)X
3822(provided)X
555 3180(many)N
753(useful)X
969(review)X
1208(comments.)X
1597(Thank)X
1822(you)X
1962(all,)X
2082(and)X
2218(everyone)X
2533(else)X
2678(I)X
2725(forgot)X
2941(to)X
3023(mention.)X
755 3303(Matt)N
926(Bishop's)X
1230(paper)X
1429(``A)X
1561(Fast)X
1714(Version)X
1988(of)X
2075(the)X
2193(DES)X
2364(and)X
2500(a)X
2556(Password)X
2883(Encryption)X
3259(Algorithm'',)X
9 f
3686(\323)X
1 f
3749(1987)X
3929(by)X
4029(Matt)X
555 3393(Bishop)N
801(and)X
937(the)X
1055(Universities)X
1462(Space)X
1674(Research)X
1989(Association,)X
2407(was)X
2552(helpful)X
2799(in)X
2881(\(slightly\))X
3194(parting)X
3441(the)X
3559(mysteries)X
3886(of)X
3973(DES)X
4144(for)X
555 3483(me.)N
713(Anyone)X
987(wishing)X
1260(to)X
1342(understand)X
1714(the)X
1832(worm's)X
2097(DES)X
2268(hacking)X
2542(had)X
2678(better)X
2881(look)X
3043(here)X
3202(\256rst.)X
3386(The)X
3531(paper)X
3730(is)X
3803(available)X
4113(with)X
555 3573(Bishop's)N
2 f
859(deszip)X
1 f
1079(distribution)X
1467(of)X
1554(software)X
1851(for)X
1965(fast)X
2101(DES)X
2272(encryption.)X
2675(The)X
2820(latter)X
3005(was)X
3150(produced)X
3469(while)X
3667(Bishop)X
3913(was)X
4058(with)X
555 3663(the)N
673(Research)X
988(Institute)X
1270(for)X
1384(Advanced)X
1730(Computer)X
2070(Science)X
2340(at)X
2418(NASA)X
2656(Ames)X
2863(Research)X
3178(Center;)X
3434(Bishop)X
3680(is)X
3753(now)X
3911(at)X
3989(Dart-)X
555 3753(mouth)N
779(College)X
1048(\()X
2 f
1075(bishop@bear.dartmouth.edu)X
1 f
1998(\).)X
2085(He)X
2199(sent)X
2348(me)X
2466(a)X
2522(very)X
2685(helpful)X
2932(note)X
3090(on)X
3190(the)X
3308(worm's)X
3573(implementation)X
4095(of)X
2 f
555 3843(crypt)N
1 f
720(\(\))X
794(which)X
1010(I)X
1057(leaned)X
1287(on)X
1387(heavily)X
1643(when)X
1837(discussing)X
2190(the)X
2308(algorithm)X
2639(above.)X
755 3966(The)N
900(following)X
1231(documents)X
1598(were)X
1775(also)X
1924 0.4028(referenced)AX
2285(above)X
2497(for)X
2611(quotes)X
2840(or)X
2927(for)X
3041(other)X
3226(material:)X
2 f
555 4089(Data)N
735(Encryption)X
1111(Standard)X
1 f
1404(,)X
1444(FIPS)X
1623(PUB)X
1798(46,)X
1918(National)X
2214(Bureau)X
2466(of)X
2553(Standards,)X
2909(Washington)X
3316(D.C.,)X
3507(January)X
3777(15,)X
3897(1977.)X
555 4212(F.)N
639(T.)X
728(Grampp)X
1011(and)X
1147(R.)X
1240(H.)X
1338(Morris,)X
1596(``U)X
8 s
1708(NIX)X
10 s
1841(Operating)X
2182(System)X
2437(Security,'')X
2798(in)X
2880(the)X
2 f
2998(AT&T)X
3217(Bell)X
3366(Laboratories)X
3803(Technical)X
555 4302(Journal)N
1 f
804(,)X
844(October)X
1123(1984,)X
1323(Vol.)X
1483(63,)X
1603(No.)X
1741(8,)X
1821(Part)X
1970(2,)X
2050(p.)X
2130(1649.)X
555 4425(Brian)N
753(W.)X
869(Kernighan)X
1228(and)X
1364(Dennis)X
1611(Ritchie,)X
2 f
1882(The)X
2022(C)X
2095(Programming)X
2564(Language,)X
1 f
2924(Second)X
3180(Edition,)X
3455(Prentice)X
3738(Hall:)X
3918(Englewood)X
555 4515(Cliffs,)N
777(NJ,)X
9 f
906(\323)X
1 f
969(1988.)X
555 4638(John)N
726(Markoff,)X
1034(``Author)X
1335(of)X
1422(computer)X
1745(`virus')X
1979(is)X
2052(son)X
2183(of)X
2270(U.S.)X
2432(Electronic)X
2782(Security)X
3069(Expert,'')X
3377(p.)X
3457(1)X
3517(of)X
3604(the)X
2 f
3722(New)X
3884(York)X
4055(Times)X
1 f
4246(,)X
555 4728(November)N
914(5,)X
994(1988.)X
555 4851(John)N
726(Markoff,)X
1034(``A)X
1166(family's)X
1453(passion)X
1713(for)X
1827(computers,)X
2201(gone)X
2377(sour,'')X
2609(p.)X
2689(1)X
2749(of)X
2836(the)X
2 f
2954(New)X
3116(York)X
3287(Times)X
1 f
3478(,)X
3518(November)X
3877(11,)X
3997(1988.)X
555 4974(Robert)N
793(Morris)X
1031(and)X
1167(Ken)X
1321(Thompson,)X
1703(``Password)X
2084(Security:)X
2393(A)X
2471(Case)X
2647(History,'')X
2981(dated)X
3175(April)X
3364(3,)X
3444(1978,)X
3644(in)X
3726(the)X
2 f
3844(U)X
8 s
3902(NIX)X
10 s
555 5064(Programmer's)N
1047(Manual)X
1 f
1296(,)X
1336(in)X
1418(the)X
2 f
1536(Supplementary)X
2037(Documents)X
1 f
2418(or)X
2505(the)X
2 f
2623(System)X
2866(Manager's)X
3238(Manual)X
1 f
3487(,)X
3527(depending)X
3881(on)X
3981(where)X
555 5154(and)N
691(when)X
885(you)X
1025(got)X
1147(your)X
1314(manuals.)X
555 5277(Robert)N
793(T.)X
882(Morris,)X
1140(``A)X
1272(Weakness)X
1618(in)X
1700(the)X
1818(4.2BSD)X
2093(Unix)X
2273(TCP/IP)X
2532(Software,'')X
2916(AT&T)X
3154(Bell)X
3307(Laboratories)X
3733(Computing)X
4112(Sci-)X
555 5367(ence)N
723(Technical)X
1060(Report)X
1298(#117,)X
1498(February)X
1808(25,)X
1928(1985.)X
2148(This)X
2310(paper)X
2509(actually)X
2783(describes)X
3102(a)X
3158(way)X
3312(of)X
3399(spoo\256ng)X
3694(TCP/IP)X
3953(so)X
4044(that)X
4184(an)X
555 5457(untrusted)N
873(host)X
1026(can)X
1158(make)X
1352(use)X
1479(of)X
1566(the)X
2 f
1684(rsh)X
1 f
1806(server)X
2023(on)X
2123(any)X
2259(4.2)X
2379(BSD)X
2554(U)X
8 s
2612(NIX)X
10 s
2745(system,)X
3007(rather)X
3215(than)X
3373(an)X
3469(attack)X
3681(based)X
3884(on)X
3984(breaking)X
555 5547(into)N
699(accounts)X
1000(on)X
1100(trusted)X
1338(hosts,)X
1542(which)X
1758(is)X
1831(what)X
2007(the)X
2125(worm)X
2332(uses.)X
555 5670(Brian)N
753(Reid,)X
944(``Massive)X
1285(U)X
8 s
1343(NIX)X
10 s
1476(breakins)X
1768(at)X
1846(Stanford,'')X
2216(RISKS-FORUM)X
2773(Digest,)X
3022(Vol.)X
3182(3,)X
3262(Issue)X
3447(56,)X
3567(September)X
3930(16,)X
4050(1986.)X

15 p
%%Page: 15 15
10 s 0 xH 0 xS 1 f
3 f
555 474(Tour)N
748(of)X
835(the)X
962(Worm)X
4219(15)X
1 f
555 762(Dennis)N
802(Ritchie,)X
1073(``On)X
1245(the)X
1363(Security)X
1650(of)X
1737(U)X
8 s
1795(NIX)X
10 s
1908(,'')X
2002(dated)X
2196(June)X
2363(10,)X
2483(1977,)X
2683(in)X
2765(the)X
2883(same)X
3068(manual)X
3324(you)X
3464(found)X
3671(the)X
3789(Morris)X
4027(and)X
555 852(Thompson)N
917(paper)X
1116(in.)X
555 975(Ken)N
709(Thompson,)X
1091(``Re\257ections)X
1525(on)X
1625(Trusting)X
1916(Trust,'')X
2179(1983)X
2359(ACM)X
2561(Turing)X
2799(Award)X
3038(Lecture,)X
3324(in)X
3406(the)X
2 f
3524(Communications)X
4086(of)X
4168(the)X
555 1065(ACM)N
1 f
724(,)X
764(Vol.)X
924(27,)X
1044(No.)X
1182(8,)X
1262(p.)X
1342(761,)X
1502(August)X
1753(1984.)X

15 p
%%Trailer
xt

xs