Multics Security Evaluation - NIST Computer Security Resource Center

11 downloads 217 Views 6MB Size Report
Feb 13, 1974 - TYPE OF REPORT Be PERIOD COVERED. Fino[ Report .... 3.4.3.1 Minimal Value of the Password File. 47. 3.4.3
ESD-TR-74-J93, Vor. II

'

MULTICS SECURITY EVALUATION: VULNERABILITY ANALYSIS

Pau r A. Karger, 2Lt, USAF Roger R. Scherr, Major, USAF

June r974

Approved for pubric refease; distribution unfimited.

'

J



INFORMATION SYSTEMS TECHNOLOGY APPLICATIONS OFFICE DEPUTY FOR COMMAND AND MANAGEMENT SYSTEMS ELECTRONIC SYSTEMS DIVISION (AFSC) L. G. HANSCOM AFB, MA OJ730

LEGAL NOTICE

When U.S. Government drawings, specifications or other '

;, 3~

ex\ fixt4 b~nl



... -,,.

4C:t """~I I* D•daraUQrt for tl\e n.evic:e eonUnr•Uoll T•bh *I

4d 1 2 2

21 2i 30

31 ,a

ext entrYI

err~r•t•bl.t_$g~m..no.cQt ext,f1X94 bin,

trror.t1Bl•~•••v-nt_as8n4 txt f~xe4 bin,

to~

11

aa 23

28

1972,

I* tevice confivura•ion tabl• *I

I* nGmber of 4evtQ•• *I

1• nut of te¥~c• «••c:~rbUh •1

1• '''~c• na~• *I , It I\I!.Jie Qf PhY•hd flbalnt' 11\4 G%0C:: *I 1• t;%QC:: number ct t._b hv'-C,!• •1 1• ,,. channe~ nu~-•r of th&l tevice *I 1• Olf ~f 4~rect c~aant1 *I

~ct-1t9S ext a1i;ne4, n4~tv fix•4 bin 117),

4eac (JOO I* 4•v_nam~max *I ) I J 4er.,.um cilu (l2) 1 ~ phfs.nam char (32), 3 t1tcno f1x•4 bin (3), J pht~hn fixed bin (12J, ~ «ttr•c:~•.cl\~n Ut c n 1.

I• liD IlfCJ,UDI , ·,"., 4ct

1, •, •,

*I

3~

3~

n 31 3i 4Q

It

JEG~If

,.,

114 ~~~

""

11S II§ 117

Ill

IIC~~DI

• "; .. c•t " ' " ' ~I Ass19ftment T~b'• for

~· Ch,nne~

tel

cat_te;S ext

a

e¥en~

f!Je4 b1a,

2 aba_baa• fix•4 bin 2 stat"bas• b1t (3) 1

51 sa

2 JJafeP p!r,

52

5~ 5~

56

3 4evtab {200), (3

ce~no

xa,erface

fto4g~e

*I

al~;ne4,

~~~

SQ

~~~ GXO~

bit (18),

(2~),

I* GXft va~t event *I I* abaolute a44ress of base of DCW segment *I I* status channel used by GIM *I

1• Pointer to safety DCW pair •1

I* per~4eviceR1nde¥ information accessed *I 1• bY the "4evx" pre•tnte4 in the GIM calla *I I* segment number ol the eel f~r this uaer */ I* • onlY acceased »Y one Pr~cess *I

-

~

4ct_n3..,.aU bU ( 11ll

6Q

3

4cV-~1•t.4en ~tt

64

3

stat~l ~it

57 5. 51

61

6~

6q

(1~),

(10),

3 en«_x bit ,,o,,

6~

611

3 pa4

67

bit (1),

l.iQ

3 attttl.loat bit (1),

70 71

~ 4lt~cHan

69

73

~

,'15.. 1J

a

bit

(1)

f1xe4

~in

(10),

a o•erlloV fixe4 bin (1!1•

H .,.

a ''''~' l512~ #ile4 bin ,,,,,

'7(1

80 11

u

u ........ ......

u

•86

n

••81

99 91

:J :a

,. 90

4d ao~

tp

Pttl

1 4t¥.,atrr b•••« C4P)

ca

2

~ctat ~~~ (181' 4cw_c~~l44 ~it

a ta4-a

(111•

~&t c1o1~

,,,,

0 )) uaUtntU. I• liP ;,CIVO•• ~ ••• ~ ~·t •••••• •I 2 Ur.,.tlllll bU

n

100

•l~;ne4,

aa ,.,_u'•tl.•n ut t 1a >,· ~~•t.s 1 t c1o>,

aa ''" us ,,,; l~ltt•.lo•t b~t

I*

1• I* I* I* I* I* I* I* I* I* I* I* I* 1•

1

paf1 lit t11t unaligned,

free~·

~-:.~

. -~

of aev •~•t wit~in 4ov se;~ente *I

J•ro 1• in~e;prete4 as 4eY•~ist not *I

yet aJloqate4 *I · · ·

•t•• of dqw 4~st in 4cw'• •1

off•e~

*I

in4ex pointinG to Ql4est

~tem

in

stat~• q~eue

'I ina,x pointinG to en4 of •tatua queue *I

'I

*I *I OJ if status lost *I

'I

on

tf

d~rect c~anne~

*I

•1

I* *I

I* vuess again *1 I* inaex pointinv tt ~·~a of fret statu• q;eue •I I* lt,tUI queue OYirlloV couat •I

/I* '''''' tueut *I 1• r••••••r to ohante "''•~••tth of oat.••• oa I* ha~t~or• bea4er:•f rot ablnt• th1a 1• po,at•r to «•'''' tatrJ *I 1• ~«•,tab" •~trr ••~i•rat,oi •1

•I *I

.....

*I

~0)

10i 10i

/

(4evx));

ta~l ioa~.check(tevx,code)J /* see 1f aew~ce aau1gned to th1a progess *I

~f code e~. ' then ao;

1* La not, so report error */ roo4e ~ error~t~b~e~$4ev_nt.•••na;

cetp "' null.;

10$ ,0§ 107

,o,

10!1

tc•no • 4P •> '''·•ntrr,c~tno; ~f cctno "' o thta ao; rc:oU II! error.tab1e_$91111..,J\C!.,.cO\J ccU • ftllll,J

,,,,,, 111

,, ,,~

tnU

11i

121

........

00

4eV1ce.na.mtJ entrY l4e•n•m• 4ctx, rc:o4e); 4c~

4evnaM oaar

aoti lla•'

1l!t 13~ 13

••t~h

*I

tc:o&e "' o; fl\4)

I• no

matc~e•l

'cole

1et

lllftdl

oomp~a~at

*I

~ error.t~b'•~t9l111~14•r91

tetUrnl

131

'"0

c,,,,

.0 lc'JC "' 1 to Ut.niJS;I\4!''­ . . . U 4c:;t_att$eclelc; t4cUI ,uv.,.nalll " un•m then utunl.

137,

13!1

I* Oevio• na111t *I 1• 4tvia• 1na•• fro• DCt */

C*)~

bln

I* setUP aDd ltarch the DCf for

121 ;;,

';n uHa

reun;

tc'' • baaeptr (Gctno); unu;

11

12, 13

't

tn4J

11a

~u

a44~(cat_aet$,4evtab

rtt11rn1

HO 11l

1:!0 121 12a 1U

• o;

rc~ae

4p •

~0·

VA~4AB~!$

PICLAI!D IN TH!$ CO"PILAT!Oit

LOC

lD:UTIFl;U

. . .,.

VUUDLIS DICLAIIP o.U.;;Il•n

otoo~o ext•rna~ 11tatl~ 0011~2 automat~c

;c::tu

exU•il•~

(!QtQO

~cano

bUU

pi.~amttu OQ61ij~ aUtQIIIt~O

ec::tt

coae

OQ0036

ac;t.,.sen

extern•~

txUJ'nd

4Q.V.,.Ust~1ea

aev..,,~lllt.,l.•ll

ltlt1e

«q::v,..ul.,.aU ~.~,

«••-•ntu at'l.,.naa~ ann•

.,...a

onoH

....

exu,n.;~. lllti tte extt~na~ •hUe; ~

iaramu•r

·

•xUJtild Ita Uc::

b.....

extend staUe

4i.rtl~..lhU 4P '

·

parit~~etil!r

.u.,.x

-····

ext111rna; UaUe

..... lft4J

errer.tab1e_S4eY.ftt.taana

0000~2 externa~ error.ta~t1e_,illll.,ba41n · ·-

otoo~a txterna~

trror.ttb1•-•tlm.,O-te•

ltltio · · '''tlc ·

ogoo~o eattrna~ •t•t~o externa~ ttatlc

exttrnat

~~~110

••~•rna~

loli.Pht~k

ltft~G

ltatlQ

oq~oa• ~'"~ r•~•r•nee 0000~1 extern•~

ft4tl

oTetf~ov

-

''' ·

••••rna~

ttati;

ttitie

extern•~ lt,t1o

ba•tl

Pl4 ; ••,

ezterna~ stat1~ ••~•rna~ 1tat~o externa~ atatlo

PhfG~I

PhJI.Aal rCQie

para111eter

extern•~

,,,,p

•t••.b••• lt•t.q

extern•~

ltatio ltatio

externa~ •tat1~

•t••.x ltat.x

extern•• static base4 extern•• ltatic baae4 ·

,,,,,._6oat •t•t"'•-lost D!CLli.D If

chts~tatv1ce.1n4ex •--•-- ----

b~tO~l

PQ.. ftttr fhU Un(l'7,0).

stnoture

:u.xe4 »h (37 ,o) bU(U) t~hC 1a1

bUt 1& I

»hne;

l~r~z~t~

000022

nAAn~a

COITI¥T,

~ink •ta~

re(er•nee

• • ~.~-~~•

£tn4 »he ,a,ol. ~~

ten tn,

.,~,c;,

POll\tfr b~t(101 b~t

4cl

2

&~i;nea

4cl 78

1 ••~•n•d 4~' 78 8 rtf 111 112 117

~eve~

arrar

~·••1 ~ Ql\l~li~•« ~c1

"•••t;"'' 8 ret 108

l•ve~ 2

del del 10

11~

~·c

10' 106 love~ 1 al~ini4 4c1 J1 del 125 ref 130 1~1 1~2 arr~Y

1•••1

arr&Y

1ev~1 ~

1tt~l ~·••1

2 2

$-~nal~enea

~~~~~vno4 Ul$~1ine4

'78

del ~~ ref 111 117

del 93

del

9~

~nllitnMI

arr~r

c::tlar ­

11

~eve~

AJP lll!IJJCB$

del '78

4c1 78

leVel 2 al&et•t 4c1 ,, 1evol 1 •litne4 401 tl arrar 1•••! 3 altv••« act 31 r•f 131

atnihn' lltriJctllfG~

4h..,.thn

tr,,_.

a~s.ncac.,ol

atnotQre U.~t4 11lnCl8,0J bh c '~)

JUlllltUr e•terna~ st•t1e

a~r.aha•

eVeDt

Uxt4

l!t&'VQtiiU cJ>nUi.l)

'

lCtJtBU~ES

DUA 'UU

000036 eicUJ'Ild UIUCl

oooo'o

4tvUb 41¥1

li!tt!. tie

bUU

ac;v..,nl..,...44

VAI~AILIS

·

sta Ue

Pnameu~

4CtlC

~

Q~ASS

~T tlc~AJI ITAflftiJT, ·~una~ lltatlc;

~.t

..

S~OIAGI

oo,

f~Jt4 llbO'•Ol

l',

~na~~;ne~ as1 135 rel 13~ arr'r lsV@! 2 ~~te~·~ tet '78 r•t tct·a ,,g 1g~ 105 artar lt¥•1 3 il\a•1tnea 4c1 78 1•r•1 2 Yla1ltne4 lcl P3 artar 1•••1 3 ~~~;pet lol 31 401. u nl 10! ,,, 1•••1 a v••'1tnt4 tal ,, arr•r lt9e1 ) a•alltnt4 4c1 78

tel 16 rei

,o.,

r•t

tl~

UnC3'7,01

tat 16

JJl"ncc ,,otU

entrr ­ U.xtl Un0'7 ,o•

4CII. 16 n!C 'U lfve1· 2 a'italt aol ' ' 1••·~ a ~~ltntt tel '' arrar ''''~ J alitDel •Ql J1 ••t•rnt~ ''''''~i~1• rtf ,os 1tfel a ·~11nt4 lol ,, r•f 130

bU(U

lfflf 1•¥•1 I iftl~ltnet 4G1 71

t~xtt

Uut £b•t &I fbtl

~tbc o,o~ ,o~

£~••'

unc a.u

£btl

J:lt.nc

b~tc;;

btt', f xt4 bhOZ,o~ c)lar C:ta)

t~:ictl ~b07,o~

polntu

bU(;J)

fhd tit a r?1, oJ blt(10)

c;o; ·

t~h ~un)

blt ( ,

entn allt.rv

~ittl

a •lltnee 4ol 18

~•••1

a ~·••ivata

~•vel

2

1•r•l

a uaa~liaea

4c1 $1

1rrar 1•••1 l uatll;nel 4c1 11 arr•r 1•••1 3 ~~~ilt4 «c% ,, 1rrar level 3 ••i9Jt4 4c1 ~1 «cl e ref 'g3 19' J13 12P 136 a~itnea ac~

'e

1eve1 2 a~itne4 ' ' ' ?8 arrar level 2 •li9De4 ael '78 arrar 1•t•1 3 gn••~;nea ac1 ' ' 1ewe1 2 uaa~i;nea tel 93 1rtar letel 3 qpllliftt4 4c1 18

acl 93

extern•~ 1rfe4uct~'e

external lrre4uc

~l•

ref 2

rti 122

10~

.........

......

.........

......

...... •••

....... 4111111

aar::

aaa

""'""""

aaa

...........

.......

000

uuu

,,,

.......... ~ac:

c:a.a ............

t • I'

.........

........... "04..t..t :I':IJ::S

AA.Q

.

a

...

...... 0

&4

u

H

"'' lit H

• 0

&4 K lil

&4·

•u

.. ..•... 0

.a A

u

..

-... lit A

...

k

..

.C· .. N ......

•. , . -~.c·~

>

·A·A

120

..•• .... ..•• ..••

'ISGIIPIOI %ftAGII OOOQOO 0000180000, ..

OQ0001

COJf'rU'I

oooo uooeoa 1

oooooa aa

OOOOOfOOflOOO

!'l;X!D

OQOQO~

OOOOOt000001 OOOOOtOOOO;U

ruED

00000«?0001,0

run

00000f000002 .,.,,7717Uno

!'IUD

OOOOOil 000005 oooooo 000007

UXZ:D

UXJD

H'l77!09oou !'XXID 000010 OQ000,00$000 090011 IIGIJ JIOCIDVII G~eC,f4tY~ee_in4ex lltlt tO ohtt~tttY1cfi~aa•x · 000013 •• 1-J 1JO - I 11l3 e~•c oooo•~ •• i•i 041l ,._ 11l& -•4• OOOQ,~ a~ ~-- 1$1 !ll~ ~-~ ·viet oooo•s •• ~,, ,., 45' 11lll _in4 oooo1t ai ~~$ ,,o ioo ooo oooo1' ai · - ooooooooooaa

OOOQ20 aa oOtOOQOO~OOO

....,., .....•••• .... :i:iU ..•• ....••... ....•• •• ••

.... ooou~ .... oooo~ .... 00002~ oooua oooou

O~OQ~a

6 OQ11f6 1501 20

n

--

ooooo•ot~ooo

0000~,

OQO $0

L~ll

I"'

• ooua 000001 oooooo 0 0 u OOOQU ti t·oool" ,. 000 0 oooon OOOQ~O a oooh 0009~, • oo1u OOOQitZ i oo;$• OOOOIIS • oo;H 6 00111l 00001ll4 000011~ 6 00102 00001l6 a a 6 00,113 6 OO,Oil 000011'7 777no OQOO~O 6 00106 00005, 0000!!.2 aa 77772;

n11 JUO no 1101 1511 "~'

au' Ut1

'571 IU1

15~1

IU1

!152, suo 2521 !s:ao

ao oo oa ao 72 oo oo oo ao 20 00 oo 00 oc. 00 Oil

tis6

.,,

Ub~J

1it~4,•

U•q

tPIU

IIIC7

.

•t•q

u•

•t•

.,

000913 0000 • oooo i 0009-. ooot 6 000917 oootao 000••1

1411

cl• nxa

•••b '-~Ph

UPbt _.,,,

Uaq .,.q

112

"''o~ a,u

"' ,o~ •PI10a,•

,,,,,,.

,

lll,lftiJr ' OJ

~ZJI

10$

lt.llftJit 1 OJ

~ZII

'Oil

, OJ

~;IE

10~

o,,~

IPIS6t* U1Ut*2 liP I~ •PI po UJ110 ,pJ78,* ltA~Bft5Jt

eapl)p

