0% found this document useful (0 votes)
14 views61 pages

Lecture#2

The document outlines the foundations of computer security, focusing on the perspectives of different characters involved: Alice (the user), Dan (the admin), and Trudy (the adversary). It discusses key security properties such as confidentiality, integrity, availability, accountability, and authentication, as well as the importance of understanding assets, adversaries, vulnerabilities, and threats in analyzing system security. Additionally, it covers various authentication methods, including passwords and biometrics, and introduces concepts like access control lists and capabilities.

Uploaded by

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

Lecture#2

The document outlines the foundations of computer security, focusing on the perspectives of different characters involved: Alice (the user), Dan (the admin), and Trudy (the adversary). It discusses key security properties such as confidentiality, integrity, availability, accountability, and authentication, as well as the importance of understanding assets, adversaries, vulnerabilities, and threats in analyzing system security. Additionally, it covers various authentication methods, including passwords and biometrics, and introduces concepts like access control lists and capabilities.

Uploaded by

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

CSE345/545 - Winter 2025

Foundations of Computer Security


Lecture 1: Security Components

Dr. Arun Balaji Buduru


Founding Head, Usable Security Group (USG)
Associate Professor, Dept. of CSE | HCD, IIIT-Delhi, India
Visiting Faculty, Indiana University – Bloomington, USA
What would you do?
1
Know the Characters
Alice, the average
user (Bob)

Trudy, the bad guy

Dan,
2
the admin
Alice’s view of Security
3

 I just want to finish my work


 Financial transactions
 Transferring files

 I don’t do much on the Internet so I am safe


 I don’t have any PII (Personally Identifiable Information)
on my machine
 I don’t want somebody to keep on tab on what I am
doing
Dan’s view of Security
4

 How do I convince users that having a strong password


helps?
 What technology, process, or people skills can I use to
reduce
 Attackson my machines
 Customer or complaint calls / emails
Trudy’s view of Security
5

 How can I guess his / her password?


 Can I exploit any weaknesses / loop holes in the
systems?
 Can I exploit human behavior?
 Social engineering
Security Properties
6

 Five main security properties:


 Confidentiality – No unauthorized information gathering
 Integrity – Data has not been (maliciously) altered

 Availability – Data/services can be accessed as desired

 Accountability – Actions traceable to those responsible

 Authentication – User or data origin accurately


identifiable
Confidentiality
7
Integrity
8
Authentication
9
Availability
10
Which Property is Violated?
11

 Hacker gets access to a classified information from a


machine
 You are not able to access the bank’s site for transaction
 You break into IIIT-D machine to change your grades
 The online session keeps expiring when you are trying to
a transaction on the bank’s website
Whole-System is Critical
12

 Securing a system involves a whole-system view


 Cryptography

 Implementation

 People

 Physical security
 Everything in between

 This is because “security is only as strong as the weakest


link,” and security can fail in many places
 No reason to attack the strongest part of a system if you can
walk right around it.
Analyzing the Security of a System
13

 First thing: Summarize the system as clearly and


concisely as possible
 Criticalstep. If you can’t summarize the system clearly and
concisely, how can you analyze it’s security?
 Next steps:
 Identify the assets: What do you wish to protect?
 Identify the adversaries and threats

 Identify vulnerabilities: Weaknesses in the system

 Calculate the risks

 Evaluate controls / mitigation strategies, and iterate


Assets
14

 Need to know what you are protecting!


 Hardware: Laptops, servers, routers, PDAs, phones, ...
 Software: Applications, operating systems, database systems,
source code, object code, ...
 Data and information: Data for running and planning your
business, design documents, data about your customers, data
about your identity
 Reputation, brand name
 Responsiveness

 Assets should have an associated value (e.g., cost to replace


hardware, cost to reputation, how important to business
operation)
Adversaries
15

 National governments
 Terrorists
 Thieves
 Business competitors
 Your supplier
 Your consumer
 New York Times
 Your family members (parents, children)
 Your friends
 Your ex-friends
