access control
play

Access Control CS461/ECE422 Spring 2012 Reading Material - PowerPoint PPT Presentation

Access Control CS461/ECE422 Spring 2012 Reading Material Chapter 4 through sec=on 4.5 Chapters 25 and 26 For the access control aspects of


  1. Access ¡Control ¡ CS461/ECE422 ¡ Spring ¡2012 ¡

  2. Reading ¡Material ¡ • Chapter ¡4 ¡through ¡sec=on ¡4.5 ¡ • Chapters ¡25 ¡and ¡26 ¡ – For ¡the ¡access ¡control ¡aspects ¡of ¡Unix ¡and ¡ Windows ¡

  3. Outline ¡ • Access ¡Control ¡Matrix ¡ • Access ¡Control ¡List ¡ • Capabili=es ¡

  4. Access ¡Control ¡in ¡Context ¡

  5. AAA ¡ • Access ¡control ¡part ¡of ¡a ¡broader ¡context ¡ • Authen=ca=on ¡ – Discussed ¡last ¡=me. ¡ ¡Bind ¡external ¡en=ty ¡to ¡ system ¡en=ty ¡ • Authoriza=on ¡ – Grant ¡a ¡right ¡or ¡permission ¡to ¡the ¡system ¡en=ty ¡to ¡ access ¡a ¡system ¡resource ¡ • Audit ¡ – Independent ¡review ¡of ¡system ¡ac=ons ¡

  6. Types ¡of ¡Access ¡Control ¡Policies ¡ • Discre=onary ¡Access ¡Control ¡(DAC) ¡ – Decision ¡made ¡based ¡on ¡iden=ty ¡of ¡requestor ¡and ¡ access ¡rules ¡ – Regular ¡users ¡can ¡adjust ¡the ¡policy ¡ • Mandatory ¡Access ¡Control ¡(MAC) ¡ – Decision ¡made ¡by ¡tes=ng ¡labels ¡associated ¡with ¡ processes ¡and ¡resources ¡against ¡system ¡policy ¡rules ¡ – Regular ¡user ¡cannot ¡adjust ¡the ¡policy ¡ • Role ¡Based ¡Access ¡Control ¡(RBAC) ¡ – Access ¡decisions ¡defined ¡against ¡roles ¡rather ¡than ¡ individual ¡requestors ¡

  7. Access ¡Control ¡Elements ¡ • Subject ¡– ¡system ¡en=ty ¡capable ¡of ¡access ¡objects. ¡ Generally ¡a ¡process ¡in ¡an ¡OS ¡context ¡ • Object ¡– ¡a ¡resource ¡in ¡a ¡system ¡ – OYen ¡a ¡file ¡ – Could ¡also ¡be ¡other ¡named ¡resources ¡like ¡mutex, ¡ process, ¡network ¡interface, ¡network ¡port ¡ • Access ¡right ¡– ¡a ¡way ¡that ¡a ¡subject ¡may ¡access ¡an ¡ object ¡in ¡the ¡system ¡ – Read, ¡Write, ¡Execute, ¡Delete, ¡Create, ¡Search, ¡Change ¡ Access, ¡Own ¡

  8. Access ¡Control ¡Matrix ¡ • Access ¡Matrix ¡or ¡Access ¡Control ¡Matrix ¡ (ACM) ¡and ¡related ¡concepts ¡provides ¡very ¡ basic ¡abstrac=on ¡ – Map ¡different ¡systems ¡to ¡a ¡common ¡form ¡for ¡ comparison ¡ – Enables ¡standard ¡proof ¡techniques ¡ – Not ¡directly ¡used ¡in ¡implementa=on ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 8 ¡

  9. Defini=ons ¡ • Protec=on ¡state ¡of ¡system ¡ – Describes ¡current ¡se`ngs, ¡values ¡of ¡system ¡ relevant ¡to ¡protec=on ¡ • Access ¡control ¡matrix ¡ – Describes ¡protec=on ¡state ¡precisely ¡ – Matrix ¡describing ¡rights ¡of ¡subjects ¡ – State ¡transi=ons ¡change ¡elements ¡of ¡matrix ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 9 ¡

  10. Access ¡Matrix: ¡File ¡Example ¡ File ¡1 ¡ File ¡2 ¡ File3 ¡ File4 ¡ User ¡A ¡ Own ¡ Own ¡ Read ¡ Read ¡ Write ¡ Write ¡ User ¡B ¡ Read ¡ Own ¡ Write ¡ Read ¡ Read ¡ Write ¡ User ¡C ¡ Read ¡ Read ¡ Own ¡ Write ¡ Read ¡ Write ¡

  11. Access ¡Matrix: ¡Broader ¡Example ¡ Subjects ¡ Files ¡ Processes ¡ Disks ¡ S1 ¡ S2 ¡ S3 ¡ F1 ¡ F2 ¡ P1 ¡ P2 ¡ D1 ¡ D2 ¡ S1 ¡ control ¡ owner ¡ owner ¡ Read* ¡ Read ¡ wakeup ¡ wakeup ¡ seek ¡ owner ¡ control ¡ owner ¡ S2 ¡ control ¡ Write* ¡ execute ¡ owner ¡ Seek* ¡ S3 ¡ control ¡ write ¡ stop ¡

  12. Media=on ¡Implementa=on ¡

  13. Rules ¡Governing ¡Access ¡Matrix ¡Change ¡ Rule ¡ Command ¡(by ¡S0) ¡ AuthorizaCon ¡ OperaCon ¡ R1 ¡ Transfer ¡α ¡or ¡α* ¡to ¡S,X ¡ ‘α*’ ¡in ¡A[S0,X] ¡ Store ¡α ¡or ¡α* ¡in ¡A[S,X] ¡ R2 ¡ Grant ¡α ¡or ¡α* ¡to ¡S,X ¡ ‘owner’ ¡in ¡A[S0,X] ¡ Store ¡α ¡or ¡α* ¡in ¡A[S,X] ¡ R3 ¡ Delete ¡α ¡from ¡S,X ¡ ‘control’ ¡in ¡A[S0,S] ¡ Delete ¡α ¡from ¡A[S,X] ¡ or ¡ ¡ ‘owner’ ¡in ¡A[S0,X] ¡ R4 ¡ w ¡<-­‑ ¡read ¡S,X ¡ ‘control’ ¡in ¡A[S0,S] ¡ Copy ¡A[S,X] ¡into ¡w ¡ or ¡ ¡ ‘owner’ ¡in ¡A[S0,X] ¡ R5 ¡ Create ¡object ¡X ¡ None ¡ Add ¡column ¡for ¡X ¡to ¡A; ¡ store ¡‘owner’ ¡in ¡A[S0,X] ¡ R6 ¡ Destroy ¡object ¡X ¡ ‘owner’ ¡in ¡A[S0,X] ¡ Delete ¡column ¡X ¡from ¡A ¡ R7 ¡ Create ¡subject ¡S ¡ None ¡ Add ¡row ¡for ¡S ¡to ¡A; ¡ execute ¡create ¡object ¡S; ¡ store ¡‘control’ ¡in ¡A[S,S] ¡ R8 ¡ Destroy ¡subject ¡S ¡ ‘owner’ ¡in ¡A[S0,S] ¡ Delete ¡row ¡for ¡S ¡from ¡A; ¡ execute ¡destroy ¡object ¡S ¡

  14. Actually ¡Implemen=ng ¡Access ¡Matrix ¡ • Slice ¡by ¡column ¡ – Access ¡control ¡list ¡ – Used ¡by ¡Mul=cs ¡and ¡most ¡modern ¡OS ¡ • Slice ¡by ¡row ¡ – Capability ¡list ¡ – Many ¡implementa=ons ¡in ¡the ¡‘80’s ¡ ¡ – OYen ¡associated ¡with ¡object-­‑oriented ¡systems ¡

  15. Slice ¡and ¡Dice ¡File ¡example ¡

  16. Unix ¡Access ¡Control ¡ • Three ¡permission ¡octets ¡associated ¡with ¡each ¡ file ¡and ¡directory ¡ – Owner, ¡group, ¡and ¡other ¡ ¡ – Read, ¡write, ¡execute ¡ • For ¡each ¡file/directory ¡ – Can ¡specify ¡RWX ¡permissions ¡for ¡one ¡owner, ¡one ¡ group, ¡and ¡one ¡other ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 16 ¡

  17. Windows ¡ACL ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 17 ¡

  18. Windows ¡ACL ¡ • Actually ¡two ¡ACL's ¡per ¡file ¡ – System ¡ACL ¡(SACL) ¡– ¡controls ¡audi=ng ¡and ¡now ¡ integrity ¡controls ¡ – Discre=onary ¡ACL ¡(DACL) ¡– ¡controls ¡object ¡ access ¡ • Windows ¡ACLs ¡apply ¡to ¡all ¡named ¡objects ¡ – Files ¡ – Pipes ¡ – Events ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 18 ¡

  19. ACL ¡Dis=nc=ons ¡ • What ¡subjects ¡can ¡modify ¡an ¡object's ¡ACL? ¡ • If ¡there ¡is ¡a ¡privileged ¡user, ¡do ¡the ¡ACLs ¡apply ¡ to ¡that ¡user? ¡ • Does ¡the ¡ACL ¡support ¡groups ¡or ¡wildcards? ¡ • How ¡are ¡contradictory ¡access ¡control ¡ permissions ¡handled? ¡ • If ¡a ¡default ¡permission ¡is ¡allowed, ¡do ¡the ¡ACL ¡ permissions ¡modify ¡it, ¡or ¡is ¡the ¡default ¡only ¡ used ¡when ¡the ¡subject ¡is ¡not ¡men=oned ¡in ¡the ¡ ACL? ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 19 ¡

  20. ACL ¡Scaling ¡ • Groups ¡of ¡users ¡ • Role ¡Base ¡Access ¡Control ¡ – Users ¡can ¡take ¡on ¡role ¡at ¡a ¡=me ¡ • Directory ¡inheritance ¡ • Nega=ve ¡rights ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 20 ¡

  21. Revoking ¡rights ¡with ¡ACLs ¡ • Revoking ¡rights ¡for ¡subject ¡ s ¡to ¡a ¡par=cular ¡ object ¡ o ¡straighqorward ¡ – Remove ¡ s ¡from ¡ ¡ACL( o ) ¡ – Make ¡sure ¡ s ¡has ¡a ¡nega=ve ¡entry ¡in ¡the ¡ACL( o ) ¡ • Example: ¡Alice ¡removes ¡all ¡of ¡Bob's ¡rights ¡to ¡ file ¡f ¡ – What ¡if ¡Bob ¡had ¡given ¡Carol ¡read ¡rights ¡to ¡f? ¡ – Should ¡Carol ¡s=ll ¡have ¡those ¡rights? ¡ 9/29/2010 ¡ Computer ¡Security ¡I ¡ 21 ¡

  22. Capabili=es ¡ • Where ¡are ¡access ¡rights ¡stored ¡ – ACL: ¡Each ¡resource ¡(file) ¡has ¡an ¡access ¡list ¡ – Capabili=es: ¡Each ¡process ¡has ¡a ¡capability ¡list ¡(C-­‑list) ¡ • Note: ¡In ¡capabili=es, ¡subjects ¡are ¡processes ¡ ¡ – In ¡ACLs, ¡subjects ¡are ¡users ¡(why?) ¡ • Capabili=es ¡act ¡as ¡a ¡=cket ¡ – Possession ¡of ¡capability ¡implies ¡access ¡rights ¡ • Tickets ¡must ¡be ¡unforgeable ¡ – Otherwise ¡access ¡control ¡fails ¡ 22 ¡

  23. Implementa=on ¡ • Tags ¡/ ¡descriptors ¡ • Cryptographic ¡=ckets ¡ • Type ¡system ¡ 23 ¡

Recommend


More recommend