atPtiP

niH•* IPI~6 appn

atPtiJ eant

.. ~o,s.c;:

ooevoo w oooo,aoooo,,.

•ll1,1C

ooovo1 •- oooo,aooooa,

eut~P

atP~J

eaDbD

I!IPI~B

apJ'10

IUIHU

2

•x

ooo1•o nn oo ooo;,,. ueo oo .. ooou n21 ao 7t000.090012 6 ootu 1311 oo 6 00,~6 f$71 00 oooooa o' • 00,50 561 00

ooo:u ooo a;

IIAtlftiJf 1 01

...... uu i:1111t•c hi ••• '" oct Ct(lt

II'! 102•* liP J1

,.,.,,

uuoe

))p!J

niiJOt

ooooao

rttan

ntna

7UU1a'71tltl7

ta15U1?1tat7

, oooou

ooor~n

000054 000!17 000 ~0 0000t1

.

""'

.....•• ... •• II&

II 00026 1$1. :10 010000 .,,. 0' 0 OOU2 no• 00 6 00143 Ut• oo 000001 21U 07

oooo9; eooo o11 6 ooou 110, :.10 ooo:u ooo U .. lla II OOOU Ut1 20 OOOti~ ,ai ! 00,166 'Ui ao 77772~ 8310 011 oooou oooo•• •• • 00,20 95,~ 20 0000157