Vulnerabilities
16

 Weaknesses of a system that could be exploited to cause


damage
 Accounts with system privileges where the default password has
not been changed (Diebold: 1111)
 Programs with unnecessary privileges
 Programs with known flaws
 Known problems with cryptography
 Weak firewall configurations that allow access to vulnerable
services
 ...

 Sources for vulnerability updates: MITRE, CVSS, CERT, SANS,


Bugtraq, the news(?)
Threats
17

 Threats are actions by adversaries who try to exploit


vulnerabilities to damage assets
 Spoofing identities: Attacker pretends to be someone else
 Tampering with data: Change outcome of election

 Denial of service: Attacker makes voting machines


unavailable on election day
 Escalation of privilege: Regular voter becomes admin

 Specific threats depend on environmental conditions,


enforcement mechanisms, etc
 Youmust have a clear, simple, accurate understanding of
how the system works!
Threats
18

 Several ways to classify threats


 By damage done to the assets
◼ Confidentiality, Integrity, Availability
 By the source of attacks
◼ (Type of) insider
◼ (Type of) outsider
◼ Local attacker
◼ Remote attacker
◼ Attacker resources
 By the actions
◼ Interception
◼ Interruption
◼ Modification
◼ Fabrication
19

Authentication
Authentication
20

 Binding of identity / entity to the subject


 One or more of the following
 What entity knows (eg. password)
 What entity has (eg. badge, smart card)

 What entity is (eg. fingerprints, retinal characteristics)

 ??Where entity is (eg. In front of a particular terminal)


Authentication System
21

 (A, C, F, L, S)
A information that proves identity
 C information stored on computer and used to validate
authentication information
 F complementation function; f : A → C

 L functions that prove identity

 S functions enabling entity to create, alter information in A or


C
Passwords
22

 Sequence of characters
 Examples: 10 digits, a string of letters, etc.
 Generated randomly, by user, by computer with user input

 Sequence of words
 Examples: pass-phrases
 Algorithms
 Examples: challenge-response, one-time passwords
 Entropy vs. memorability
 The more complex a password the harder it is to guess ...
 ... and the harder it is to remember.
 Thus, we write them down.
Storage
23

 Store as cleartext
 If password file compromised, all passwords revealed
 Encipher file
 Need to have decipherment, encipherment keys in memory
 Reduces to previous problem

 Store one-way hash of password


 If file read, attacker must still guess passwords or invert the hash
Password Cracking
24

 Social Engineering
 Password Resetting – surprisingly large!

 Dictionary Attacks – John the Ripper

 Brute Force Attacks

 Key stroke Logging and Sniffing

 Hash chains and Rainbow Tables


One-Time Passwords
25

 Password that can be used exactly once


 After use, it is immediately invalidated
 Challenge-response mechanism
 Challenge is number of authentications; response is password for
that particular number
 Problems
 Synchronization of user and system
 Generation of good random passwords

 Password distribution problem


One-Time Passwords
26

 Generation mechanisms
 Time-synchronization

◼ Using a synchronized time between client and server


◼ Example
Let tx be a current synchronized time,
f(tx)=px The passwords in the order of use are
p1, p2 … px …
One-Time Passwords (cont.)
27

 Challenge-response
◼ Using a challenge from server
◼ Example: Let cn be the current challenge from server,
f(cn) = pn The passwords p in the order of use are
p1, p2 … pn
 Hash chain
◼ Using a chain of hash functions
◼ Example: h is the one-way hash function, p is the OTP and an
initial seed s
h(s)=p1, h(p1)=p2, …, h(pn-1)=pn
The passwords in the order of use are
pn, pn-1, …, p2, p1
Challenge-Response
28

User and system share a secret function f

user request to authenticate system

user random message r system


(the challenge)

user f(r) system


(the response)
Hardware Support
29

 Token-based
 Used to compute response to challenge
◼ May encipher or hash challenge
◼ May require PIN from user

 Temporally-based
 Every minute (or so) different number shown
