Label and Event Processes in Asbestos Af Troels Munk Haar
Oversigt Mandatory Access Control Asbestos overordnet Asbestos labels Asbestos event proces Covert chanels Implementeringseksempel
Mandatory Access Control Grundlæggende Sikkerhedsniveauer og kategorier Foruddefinerede kategorier *-egenskaben
MAC forts. P Q R Adgang: U,S,T Adgang: U,S Adgang: U Unclassified information *-egenskaben
Asbestos Dynamiske oprettelse af afdelinger Bypass af *-egenskaben Kommunikationsporte til beskeder –Pipe- og filtilgang via porte Asynkrone og upålidelige beskeder Mulig pålidelighed i praksis
Asbestos labels Labels som funktioner MAC skemaer Contamination Separate send/modtag labels Privilegier [*,0,1,2,3] Notation
FS File Server Users u and v U: Shell User u V: Shell User v UT: Terminal User u U S = {u T 3,1} U R = {u T 3,2} V S = {v T 3,1} V R = {v T 3,2} UT S = {u T 3,1} UT R = {u T 3,2} File Server Eksempel
Contamination levels Hæve contamination level Defaultværdier –Brugerinformation (u T 3) –Send og modtag –Alternativ Flerniveaupolitiker FS File Server Users u and v U: Shell User u V: Shell User v UT: Terminal User u U s = {u T 2,1} U R = {u T 2,2} V s = {v T 2,1} V R = {v T 2,2} UT s = {u T 2,1} UT R = {v T 1,2} U s = {v T 2,u T 2,1} U R = {u T 2,2}
Declassification & decontamination P S (h) = * Filserveren –FS S = {u T *,v T *,1} –FS R = {u T 3,v T 3,2} Decontaminate send / modtag D S og D R –Kræver decontamination rettigheder for h
Integritet FS - Skriveadgang Grant handle u G P S (u G ) ≤ 0 Asbestos: Verifikations label V V = {u G 0,3}, V(u G ) ≤ 0 Obligatorisk integritet
Forhindring af contamination Mailprogram Porte (port label p R ) Proces styrer egne port labels (default 0) Bevilling af portrettigheder –D S = {p*,3} Mail prog Attachment reader High taint
Event Processer Akkumulering af contamination Forking: Lav ydelse Threads: Ingen isolering Event dispatch loop: Klassisk dispatch loop:Asbestos dispatch loop:
Event Processer Delprocestilstand pr. bruger Kernen begrænser privilegier Base proces > Event proces –ep_checkpoint –ep_yield Kernen skedulerer event processer Begrænset samtidighed og skedulerings- overhead
Covert Channels Timing channels –A påvirker ressource, der indvirker på B –Afhjælpes ved at begrænse præcision Storage channels –A påvirker en tilstand, B kan observere –Afhjælpes ved at forhindre fork
Send exploit A B0B0 B1B1 C
Web Server netd iddok-demuxWorker W u’s TCP connection Grant u C * Lookup UN/PW Grant u G *,u T * Grant u T * Grant u C *,u G *, Contaminate u T 3 Create W[u] Grant u w *; read/write Port: u C Port label u CR : {u C 0,2} Port: u C Port label u CR : {u C 0,u T 3,2}
Web Server Web sessions Managing identities Database interaction –ok-dbproxy Evaluering
Asbestos Spørgsmål?