oooro 000 .,,

oooo1a

oqovn 000071J

000015 000016 00007'7 ~00,00 to')

00201•

000102 000103 000101+ OOOJO$ OOOJOO

000,01

OOOJ'O

.. ••.. ...••. •• ••

.. .. ..•• ..•• Ill

•• ·~

at+

oo6~~'

000,~6

,.,

..p:J.p

'"'''

..·

.,,~ 1PI~6,•

•ll5,1c

0 OOU1 t10• 00

tra

apiiiO?

f 001111 IU1 20

taPliP 1ft

a ooooo

,,.,

n•• ao ,,. tu' oo .,.

0000116 ' " ' 00

t oo~u

000007 1010 Oil

• ooou no1 ao II 000,0 Ut, 20 • oo~u 7561 ao 11111 o ano 011 6 oo~2o "'' ao 0 OOU1

7~0~

6 00112

00 1130 06

00

~~~1

oooooo a, 00000 ooooo uu 00 oo t 00151J 3U1 oo 6 OO,Sil Ut! 00 t oo;:eo ao

ss•' 'n'

,.$

lla

II. OOQ,iUl

uu Ua~ ao

••

6

001~6

75?1 00

a• · 6 oo,so

oo

76tootoooo1o •• • oo•ao ,,,, 6o ••