◼ Computer knows what number to expect when
 User enters number and fixed password
Biometrics
30

 Automated measurement of biological, behavioral


features that identify a person
 Fingerprints: optical or electrical techniques
◼ Maps fingerprint into a graph, then compares with database
◼ Measurements imprecise, so approximate matching algorithms used
 Voices: speaker verification or recognition
◼ Verification: uses statistical techniques to test hypothesis that speaker is who
is claimed (speaker dependent)
◼ Recognition: checks content of answers (speaker independent)
Other Characteristics
31

 Can use several other characteristics


 Eyes: patterns in irises unique
◼ Measure patterns, determine if differences are random; or correlate images
using statistical tests
 Faces: image, or specific characteristics like distance from nose to
chin
◼ Lighting, view of face, other noise can hinder this
 Keystroke dynamics: believed to be unique
◼ Keystroke intervals, pressure, duration of stroke, where key is struck
◼ Statistical tests used
Effectiveness of Biometrics
32

 Evaluated on three basic criteria


 False reject rate: Rate at which supplicants (authentic users) are
denied or prevented from accessing authorized areas due to
failure detected by biometric device (Type I error).
 False accept rate: Rate at which supplicants who are not
legitimate users are allowed access to systems or areas due to
failure detected by biometric device (Type II error).
 Crossover error rate: Level at which the number of false
rejections equals the number of false acceptances, (equal error
rate). This is the most common and important overall measure
of the accuracy of biometric systems.
Acceptability of Biometrics
33

 Balance between how acceptable the security


system to users and its effectiveness in
maintaining the security
 Many biometric systems that are highly reliable and
effective are invasive
 Many information security professionals, in an effort
to avoid confrontation and possible user boycott of
biometric controls, do not use them
Authentication: Summary
34

 Authentication is not cryptography


 You have to consider system components
 Passwords are here to stay
 They provide a basis for most forms of authentication
 Protocols are important
 They can make masquerading harder
 Authentication methods can be combined
 Multi-factor
Authorization
35

 Authorization is the function of specifying access rights to


resources
 E.g: Human resources staff are normally authorized to
access employee records
 Represented as ACL
Access Control Matrix
36

 Access control matrix is simplest framework for


describing rights of users over files in a matrix
File 1 File 2 File 3 File 4

User 1 R, W, O R R, W, X, O W

User 2 R R, O R R, W, X, O
Access Control List
37

 A variant of the access control matrix


 Store each column with the object it represents

ACL(file 1) = {(user 1, RWO), (user 2, R)}


ACL(file 2) = {(user 1, R), (user 2, RO)}
ACL(file 3) = {(user 1, RWXO), (user 2, R)}
ACL(file 4) = {(user 1, W), (user 2, RWXO)}
Creation and Maintenance of
Access Control List
38

 Which subjects can modify an object’s ACL?


 Possessors with the “own” right can modify the ACL
 Does the ACL support groups and wildcards?
 Groups and wildcards are used to limit the size of the ACLs
 Conflicts?
 When there is conflict between two ACLs, the resolution
resolved by the rules in the system
 ACLs and default permissions?
 Ifno appropriate ACL entry exists, the default permission is
applied
Capabilities
39

 Another variant of the access control matrix


 Store each row with the subject it represents

CAP(user 1) = {(file 1, RWO), (file 2, R), (file 3, RWXO),


(file 4, W)}
CAP(user 2) = {(file 1, R), (file 2, RO), (file 3, R), (file 4,
RWXO)}
ACL vs. Capabilities
40

 Two different questions


 Given an object, which subjects can access it, and how?
 Given a subject, which objects can it access, and how?

 ACL is easy to answer the first question


 Capabilities is easy to answer the second question
 Which question is more important?
ACL vs. Capabilities (cont.)
41

 Authentication
 Given a process that wishes to perform an operation on an object
◼ ACL needs to authenticate the process’s identity
◼ Capabilities do not require authentication, but require unforgeability
 Least Privilege
 Capabilities provide finer grained least privilege control
 Revocation
 ACL can remove a group of users from the list, and those users can
