[go: up one dir, main page]

0% found this document useful (0 votes)
76 views37 pages

Computer Security (Chapter-6)

The document discusses authentication methods including passwords, smart cards, biometrics, and Kerberos. It describes how Kerberos provides centralized authentication through ticket-granting services to allow users to securely access resources.

Uploaded by

Naoly Get
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
76 views37 pages

Computer Security (Chapter-6)

The document discusses authentication methods including passwords, smart cards, biometrics, and Kerberos. It describes how Kerberos provides centralized authentication through ticket-granting services to allow users to securely access resources.

Uploaded by

Naoly Get
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 37

Chapter Six

Authentication and Access control


Authentication

 The process of reliably verifying the identity of someone or something


 When authenticating messages, we need to guard against:
 Disclosure of a message to any unauthorized person or system
 Messages masquerading as being from a source
 Content modification
o Was the message changed between sender and recipient?
 Source or destination repudiation
o Can the sender or recipient deny they sent/received the
message?

04/20/2024 Compiled by: Naol G. (MSc.) 2


What are we Authenticating?
 Authentication of a person
 Others know you by your appearance or voice
 By your picture on an identification badge
 Other information you have or know
 Authentication of a computer
 Computer authenticating another computer
 Person using a public workstation
 Workstation will (should) not store authentication information for
every user.
 Person needs to remember the authentication information

04/20/2024 Compiled by: Naol G. (MSc.) 3


Authentication Methods
 There are 3 primary authentication methods. Sensitive or critical
information should be protected by employing at least two of them
(two-or three-factor authentication).
o Knowledge -Something you know, such as a password, passphrase or
PIN.
o Ownership -For example, tokens and Smart cards.
o Characteristics -Biometrics are digitized representations of physical
features (such as fingerprints) or physical actions (such as
signatures).

04/20/2024 Compiled by: Naol G. (MSc.) 4


Passwords
 User name + password most common identification, authentication
scheme.
 Weak security mechanism, must implement strong password protections
 Techniques to attack passwords
o Electronic monitoring
o Access the password file
o Brute Force Attacks
o Dictionary Attacks
o Social Engineering

04/20/2024 Compiled by: Naol G. (MSc.) 5


 One Time Passwords (aka Dynamic Passwords)
o Used for authentication purposes and are only good once.
o This type of system is not vulnerable to electronic eavesdropping,
sniffing, or password guessing.
 Two types of Token Devices (aka Password Generator)
 Synchronous
o Time Based
o Counter Synchronization
 Asynchronous

04/20/2024 Compiled by: Naol G. (MSc.) 6


Smart Cards and Memory Cards
 Memory Cards: Holds but cannot process information.
 Smart Cards: Holds and can process information. Has a microprocessor
and integrated circuits incorporated into the card itself.
o Contact
o Contactless
 Significant benefit of smart cards is that the authentication process occurs
at the reader, thereby avoiding the trusted-path (protecting logon
information between the user and the authentication server) problem.

04/20/2024 Compiled by: Naol G. (MSc.) 7


Biometrics
 Verifies an identity by analyzing a unique person attribute or behavior
(e.g., what a person “is”).
 Most expensive way to prove identity, also has difficulties with user
acceptance.
 The most commonly known biometric systems are
o Finger scan
o Voice scan
o Face scan
o Iris scan
o Retina scan
o Signature scan

04/20/2024 Compiled by: Naol G. (MSc.) 8


Why Biometrics?
 Authentication mechanisms often used are User ID and Passwords
 However password mechanisms have vulnerabilities: Stealing passwords
 Biometrics systems are less prone to attacks
 Need sophisticated techniques for attacks
 Cannot steal facial features and fingerprints
 Need sophisticated image processing techniques for modifying facial
features
 Biometrics systems are more convenient, Need not have multiple
passwords or difficult passwords
 E.g., characters, numbers and special symbols, Need not remember
passwords
 Need not carry any cards or tokens
 Better accountability: Can determine who accessed the system with less
complexity
04/20/2024 Compiled by: Naol G. (MSc.) 9
What is the Process?
Three-steps: Capture-Process-Verification
 Capture: A raw biometric is captured by a sensing device such as
fingerprint scanner or video camera
 Process: The distinguishing characteristics are extracted from the raw
biometrics sample and converted into a processed biometric identifier
record
 Called biometric sample or template
 Verification and Identification
 Matching the enrolled biometric sample against a single record; is the
person really what he claims to be?
 Matching a biometric sample against a database of identifiers

04/20/2024 Compiled by: Naol G. (MSc.) 10


Kerberos
 In Greek mythology, a many headed dog, the