aa

t;u

"" ;o~,·

..••••

OOOJ~'7 ~. u

~to~"o ooo,~1

1tf1c .,,

(lllpq

l.hq

'$ •• ,..

ooo

""'

tU

n•

000 " 000113 •• 0 00631 1101 00 lltlf TO 4ev~~e.fta•• . 000~,~ •• '!! 166 151 OOOJ'II aa '!J 1'5 ''' 1$6 000 1 155 , .. s 000 000,16 aa 00fQ0000001~ OQ0,11 ta 60000900tOOO ooooo,ooeooo 0.00130 ooo1a1 000160 8210 00 OOOU2 00011!1 00 ooola~

UblP

u1a2,• 40ifr11 UIIJ02

•ubP

000001 Uf;O 01

6

156~ 00,~4 ~~6~ a~

''" ltiP"P

.

IP lfOi• IPI'PI,• lipJO,t

.,,,. n

ltAtfftllt 1 01 •XII 106

OOIV70 ltltllll! 1 OJ L%11 107

ITAtiKIIT 1 01 L%11 108 000810 ~ 7777770000IIJ ltltiKIJt 1 OJ

~%11

109

ltl,lftll! ' OJ

~Ill

11'

retun

.

,,~.c;

'"'"'··

.,lh

1PI34,t

Uaq

..ot,t.c

.,.,••••, ' 01 •:•• ,,2

ooe:oJ Ita lftllt

1 OJ

~lll

11S

ltAIIlllt 1 OJ

~XII

111

,,,,o~,·

IPtfO,•

"" '~~'~ u. Oid '''" ,.,,., .,.,,

.

u11. ut ou

apt~JO?

ooe,,o •

71777'7000011~-

IUIIJIII'I ' .OJ U_ll 1'5 ret;n UUialll 1 OJ Ull 1' '

. .tlb)

~PIO

ltPIIP

blt!O IPI101

"" '"'

apl40?

Utq

···~ ••• , ,

,,,:o­ apt_ o,•

Cllo.J'

..

•••6

112 76

tstlbp

1PI~6,•

Uaq tt;aq

., 1,o~

Ut fl.J 2,4q

spJ80 1,U,

' ' 1'o~

!~H~!· -­

StlflftiJt 1 OJ

r:eun

nanaJJt

1

~Ill

111

o• un 1a2

----+..

OOOU3 0001311 0005.35 000136 ooo;n 00011i0 0001111 ooo1112 ooo;cu 00011111 ooo;"s 000llll5 0003117 000150 ooo;,, 000,52 000,53 000,~~

000155 OOOJ$15 000l57 0003110 OOOJ6' 0001f2 000,.3

..,.OOOj~CI

N0Q0tf5 "'OOOU6

OOOJ67 ooo 70 OOOJ'71

ooona

0001'7~

OQ0,'71f 000!15

.... •• ..•••• 11a

•• ••

•••• •••• •••• •••••• ••••lie •••• ••••

.. .. .... •• ••,.. ..•• ••

6 001114 'J5151 00

·~q

liP l 100

6 001116 uo,

~0

IIill

11PI102,*

6 000111+ li oooU 6 00~52 000001 6 00,16 6 00,.'16 6 00,5~ 000002 0000211

20 20 00 0'7 20 20 00 Oil

eap).p

•Pt36,*

Ut3o,• liP I ,o~ 1,u

spt78,*

sp pa,•

sp 1,o~

2,1c; 20,1c

1'70' U61 '7561 ,300 '1561 2361 !161 11000 11050

Oli

6 001114 000011 000777 oooooo 6 00,16 000023 000000 oooo11o 6 OOOIUI II 000315 2 777511 o oo~u

U11 00 7320 00 5760 07 e:no 06 ~361 20 90.0 0'7 3220 06 :aao o7 5'101 20 5521 '13 S$21 00 17~1 oo 6. OO,Illi U61 oo 6. 00,11 $521 20 0 00~,0 67Q1 00 000002 11010 011 0 00~~1 '1101 oo

lh

llioq 3,4q

stq 14q CIIIPq

tze tpl, lhq qrs

uq

eax7 ;J,4q

II!Pf

••IC2

lxU

UPb

~-.h •n~P

t•))J.p

uu eap))p tllblJ

ti\Z

tn

spt76

12~

$TliiKIIT 1 01

~XJZ

130

ooo,u

oovp, $TlfEKIIT 1 01

~~~~

1~~

,,

-

--~----

o,ql

spJ'78 1 *

19,41

o,,~

32 1 U IIPIU,*

1PI~0,*2

bpJfll1~

apJ~1?

••t.,.c;:sa

11Ptt6,• ~92

epi~·

sp 1100

tP! ;z, c:

•PI~O?

-22,1c;;

6 000114 ,'701 20 11 ooo$11 U6 1 ao • 00,46 '7561 20

eaplp

spf36,•

Ufl

lpf~S,• liP I ,o~,•

0 00631 7101 00

tra

aptiiO?

0 OOU1 lJ101 00

tfa

APII609

~hec~S4t¥~ce-~n4ex

~JII

-

9

•o• tra

IJP riOCIDUJI

STAilftiiT 1 OJ

-

5' 1 ,4;1.

6 oo116 Ulf1 ao 777152 'HOO Oil

;J.dq

-

1PI18,*

00 167 ntnn

$flilftiJ! 1 OJ L%1! 132

ooo, .. a

lfAI!ftiJf 1 01 lfAIIftiJT 1 QJ return ~fAtlftiJf 1 OJ retUfn -

~%11

'Jt

~%11

1~'1

~JJI

1110 ··

ooo•u

tn

t,i.a

0001'11l

0001711

1;n

.. ,,,.,1.,

000013

---



,..

CO"'PILATION LISTING OF SEGMENT zg Co11p1ted byt Hultlcs Pl/I Coapller, Version II of 30 AUSJUSt 1973. Co!llplled ona 04/10/74 181t3o4 edt Wed Opt lons 1 11ap 1 Zgl

z

proc (dp, wordJ; ~a=•==a•) ; 155

go to check_lnit; 156 ,. .. a 157 call loa_ (f Heft), first+outi-1, data U), data U+U, data U+2)); 151 end; 159 chi cllk..i n 1t a 160 call zg~zf(ptr(Mdsegptr, baseno(segpt~)), save_acc); 1• replace old •ired rin~ access •1 161 i f lnitsw -,. 0 then call hcs_Ster•inate_nona•• Csegptr, code);

162 return;

163

end;

16ft iltl

.

NA'fES DECLARED IN THIS COHPILATION. IOE.,.TIFIER

OFFSET

LOC STORAGE Cl.ASS

DATA TYPE

ATTRIIlUTES AND REFERENCES

bit 16)

NAHES DECLAR~ D BY DECLARE STATEMENT •

eount

000034 constant OOOUit autoaet ic

entry fixed

cu_sarg_pt,. cv_oet_cheelir.. data

000052 constant 000032 constant 000115 auto•tlc

entry entry fixed blnU7,0)

datap d1rnaH dHg Qeg_word enaaa error_table ..lno~g arrpr_table.,.l se SJI\.nown

002120 autoaatlc 002121t autoaatlc: 002206 autoaatlc: based 002176 autoaat lc 000026 external static

pointer char 1161) struc:t~o~re b~t U6)

Ch.. rC32J fixed blnU7,0)

level 2 pac;kad un'llgned del 30 .sat ref 110 Ult array del 7 sat ref 126 hvel 2 pae!Jed una.Ugned del 30 set ref 118 del 7 set ref 118 120 120 de I 7 set ret lt3 ltlt 52 53 54 61 62 &It .&& 67 68 1 &9 81 82 87 88 93 94 95 96 JDZ 161 uterna 1 de·l 7 ref Sit 71 del 7 set ret 84 94 95 120 120 '120 121t 125 11t7 11t8 external del 7 ref 43 52 81 93 external del 7 ref 61 87 95 at' ray de t 7 sat ,., f 1t1 126 111 111 131 111 .us 152 152 156 ~56 156 de I 7 set raf lt1 unallSinad del 7 sat ra f 66 66 ·6& hva l 1 pac•d dc:J ~0 sat ~ef 10ft 105 111 ,Ui del . 7 set raf '10ft 1115 111 Ui unallanad del 7 sat rat 66 66 ;6a del 1 rat ~It 12 9ft

000030 000051t 000010 000101t 000044

fixed blnC17,0J entry char C16J fixed b1nC17,0J entry

del 7 rat 69 external del 1 ref && initial array del 7 set raf 156 del 7 sat raf 83 87 120 ~20 126 131 156 external del 7 ref 68 external del 7 ref 161 del 1 set ref 61 73 127 131 131 131 131 135 115 11t0 140 1_52 152 ..156 156 1~6 del 7 set ref ItO 70 161 external del 7 raf 45 89 97 116 111 131 133 15ft 156 . . ' del 7 set ref 121t 125 126 126 1~.9 131 .141 11t3 1 151 156 del 1 ref 51 52 60 81 93 del 1 set ~ef 122 126 146 1~ del 7 s•t ref 123 131 142 1~ 156 erray del 7 set rat 126 126 laval 2 pJte~ed \maligned del 30 level 2 packed unatlgned del 30 del 1 set ref 117 117 111 external del 7 raf &It 102 del 37 set ref .115 159 del 7 set ref 63 64 65 68 73 76 104 10ft 115 115 116 116 126 159 159 161 i•v•i 2-, packed unaligned del 30 sat ref 117 unaligned del 7 sat ref 50 50 61 64 87 19 9S·t7 del 1 set rat lt3 4ft 50 50_52 61 61 &It &It ~6 11 87 87 89 89 93 94 95 95 .97 97. Ult 135 135 151 1 152 lie I 7 set ref 128 U1 133 117 137 139 154 de I 7 set ref lt3 50 50 52 61 &It 66 81 87 :89 91 97

aee bdllta bnd

bound code

COli_.,.,._

exPand_path_ f

.....

"'

U1

ttr.tt hes_S1n1thta hcs_ataralnata_nona. .

0130) 00220& autoRtic based 0(19) 002206 autoutlc OOOU3 autoaatic 00010 0 autoaatlc

external static constant internal static autoaetlc constant

blt (3£,) blt (8) fixed blnU7,0) fixed binC17,0) ~lnC35,

0)

l

000042 constant 000102 autoaatie

antry fixed b.lnC17,0J

lnltsw loa_

00010 5 autoaat lc 000036 constant

fhaa blnC17,0J entry

·laft

000111 autoutlc

fixed blnU7,Q)

naxt_arg off sat outl ovarlay pad~

Qtdl PLSIZe rlngG_...gat ..sse gp:tr save_acc sagptr slze targ tc

the_.... tp

autout le auto. .tle autoaiitle based auto.atle auto•atlc autoaat le constant autoaiat lc auto11at1c

flxad blnU7,0) flxad blnC17,U fllcad blnU1,0J blt C3&) blt (19) blt C2J fixed blnU7,0J an try bltCJ&) pointer

0(27i GGZZGv al.itor;;atie

based. 000103 autoaat1c

bit ( :i.i c:her fixed blnC17,0)

000106 autoaatlc 002116 autoaat lc

flxed blnC17,0) pointer

000107 000110 oob101 ·· 002206 0128) 002206 000112 000040 002207 002122

••t

,7

--·

--·

4ft~

44~

44·~

44,

•• ,

4~Q

4&Q

,..

Ztl~f

00004& constant

entry

·external del 7 ret 116 159

NAMES DECLARE 0 8'f DECLARE STATEMENT AND NEVER REFERENCED.

condition_ 000000 constant entry SM auto•niltlc thea blnU7,0) NAMES DECI.AR:: 0 BY EXPLICIT CONTEXT.

bad_count 000736 0011t63 chec"-lnl t different 001341 get_bound 00077 o get_neaa 000327 001175 IOOQ alssing 000250 0011t24 r•• sklp 001342 000114 zd

externa I de I 7

lie I 7

la~el

constant constant constant constant constant constant constant constant constant constant

del 97 ref 97 120

del 159 rat 1SS 159

del 139 ref 135 139

del 102 ref IS 112

de 1 63.. rat 57 63

del 12~ rat 124 141

det ~lt.,r•f 54 67 69

del 15~ rat 129 152 156

del 140 rat 138 140

·external del 1 rat 1

label label label la~el

la~el

label label label entry

NAMES DECLAR:: 0 BY CONTEXT OR IMPLICATION.

addr

lntarn11 rat 41'66 66 66 66 Ult 105 1111U U6

126

internal rat 76 1Git 10ft us us 116 U.6 159 159

lnt~~trn•l r-f n 10/t 104

lnt•rnal r:-af 111

internet r.af 63 65

lntarna.l r.af 10' 104 115 US 116 116 126 1H 119

internal rat 110

buUtln function

aaeuno

bulltln bulttln bull U n bull tl n bullt1 n bulttln

._.,ptr

Uxad nult ptr substr

function function function tunctlon function function

STORAGE REQUI RElENTS FOR TliiS PROGRAM.

""""'

0>

Start IAngth Exttrnal

ObJ act 0 2124 pr~adu-a

Tut 0 1516

Un~

1656 56

Syabol 1734 156

Static

1&66

46

Oats 1516 140

za uses 1254 words of autoaatlc storage

THE FOLLOMitG EXTERNAL OPERATORS ARE USED BY THIS PROGRAM.

r -•-•• cp~cs ea ll_axt_out_dasc catl_axt_out copy_Mord$ ext _entry rpd_l oop_1.... 1P_bp

THE.FOLLOMitG EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM.

eo~~_arr_ eu_sarg_ptr hcs_llnl tlatl hcs_ste r alna t a_no na ae zg ZSJIZf

set_csa

return

cv_~et_enaek_

expand_path_

rlnSJO-iat_lsegptr

loa_

>#

THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM.

error_table_S noar- 51 error_table_-sse§lknown

LINE LilC 1 000113 so 00017 2 611 00.0271 &7 00041 s 78 00047 7 57 0005'1) 2

LINE ItO $1 61 68 79 88

I. oc 000121 000225 000273 0001t17 000527 000614

LINE 41 52 62 69 81 89

LOC 000122 000227 000325 000460 000530 000616

LINE 43 53 63 70 82 90

LOC 000124 00021t6 000327 0001t65 000545 00 0647

L.INE 44 54 64 72 83 93

I.OC 00 0143 00 0250 000331 0001tft7 000556 000650

LINE ItS 55 65 73 ... 94

LOC 00015/t 000267 000366 000470 000557 010670

LINE.

L.OC

It& 011111

57.010270 66 000372 76 0001t74 as ooos61 9S 00070/t







·····---·i~

107 117 121t 131 139 148 156

OQ1055 00111t2 00117 5 o:o1a1 0013H 001360 0011t24

110 117 125 133 1lt 0 150 159

0010 56 001150 001203 001303 001342 001362 001463

111 118 126 131t 11t2 151 161

001062 001152 001204 001320 0 01344 001364 001501

112 120 127 135 143 152 162

001103 0011&0 001220 001321t 001345 001372 001511t

111t 120 128 136 11t4 153

00 1101t. 001167 001222 001335 00131t7 00 11t03

115 001106 122 001172 129 OU223 137D013U 11t6 001350 154 0011t05

116 UU21t

121 001173

130 _0 GU 26

ua oou,.o

1At7 '0.013!52

155 0011t23

......., "'

~

APPENDIX E

Patch Utility Listing

This appendix is a listing of a patch utility corresponding to the dump utility in Appendix D. The utility, zp, is based on the installed 14ultics command, patch_ring_zero, documented in the t1£t::1 System Programmers' Supplement . ZP uses the same algorithm as zd in App~ndix D and operates under the same restrlctions. A sample of its use is shown below~ Lines typed by the user are underlined. ~ ~ ~

123171163101 ~!22151156 660 104162165151 to 123171163101 661 144040040040 to 14415515115G

Type "yes" if patches are correct:

~

As seen above, the command requests the user to confi rrn the patch before actually performing the patch. The patch shown aGave changes the user's project identification from Druid to SysAdmin.

133

C01PILATION LISTING OF SEGHENT zp

C011p! lad byt HuH.lcs PL/1 Coaplter, Version II of 30 August 1973. Ca.plltd ont 04/10/74 1843.6 edt Wed Opt .lonst aap proc;

1 ZPI

z

3 1• This procedure aU oMs pr lvileged users to patch J ocat ions in ring o. If necessary tnt descriptor seg11ent is patched to g1ve access to patch a non-Nr.l te Plrllit seg111nt •1 5 6 7 del ; targ char Ctc) based ctp)'

.. s

Cerror_table_snoarg, error_table_ssegknoMn) flKed bln ext, Cc:ode, 1, tc:, f lrst, SM) flxed bin, Csd111p, segptrl ptr stat .lc:, Mdsegptr ptr, get_proc:ess_id_ ext entry returns (bit (3~) aligned), process! d b.lt (36) aUgned, dllta1 COt CJ9J fixed bin statJ.c:, data lOt CJC)l fixed bin C35), overlay CO&c:ount-U b.l t C3DJ aUgned based, count flJc•d bin static, Ctp, datap, dat atpJ ptr, d1 rnaae char C168), ena11e c:har. ·c32 J, c:v_oc:t_ entry Cc:nar c•JJ returns Cflxtd bin C35H, c:v_oct_c:hec~ entry Cchar c•J, fixed bin) returns Cflxed o1n C35J), ringO_get.•segptr entry Ccha.r C•J, c"'r C•), Ptr• fixed blnh Uoa_, loa_snnl) entry optlons Cvar.lable), los_sread_ptr entry Cptr, fixed b.ln, fixed bird, Czg, zgtaU entry Cptr, fixed. bin U5Jh buf.fer char U6J -.ugned, cu_sar~ptr ext entry Cflxed bin, ptr, fixed oln, fixed blnJ, expand..,path_ axt entry Cptr, fixed bin, ptr, ptr, fixe~ bi nJ;

g 1C 11

12 13 14 15

16 17

u

19

20 21 22

n

...

"" ID

21t 25 26 27 28 29 30

u

!2 13 3ft

del ,1 sd• based aligned, 2 pad bit C30J un•l, 2 ace bit C6) una I;

35 dc:l 36 37

u

39 ItO lt1

42 It!

44 45

.., 47 ItS

4CJ 50 51 52 53

.....

save_acc f .lxed b.lnC35J ; datap = addr CdataJ; c:ount 0;

1• get pointer to data area,•/

=

call cu_targ_ptr u, tp, tc, code); 1• plec up the flrst arsa Cna~~t/nullberJ •1 if code a error_t able_snoarg I tc 0 then :to; call loa_ C"prz na.. /segno offset valuel ••• valueo-J; return; end; 1• get seg~~ent nullber •1 1 cv_oct_Chec~ Cterg, codeJI 1• dicn•t ;lve r.~t;~ •1 if code-= 0 then do; segp tr ,. nul I (); 1• 1f nu I 1 U •• •re sUI I in trouble •1 call rlngO_get_ssegptr , .... , terg, sagptr, codeJ; 1• so ••su•e ring 0 neae •1 1f segptr • null · 0 then do; cell loa_ c"-a not fOUld···, tal"g); return; end; end;

=

=

I&

- - - - - · ._ • .__... __

..

a ........,

•1

~

5& 57 58 59 60 61 62

63

&It

n

74

75 76 77 78 79

••

h

.....

=

=

cf lrst

=

1• No• check the access on the seg•ent about to be patched •1

65

66 67 68 69 70 71 72

"'0 "

call cu_sarg_ptr (2, tp, tc, code); 1• p!Ck up £acond erg 1 f code = error_tabh_snoarg I tc 0 then go to •ss; ·

first= cv_oct_ Ctarg);

segptr ptr Csegptr, first);

sciMP ptr Cbaseptr co), baseno CsagptrH;

call rlngO_gat_SSegptrC".. , "wdseg••, Mdsegptr, coda);

dat ap = a ddr cclet a I ;

data1p = adclr (~taU;

catt zg Csdwp, data (0));

1 f data COl = 0 than do;

call loa_ ("pi SOW = 0");

return;

and;

substr Cdatap -> sdw.acc, It, 3) a •100 ..b. then do; call .loa_ C"pl Hester procedUI"ao SON a - ... , data return; and; datap •> s