1 / 55

Access Control

Access Control. Dr. Ron Rymon Efi Arazi School of Computer Science IDC, Herzliya . 2010/11. Pre-requisite: Basic Cryptography, Identity Authentication. Overview. Access Control and Identity Management Public-Key Infrastructure (PKI) Firewalls Client/Server Authentication (Kerberos)

papina
Download Presentation

Access Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Access Control Dr. Ron Rymon EfiArazi School of Computer Science IDC, Herzliya. 2010/11 Pre-requisite: Basic Cryptography, Identity Authentication

  2. Overview • Access Control and Identity Management • Public-Key Infrastructure (PKI) • Firewalls • Client/Server Authentication (Kerberos) • Remote User Authentication Service (RADIUS)

  3. Access Control andIdentity Management Main Sources: Kaufman et al

  4. Access Control Model

  5. Mandatory, Discretionary, Role-based • Mandatory Access Control (MAC) • Access is restricted not individually but based on a user attribute (e.g., title, clearance, or a group he belongs to) • Discretionary Access Control (DAC) • Every user/admin that owns a resource can decide (at his discretion) who may have which access • Role-based Access Control (RBAC) • Access granted according to user’s role(s) in the enterprise, or in federated environment • What’s new and hot • Attribute-based Access Control (ABAC): Access is granted based on credentials (attributes) signed by local authorities • XACML incorporates both ABAC and RBAC • Claims-based Access Control (CardSpace): Access granted based on claims, verified and signed by Id provider

  6. Access Control • Specification and implementation of policies and rules • Which users (and applications) • Internal and external users, applications • Can access which resources • Files, databases, applications • For what purpose • Read/Write/Execute (access levels) • Limits, e.g., buy up to $5000, (authority level) • When • Time of the day, specific sessions • Under which conditions • Additional authentication, supervisor or dual-approval • Etc…

  7. Physical and Logical • Physical Access Control • Keys, Key Rings, Master Keys are all ways to control physical access • Increased deployment of biometric identification for physical access control • Physical Access Control Systems – usually control physical access to facilities • Logical Access Control (software) • On routers, e.g., Cisco’s TACACS+, and network access control servers (e.g., RADIUS) • Systems, e.g., Unix, Windows, Mainframe (file level) • Within Enterprise applications, databases, Web servers

  8. Access Control Mechanisms • Access Control Lists (ACL) • Specification of access rights per resource: which users (by userid) can access this resource • One problem: there might be too many such users • User Groups • Group users so that can refer to and specify access policy for the entire group • Some systems also allow grouping of resources • Group membership can be part of the organizational “directory”, and/or part of the (signed) certificate of each user • Examples: administrators, power users, marketing, guests • Still, a lot of replication, e.g., Marketing, Sales, and R&D groups may all share a certain subset of access rights • Hierarchical groups • Employee can be the parent/child of each of Marketing, Sales, R&D

  9. Example: Access Control to File System in Unix, NT • Unix • Every file associated with a “mode” • Read, Write, and eXecute rights, for owner, group, world • e.g., dr--r-xrwx • getacl, setacl functions support additional ACL entries for users, groups, and objects • Windows NT • NTFS allows specifying which users, groups can do what to a file, folder, registry, and other system objects • A few groups are pre-defined, e.g., admin, power-users, users

  10. Role Based Access Control (RBAC) • NIST RBAC Standard • ANSI INCITS 359-2004, Ferraiolo et al, 2/2004 • Today implemented in most enterprise software • Mandated or recommended by industry regulations Ad-Hoc Direct Privileges Permissions Hierarchy UA PA Users Roles Operations Objects Session

  11. Role-Based Security • A “logical” layer that links users and allowed resources • A role specifies the need or circumstances in which a user needs a resource • User-Role and Role-Resource relations simplify User-Resource relations Roles Layer • Employee • Org role(s) • Geography • Member of committee • Reporting to • In charge of process • Weekend shift • Roles can be hierarchical

  12. RBAC Productivity/Security Gains • Productivity Gains • Easier to provision new employees • Alice replaces Bob as VP of Marketing • John joins the security administration team • Easier to manage change • Richard was relocated to the Singapore office • Bonnie replaces Jack in the computing committee • Security Gains • Without RBAC, it is common to find users “collecting” access rights • Facilitates compliance with regulations and audit of access rights

  13. Policy-based Access Control • A policy is of a set of rules that govern access control • Policy Administration Point (PAP) • Policy Decision Point (PDP) • Policy Enforcement Point (PEP) • Can itself be based on roles, groups, identity attributes, and resource attributes PAP Define & Manage Policies Many systems, locations PEP PEP PDP Evaluate & Decide PEP PDP Evaluate & Decide PEP PEP Enforce

  14. Claims-based Access Control

  15. Governance, Risk & Compliance (GRC) • Regulations: • Industry regulations: banking, SEC, payment, insurance, utilities • National, e.g., competition • Enforcement + Demonstration • Fine-grained entitlement management • User/resource attributes • Roles/groups • Access context • IT controls • Segregation of duties, checks and balances, business process rules • Risk • Assess, prioritize, remediate Sarbanex-Oxley (SOX), GLB, HIPPA FERC, ISO, PCI, FISMA, Basel II

  16. Identity Management / Provisioning • A set of tools for managing organizational identities and their access privileges • Management functions • Add/remove/update info about users, resources • Add/delete privileges to platforms and/or applications • Manage access policies • Automated Provisioning • Automates requests and approvals processes • Provisions and de-provisions on target systems (accounts, group membership, etc.) • Main Benefits • Centralized store for organizational identities • Centralized management of access rights • Automated provisioning and removal of privileges

  17. Typical ID Mgmt Functions • User provisioning • Role Management • Password reset and password management • Web access control • Self-service requests and approvals • Authentication & Single sign-on • Log management and analysis • Public Key Infrastructure • Federation of identities • Many IdMs use directories to store identities and policies • Some IdM start to provide Governance, Risk, and Compliance (GRC) capabilities

  18. Directories • Goal: centralized repository of users and privileges • Solution: Directory • Centralized repository of users, resources, and privileges • Implements a hierarchical database • Users (leaves) appear with their specific information (attributes) • name, user names, certificates, org, etc. • Fast retrieval • Difficult update • IETF X.500 Directory Access Protocol (DAP) • Defines access to the Directory • Runs on top of TCP • Almost all implementations are Lightweight DAP (LDAP) • Federated Directories (a.k.a. Meta-directories) • Integrate and implement trust between directories

  19. Maturity of IdM Technologies

  20. Hardening to Restrict OS Access • Operating Systems were originally designed without security in mind • many “friendly” services, e.g., mail, ftp, file, printer, login • many pre-configured accounts, e.g., system, administrator, backup • Problem: Hackers use these extra services to penetrate • Solution: “harden” OS (aka secured shell) • remove services, e.g., sendmail, remote login • monitor for unexpected traffic, usually using IDS/honeypot tools

  21. Public Key Infrastructure (PKI) Main sources: Stallings, IETF

  22. Public Key Infrastructure (PKI) • X.509 protocol provides authentication service • Registration Authority (RA) handles requests for certificates • Certificate Authority (CA) issues certificates • RA/CA can be implemented internally, e.g., by HR and IT • Or, by a trusted third party, e.g., VeriSign, Thawte • Certificates • verify a user details and public key • usually stored in a Directory-based repository • can be granted as part of a provisioning process • Can be revoked before their expiration • Security Services • Authentication, Confidentiality, non-repudiation • Interoperability between CAs

  23. Example: VeriSign Certificates • Certificate Information • Owner name, address, e-mail • Public key • Certificate expiration date • Name of issuing CA • CA digital signature

  24. Example: VeriSign Certificates • Digital ID (certificate) classes • Class 1: only e-mail is verified • Class 2: verification of postal address and other information from consumer databases • Class 3: requires appearing in person and/or notarized documentation • Different types of certificates • Identity certificate – for authentication • Encryption certificate – for email, SSL • Mobile code certificate – to sign a piece of software

  25. X.509 CA Hierarchy • Stores forward- and reverse certificates for each CA • CA<<X>> is X’s certificate signed by the CA • Each certificate contains user attributes, as well as expiration • Any user with the public key of the CA can get the full path to a specific user • e.g., for Z you can get U<<V>>, V<<Y>>, Y<<Z>> • In case of distributed CAs, one can go back on the chain to obtain (securely) the public key of his counterpart CA • Certificates can be revoked by CA through published CRLs

  26. PKI Servers • Main Components • Certificate Server – implements the CA (and sometimes RA) • Certificate Repository – stores certificate for users (usually a Directory) • Key Recovery Server • Main functions • Issuing (CA) and registering (RA) certificates • Storing and retrieving certificates • Revoking certificates • Key lifecycle management • Applications: E-mail (S/MIME), Web browsing (SSL and IPSec), Digitally signed mobile code and documents

  27. Firewalls and Proxy Servers Main Sources: Stallings, Checkpoint Software

  28. Server Server HUB private network Router Internet The Firewall Principle • Create a controlled link between the protected network and the outside world • Inspects all inbound and outbound traffic • Allows only authorized traffic • May encrypt or decrypt traffic • Firewall itself can be • Hardware • Software (mostly) • Must itself be immune to penetration • Hardware, or a trusted system, implemented on top of a hardened OS

  29. FW-enforced Policies • Service control : which services are allowed • may determine valid ports • may use a proxy to interpret requests before they are passed on • may host the service outside the internal network (web, e-mail) • Direction control • may limit certain services to only one direction • User control : who is allowed to use the service • may apply access control policy to internal users • may use IPSec to authenticate external users • Behavior control : how a service can be used • may implement intrusion prevention or anti-virus filter • may filter spam in either direction

  30. Limitations and Other Uses • Limitations • The FW cannot protect against internal attacks (unless traffic is filtered) • The FW cannot protect against back-door attacks, e.g., through a dial-up line that goes directly into the internal network • In addition to its filtering uses, the FW location is ideal for other functions as well • VPN implementation • Network Address Translation (NAT) • Intrusion detection / prevention • URL filtering • Anti-virus filtering • Personal firewalls (highly recommended – now standard) • Control what executes on and communicates from a given machine • Can protect against intra-net attacks

  31. FW types: Packet-Filtering • Implemented in IP layer • Applies a set of rules to individual IP packets • Rules are based on IP and TCP header parameters • The first rule that matches the packet is applied • If no rule applies, the default is usually to drop the packet • Advantages: application independent, fast

  32. FW types: Application Gateways • Application-specific software that brokers between the server and its clients • Brokers and examines each C/S transaction • Pros: • better security through app awareness • Cons: • application dependent • slow • requires awareness of internal user • Examples: FTP, Telnet, Web apps

  33. FW types: Stateful Inspection • Problem: packet filters examine isolated packets • e.g., may not want to allow FTP data communication on a port that is not associated with an open FTP session • Solution: maintain a state • Communication-derived state, e.g., which ports are open • Application-derived state, e.g., whether the user was already authenticated by the service • Packets intercepted at IP layer, but also tracked in upper layers • Creates a virtual session, useful even for connectionless protocols • Cons (vs. app gateway): usual implementations do not analyze packet internals

  34. Bastion Host • Bastion Host services external users • Hosts proxy servers + externally available services • Only server addressable directly from outside network • Usually located after a packet filter • Must be very well protected • hardened OS • requires authentication • Examples: • Victim BH : provides unprotected services to external users • Non-routing dual-homed BH : services internal and external users (does not transfer packets between them) • Internal BH : located inside network, and services external users – must be very well secured

  35. Example: Firewall Configuration (1) • Screened host firewall with single-homed Bastion Host • All communication with external network goes through the BH • BH may perform authentication and proxy functions

  36. Example: Firewall Configuration (2) • Screened host firewall with dual-homed Bastion Host • In the single-homed BH, if the packet-filter is compromised then intruder has access to rest of the network • Here, there is a physical separation, so intruder must gain control of the BH as well (an example of Defense-in-Depth)

  37. Example: Firewall Configuration (3) • Screened subnet firewall • Another packet filter offers a third level of protection • Outside router does not advertise internal network, and therefore hard for intruder to map it • The screened subnet a.k.a. perimeter network or DMZ is often used to host services for external users

  38. Proxy Servers • An “Application Gateway” Firewall • Usually located on a BH • Must be written specifically for each application • Standard ones for TCP services: FTP, Telnet, HTTP • Generic ones that can be configured for new applications • Every proxy server software must be configured to maximize security • may be configured to access only specific hosts • may require additional authentication • a simple software that can be more easily audited for security flaws • maintain log for future audit • proxies are independent • proxies run in a non-privilege mode, and in own private folders

  39. Example: Web Application Gateway • Web applications are very common, and hackers often try to penetrate and exploit them • A Web gateway “hides” the actual web server • Enforce intended business logic and business policies • Build/learn policy for web application, reflecting the intended use

  40. Web App Gateway Functions (2007) • Multi-application gateway • Web app firewall, including “deep” packet inspection” • Web app access control • Web services protection (for SOA) • Automated learning of legitimate use patterns • App layer Denial-of-Service protection • Website cloaking: hiding from crawlers (but not Google...) • Application gateway devices often include functions of regular packet filters and/or stateful inspection firewall • And also other security features • Access control to protect specific sensitive data • Encryption • NAT

  41. Attacks on Firewalls • Firewalls can be difficult to configure and many contain bugs in their policies • Most implementations of firewalls are fairly superficial in examining the application fields • Usually firewalls cannot deal with IP spoofing • Perimeter-based firewall cannot protect against internal attacks and Trojans • Firewall cannot prevent DoS attacks • Market trends: • application gateways, e.g., for web services and XML • Smarter firewalls, e.g., “learning”, “identity role-based” • combined security appliances • centralized consoles for management

  42. Client/Server Authentication Kerberos Main sources: Stallings, Schneier, Kaufman et al

  43. Kerberos • Background • Client/Server authentication service, developed by Project Athena • Deployed as a Single-Sign On service • Services • Client/Server authentication • Allows users and servers to mutually authenticate • Key Distribution Center (KDC) • Uses symmetric key as proof of identity (DES/RC4) • New versions use other forms of authentication • Requirements • Protect against user impersonation • Protect against spoofing of device identity • Protect against replay attacks • Provide high availability • Provide transparency to the user and application server

  44. Kerberos Protocol Ticket Granting Server Grant Ticket • Ticket: T(c,s) = s,EKs(c,a,v,Kc,s) • c-client, s-server, a-client address, v-validity time • Used as a “pass” until expiration • Authenticator: A(c,s) = E Kc,s(c,t,k) • t-time stamp, k-additional session key • Used once, but the client can generate as many as she wishes Req Ticket Grant TGT Req Service Client Req TGT Server Kerberos Authentication Server (AS)

  45. Kerberos Protocol Ticket Granting Server Grant Ticket • Req TGT: Send c,tgs Req Ticket Grant TGT Req Service Client Req TGT Server Kerberos Authentication Server (AS) • Grant TGT: Gen Kc,tgs; Send EKc(Kc,tgs), T(c,tgs) • Req Ticket: Send A(c,tgs), T(c,tgs), s • Grant Ticket: Gen Kc,s; Send EKc,tgs(Kc,s), T(c,s) • Req Service: A(c,s), T(c,s)

  46. Kerberos Security Features • Kerberos acts as a KDC (Key Distribution Center) • Kerberos AS verifies the identity of a client through the key, and comparing identity and address to a database • Key can be symmetric key, or derived from password • Tickets T(c,tgs/s) is given to the client but is locked • Server continuously verifies client through session key in authenticator • Timestamps used to ensure synchronicity and against original ticket validity (typically 8 hours) • It is common to quickly replace use of client long-term key with a session key

  47. Application Server KDC AS TGS Example: Windows 2000 Kerberos 1 User Client 2 1. Locate the Active Directory and Kerberos KDC for the domain using DNS lookup. Client receives key encrypted with own password Windows 2000Active Directory 2.Authenticate user and get a Ticket Granting Ticket (TGT) from KDC Windows 2000 Domain Controller

  48. Attacks on Kerberos Security • Kerberos itself stores many keys and should be protected • Tickets may be replayed within allowed lifetime. Server should store recent requests and check for replays • Adversary may cache many TGTs and work offline to decrypt them (see Wu’s attack). Clients shall use safe passwords. • By changing server clocks, adversary may replay tickets. Hosts shall synchronize clocks often • Enhancements • Allow authentication using public-key certificates, smart cards • Mutual authentication, where server returns signed timestamp

  49. Wu’s Attack • Dictionary attack on the TGT ticket returned by AS • Kerberos authentication exchange step-by-step • Initial request sent in clear • User name, requested ticket/service information • AS responds, message encrypted with key based on user password • Session key, service name, … • Client decrypts (verifying identity through knowledge of the key) • Attacking Kerberos client • Applies dictionary attack, decrypting with different passwords • Seeking service name = “krbtgt” • In two weeks, Wu has broken 2045 passwords in a real 25,000 users domain • Kerberos V5 requires pre-authentication • Client sends timestamp encrypted with authenticating key

  50. Other Kerberos Features • Kerberos Administration Server (KADM) • Purpose: add/manage users in the Kerberos database • Employs another protocol • Kerberos Replication and Realms • In large organizations, it is possible to replicate the TGT/Ss, with one copy serving as a master and the others being read-only • It is also common to divide the network services into Realms, each covered by different Kerberos servers, with a trust between realms • Kerberos is widely implemented • Most popular in network authentication • Main authentication mechanism in Win2K and up (esp. in domains that require Unix integration), and MS Passport • Directory servers and API available from Microsoft, Sun, etc.

More Related