no longer gain access to the object
 Capabilities have no equivalent operation
TROJAN HORSES

 A Trojan Horse is rogue software installed,


perhaps unwittingly, by duly authorized users
 A Trojan Horse does what a user expects it to
do, but in addition exploits the user's
legitimate privileges to cause a security
breach
TROJAN HORSE EXAMPLE

ACL

A:r
File F
A:w

B:r
File G
A:w

Principal B cannot read file F


TROJAN HORSE EXAMPLE

Principal A ACL
executes
A:r
read File F
Program Goodies A:w

Trojan Horse
B:r
File G
write A:w

Principal B can read contents of file F copied to file G


Bell-LaPadula security model
45

The Bell-LaPadula (BLP) model is about information


confidentiality, and this model formally represents the long
tradition of attitudes about the flow of information
concerning national secrets.
Classifications and clearances
46

 Unclassified, confidential, secret, top secret


 Cost ‘lives’ marked ‘secret’
 Cost ‘many lives’ marked ‘top secret’
Bell – LaPadula - Details
 Earliest formal model
 Each user subject and information object
has a fixed security class – labels
 Use the notation ≤ to indicate dominance

 Simple Security (ss) property:

the no read-up property


A subject s has read access to an object iff the class of the
subject C(s) is greater than or equal to the class of the object
C(o)
 i.e. Subjects can read Objects iff C(o) ≤ C(s)
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Read OK Top Secret

Secret Secret

Unclassified Unclassified
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Top Secret

Secret Read OK Secret

Unclassified Unclassified
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Top Secret

Secret Secret

Unclassified Read OK Unclassified


Bell - LaPadula (2)

 * property (star):
the no write-down (NWD) property
 Whilea subject has read access to object O, the subject can
only write to object P if
C(O) ≤ C (P)
 No process may write data to a lower level
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Write OK Top Secret

Secret Secret

Unclassified Unclassified
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Top Secret

Secret Write OK Secret

Unclassified Unclassified
Access Control: Bell-LaPadula

Subjects Objects
Top Secret Top Secret

Secret Secret

Unclassified Write OK Unclassified


Access Control Models
55
 Discretionary Access Control (DAC)
 Restricting access to objects based on identity of
subjects and/or groups to which they belong
 Mandatory Access Control (MAC)
 Restrict access to objects based on the sensitivity
(as represented by a label) of the information
contained in the objects and the formal
authorization (i.e. clearance) of subjects to access
information of such sensitivity
Access Control Models (cont.)
56

 Role based access control (RBAC)


 Began in 1970s

 To facilitate the security management in multi-user, multi-


application systems
 Minimum requirements:
◼ Associate roles with each individual.
◼ Each role defines a specific set of operations that the
individual acting in that role may perform.
◼ An individual needs to be authenticated, chooses a role
assigned to the individual, and accesses information
according to operations needed for the role.
RBAC
57
 Users: human beings
 Roles: job function (title)
 Permissions: approval of a mode of access
 Always positive
 Abstract representation
 Can apply to single object or to many

users roles
permissions (P)
(U) (R) Permission
User Assignment (UA)
Assignment (PA)
RBAC Family

RBAC3 consolidated model

RBAC1 RBAC2
role hierarchy constraints

RBAC0 base model

58
RBAC Family (cont.)
59

 RBAC0: the base model indicating that it is the


minimum requirement for RBAC
 RBAC1: include RBAC0 and support of role hierarchy
 Inheritance among roles
 Inheritance of permission from junior role (bottom) to
senior role (top)
 RBAC2: include RBAC0 and support of constraints
 Enforces high-level organizational policies, such as
mutually exclusive roles
 RBAC3: combine RBAC1 and RBAC2
Situation-Aware Access Control
60

 Situation-aware access control model incorporates


situation-awareness into RBAC
For example, only when the user with the role of a teacher
in the Smart Classroom during the class time, the user
can create a group discussion

You might also like