180 likes | 293 Views
Explore Mandatory Access Control, covert channels, contamination levels, declassification, and event processes in the Asbestos system implementation example. Learn about Asbestos labels, privilege levels, and dynamic department creation.
E N D
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. *-egenskaben Q Unclassified information P Adgang: U,S,T R Adgang: U,S Unclassified information Adgang: U
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
File Server Eksempel U: Shell User u UT: Terminal User u US = {uT3,1} UR = {uT3,2} UTS = {uT3,1} UTR = {uT3,2} FS File Server Users u and v V: Shell User v VS = {vT3,1} VR = {vT3,2}
Contamination levels • Hæve contamination level • Defaultværdier • Brugerinformation (uT3) • Send og modtag • Alternativ • Flerniveaupolitiker U: Shell User u UT: Terminal User u Us = {vT2,uT2,1} UR = {uT2,2} Us = {uT2,1} UR = {uT2,2} UTs = {uT2,1} UTR = {vT1,2} FS File Server Users u and v V: Shell User v Vs = {vT2,1} VR = {vT2,2}
Declassification & decontamination • PS(h) = * • Filserveren • FSS = {uT*,vT*,1} • FSR = {uT3,vT3,2} • Decontaminate send / modtag DS og DR • Kræver decontamination rettigheder for h
Integritet • FS - Skriveadgang • Grant handle uG • PS(uG) ≤ 0 • Asbestos: Verifikations label V • V = {uG0,3}, V(uG) ≤ 0 • Obligatorisk integritet
Forhindring af contamination • Mailprogram • Porte (port label pR) • Proces styrer egne port labels (default 0) • Bevilling af portrettigheder • DS = {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 C B0 B1
Web Server Port: uC Port label uCR: {uC0,2} Port: uC Port label uCR: {uC0,uT3,2} u’s TCP connection netd Grant uw*; read/write Grant uC* Grant uT* Lookup UN/PW idd ok-demux Worker W Grant uC*,uG*, Contaminate uT3 Grant uG*,uT* Create W[u]
Web Server • Web sessions • Managing identities • Database interaction • ok-dbproxy • Evaluering
Asbestos • Spørgsmål?