guardian of the entrance of Hades (an otherworld
where souls went after death and was the Greek
idea of afterlife

 Users wish to access services on servers


 Three threats exist (a workstation cannot be trusted to identify its
users correctly to network services)
 A user pretends to be another user
 A user alters the network address of a workstation
 A user eavesdrops on exchanges and uses a replay attack

04/20/2024 Compiled by: Naol G. (MSc.) 11


 Kerberos provides a centralized authentication server whose function is to
authenticate users to servers and servers to users; it is a trusted system
from MIT
 Relies on symmetric encryption, making no use of public-key encryption
 Provides centralised symmetric third-party authentication in a distributed
network
 allows users to access services distributed through networks
 without needing to trust all workstations
 rather all trust a central authentication server

04/20/2024 Compiled by: Naol G. (MSc.) 12


 Terms (Assume Kerberos Version 4)
 C = Client Module
 AS = authentication server (knows the passwords of all users and stores
these in a centralized database; It shares a unique secret key with each
server)
 V = server
 IDc = identifier of user on C
 IDv = identifier of V
 Pc = password of user on C
 ADc = network address of C
 Kv = secret encryption key shared by AS and V
 TS = timestamp
 || = concatenation

04/20/2024 Compiled by: Naol G. (MSc.) 13


 A Simple Authentication Dialogue; the user logs on to a workstation and requests
access to server V (3 steps)
(1) C  AS: IDc || Pc || IDv
 The client module C in the user’s workstation requests the user’s password
and then sends a message to the AS that includes the user’s ID, the user’s
password, and the server’s ID
(2) AS  C: Ticket
 The AS checks its database to see if the user has supplied the proper
password for this user ID and whether this user is permitted access to
server V; then the AS creates a ticket that contains the user’s ID and
network address and the server’s ID
Ticket = E(Kv, [IDc || ADc || IDv])
 The ticket is encrypted using the secret key shared by the AS and the server
04/20/2024 Compiled by: Naol G. (MSc.) 14
(3) C  V: IDc || Ticket
 With this ticket, C can now apply to V for service. C sends a message
to V containing C’s ID and the ticket. V decrypts the ticket and verifies
that the user ID in the ticket is the same as the unencrypted user ID
in the message. If these two match, the server considers the user
authenticated and grants the requested service
 There are two problems with the Simple Authentication Dialogue
oFirst, we would like to minimize the number of times that a user has to
enter a password
oThe second problem is that the earlier scenario involved a plaintext
transmission of the password; An eavesdropper could capture the
password and use any service accessible to the victim
 To solve these problems, we need a scheme for avoiding plaintext passwords
 For this a new server, known as the Ticket-Granting Server (TGS), is
introduced that issues tickets to users who have been authenticated to AS
04/20/2024 Compiled by: Naol G. (MSc.) 15
 A More Secure Authentication Dialogue
 Once per user login session
(1) C  AS: IDc || IDtgs
• The client requests a ticket-granting ticket (Tickettgs) on behalf of the user by
sending its user’s ID to the AS, together with the TGS ID, indicating a request
to use the TGS service
(2) AS  C: E(Kc, Tickettgs)
Tickettgs = E(Ktgs, [IDc||ADc||IDtgs||TS1|| Lifetime1])
 The AS responds with a ticket that is encrypted with a key that is derived
from the user’s password (KC), which is already stored at the AS
 When the response arrives at the client, the client prompts the user for
his/her password, generates the key (Kc), and attempts to decrypt the
incoming message. If the correct password is supplied, the ticket is
successfully recovered and saved
04/20/2024 Compiled by: Naol G. (MSc.) 16
 Note: the ticket includes a timestamp, indicating the date and time at
which the ticket was issued, and a lifetime, indicating the length of time for
which the ticket is valid (e.g., eight hours)
 Note: Ktgs is known only by the AS and the TGS
 Once per type of service
(3) C  TGS: IDc || IDv ||Tickettgs
 Each time the user requires access to a new service, the client requests
a service-granting ticket on behalf of the user. It transmits a message to
the TGS containing the user’s ID, the ID of the desired service, and the
ticket-granting ticket

04/20/2024 Compiled by: Naol G. (MSc.) 17


(4) TGS  C: Ticketv
Ticketv = E(Kv, [IDc||ADc||IDv ||TS2|| Lifetime2]
 The TGS decrypts the incoming ticket (of step 3) using Ktgs and verifies the
success of the decryption by the presence of its ID. It checks to make sure
that the lifetime has not expired. Then it compares the user ID and network
address with the incoming information to authenticate the user. If the user is
permitted access to the server V, the TGS issues a ticket to grant access to the
requested service
 The client saves each service-granting ticket (Ticketv) and uses it to
authenticate its user to a server each time a particular service is requested
• Once per service session
(5) C  V: IDc || Ticketv
 The client requests access to a service on behalf of the user. It transmits a
message to the server containing the user’s ID and the service granting ticket.
The server authenticates by using the contents of the ticket
04/20/2024 Compiled by: Naol G. (MSc.) 18
 Two additional problems remain
(1) The lifetime associated with the ticket-granting ticket
 If this lifetime is very short (e.g., minutes), then the user will be
repeatedly asked for a password. If the lifetime is long (e.g., hours),
then an opponent has a greater opportunity for replay. An opponent
could eavesdrop on the network and capture a copy of the ticket-
granting ticket and then wait for the legitimate user to log out and
forge the legitimate user’s network address and send the message of
step (3) to the TGS
 If an opponent captures a service-granting ticket and uses it before it
expires, the opponent has access to the corresponding service
 Hence, we need an additional requirement; a network service (the TGS
or an application service) must be able to prove that the person using a
ticket is the same person to whom that ticket was issued
04/20/2024 Compiled by: Naol G. (MSc.) 19
(2) The second problem is that there may be a requirement for servers to
authenticate themselves to users. Without such authentication, an opponent
could sabotage the configuration so that messages to a server were directed
to another location. The false server would then be in a position to act as a
real server and capture any information from the user and deny the true
service to the user

04/20/2024 Compiled by: Naol G. (MSc.) 20


 Kerberos V4 Authentication Dialogue
 Authentication Service Exhange: To obtain Ticket-Granting Ticket
(1) C  AS: IDc || IDtgs ||TS1
TS1 Allows AS to verify that client’s clock is synchronized with
that of AS
(2) AS  C: E(Kc, [Kc,tgs|| IDtgs || TS2 || Lifetime2 || Tickettgs])
Tickettgs = E(Ktgs, [Kc,tgs||IDc||ADc||IDtgs||TS2||Lifetime2])
 Kc,tgs Session key accessible to client created by AS to permit
secure exchange between client and TGS without requiring them to
share a permanent key
 TS2 Informs client of time this ticket was issued
 Lifetime2 Informs client of the lifetime of this ticket
04/20/2024 Compiled by: Naol G. (MSc.) 21
 Ticket-Granting Service Echange: To obtain Service-Granting Ticket
(3) C  TGS: IDv ||Tickettgs ||Authenticatorc
 Authenticatorc = E(Kc,tgs, [IDc||ADc||TS3]) - Generated by client to
validate ticket
 TS3 Informs TGS of time this authenticator was generated
(4) TGS  C: E(Kc,tgs, [Kc,v|| IDv || TS4 || Ticketv])
Ticketv = E(Kv, [Kc,v||IDc||ADc||TS4||Lifetime4])
 Kc,v Session key accessible to client created by TGS to permit
secure exchange between client and server without requiring
them to share a permanent key
 TS4 Informs client of time this ticket was issued
04/20/2024 Compiled by: Naol G. (MSc.) 22
 Client/Server Authentication Exhange: To Obtain Service
(5) C  V: Ticketv || Authenticatorc
 Authenticatorc = E(Kc,v, [IDc || ADc || TS5])
 The server decrypts the ticket, recovers the session key, and
decrypts the authenticator
(6) V  C: E(Kc,v, [TS5 +1]) (Step for mutual authentication)
 The server returns the value of the timestamp from the
authenticator, incremented by 1, and encrypted using the session
key. C can decrypt this message to recover the incremented
timestamp. Because the message was encrypted by the session key,
C is assured that it could have been created only by V. The contents
of the message assure C that this is not a replay of an old reply
04/20/2024 Compiled by: Naol G. (MSc.) 23
Access Control
 Is meant to prevent undesirable access of objects by subjects
 A protection system describes the conditions under which a system is
secure
 Access control is used to identify a user to a system
 Associated with each user, there can be a profile that specifies permissible
operations and accesses (authorization)
 The operating system can enforce rules based on user profile
 Access Control - Generalized View
 Access control: Verifying access rights to prevent misuse of resources
 Authorization: Granting access rights (Do not confuse authorization and
authentication!)

04/20/2024 Compiled by: Naol G. (MSc.) 24


Access Control Matrix (ACM)
 The access control matrix arose both in operating systems and in database
research
 It describes allowed accesses using a matrix
 Basic elements of ACM
 Subject: An entity capable of accessing objects, such as processes and
users; subjects are active; subjects are given security clearance
 Object: Anything to which access is controlled (files, programs, memory
segments, …); objects are passive; objects have security classification
 Access right: The way in which an object is accessed by a subject (read,
write, execute, …); the exact meaning of the operation depends on the
nature of the object; “reading from” a file is obvious but what is “reading
from” a process; it could mean that the reader accepts messages from
the process being read

04/20/2024 Compiled by: Naol G. (MSc.) 25


Access Control Matrix
Object

Subject

 In the ACM, each subject is represented by a row and each object as a


column
 Capabilities: are stored row-wise - with the subjects
 Permissions: are stored column-wise - with the objects
 ACM [s, o] lists precisely which operations subject s can request to be
carried out on object o
04/20/2024 Compiled by: Naol G. (MSc.) 26
Access Control Matrix - Example

 Subject (Row): Three users (Bob, Alice, and Hana) and one program
(Finance Sys.)
 Object (Column): Five objects (OS, Accounting Program, Accounting
Data, Insurance Data, and Payroll Data)
 Access Rights (each cell): Read, Write, Execute, Not Allowed)

04/20/2024 Compiled by: Naol G. (MSc.) 27


Problems of ACM
 The number of subjects and objects will be large so that the matrix will
use significant amount of storage
 Most entries in the matrix will be either blank (indicating no access) or the
same (because implementations often provide a default setting)
 The creation and deletion of subjects and objects will require the matrix to
manage its storage carefully, adding to the complexity of the code
 Optimizations (variants based on the access control matrix that eliminate
many of the problems mentioned) are used
 Access Control Lists in which each object maintains a list of access
rights of subjects
 Capability List where each subject is given access rights to objects

04/20/2024 Compiled by: Naol G. (MSc.) 28


 Access Control List
 Decomposition of the ACM by columns (store each column with the
object it represents)

 An access control list of an object lists users and their


permitted access right on the object
 The list may contain a default or public entry

04/20/2024 Compiled by: Naol G. (MSc.) 29


Protection Domain
 An Access Control List or a Capability List can still become too large
 One way of reducing ACLs is to make use of protection domains
 A protection domain is a set of (object, access rights)
 Requests for carrying out an operation are always issued within a domain
 A user should be a member of a domain that has the required access
rights to invoke an object

04/20/2024 Compiled by: Naol G. (MSc.) 30


Access Control Policies and Models
 Security policy governs a set of rules and objectives needed by an
organization
 A security model can be used by an organization to help express the
policy or business rules to be used in a computer system
 Access control policies are high-level requirements that specify how
access is managed and who may access information under what
circumstances
 For instance, policies may pertain to resource usage within or across
organizational units or may be based on need-to-know, competence,
authority, or obligation
 There are two types of access control models
 Discretionary Access Control Model and
 Non Discretionary Access Control Model

04/20/2024 Compiled by: Naol G. (MSc.) 31


 Discretionary Access Controls (DACs) is an access policy determined by the
owner of an object. The owner decides who is allowed to access the object
and with what privileges
 They are called discretionary as users can be given the ability of passing
on their privileges of any of the objects under them to other users,
without the intervention of the system administrator
 Non Discretionary Access Controls (NDACs) are controls that cannot be
changed by users, but only through administrative action. Users cannot pass
access permissions on to other users at their discretion. NDAC has three
popular forms of access control policies
1. Mandatory Access Control (MAC),
2. Role-Based Access Control (RBAC), and
3. Temporal Authorization (TA)

04/20/2024 Compiled by: Naol G. (MSc.) 32


 Mandatory Access Control (MAC) is a means of restricting access to objects
based on the sensitivity of the information contained in the objects and
the formal authorization of subjects to access information of such
sensitivity
 In MAC, decisions are made by a central authority, not by the individual
owner of an object, and the owner cannot change access rights
 An example of MAC occurs in military security, where an individual data
owner does not decide who has a Top Secret clearance, nor can the owner
change the classification of an object from Top Secret to Secret

04/20/2024 Compiled by: Naol G. (MSc.) 33


 Role-Based Access Control (RBAC) bases access control decisions on the
functions/roles of a user that he/she is allowed to perform within an
organization
 This includes the specification of duties, responsibilities, and qualifications. For
example, the role “individual associated with a hospital” can include doctor,
nurse and patient
 Temporal Authorization (TA) are formal statements of access policies that
involve time-based access restrictions

04/20/2024 Compiled by: Naol G. (MSc.) 34


Trusted System: Reference Monitor (Implementing Policies)
 Reference Monitor
 A controlling element in the hardware and operating system that regulates
the access of objects by subjects on the basis of security parameters
 It enforces the security policies
 It has access to a security kernel database

04/20/2024 Compiled by: Naol G. (MSc.) 35


 Properties of the Reference Monitor
 Complete mediation: Security rules are enforced on every access
 Isolation: The reference monitor and its database themselves are
protected from unauthorized modification
 Verifiability: The reference monitor’s correctness must be provable
 A system that can provide such verifications is referred to as a trusted
system

04/20/2024 Compiled by: Naol G. (MSc.) 36


End of Chapter-6
Questions?
Read More…..

04/20/2024 Compiled by: Naol G. (MSc.) 37

You might also like