07 - Windows Security
07 - Windows Security
COMPUTER SECURITY
07 - WINDOWS SECURITY
These slides are prepared from Prof Pavel Laskov‘s lecture slide Version 2.0
1
SECURITY COMPONENTS
Kernel mode:
Security Reference Monitor: ACL
veri cation
User mode:
Log-on process (winlogon): user
logon
Local Security Authority (LSA):
password veri cation and change,
access tokens, audit logs (MS04-11
buffer over ow: Sasser worm!)
Security Accounts Manager (SAM):
accounts database, password
encryption
User Account Control (UAC, Vista):
enforcement of limited user privileges
WINDOWS SECURITY
ARCHITECTURE
2
WINDOWS REGISTRY
WINDOWS DOMAINS
A domain is a
collection of machines
sharing user accounts
and security policies.
Domain
authentication is
carried out by a
domain controller
(DC).
To avoid a single point
of failure, a DC may
be replicated
3
ACTIVE DIRECTORY
4
ACCESS CONTROL IN WINDOWS
Access control is applied to objects: les,
registry keys and hives, Active Directory
objects.
More than just access control on les!
Various means exist for expressing security
policies:
Groups
Roles
Ownership and inheritance rules
Compex access rights
3. Security
credential
5
PRINCIPALS
Principals are active entities in security policies
Principals can be
local users
aliases
domain users
groups
machines
Principals have a human readable user name and a
unique security identi er (SID)
Local principals are created by a LSA, e.g.
principal = MACHINE\principal
Domain principals are administered by DC, e.g.
principal@domain = DOMAIN\principal
SECURITY IDENTIFIERS
A security identi er (SID) is a unique, machine
generated code of varying length used to identify
principals.
Format: S-1-IA-SA-SA-SA-N, where
IA (identi er authority): characterizes an issues, e.g.
World Authority (1) or Local Authority (2)
SA (subauthority): identi es a speci c SID issue, e.g. a
domain controller
N: relative identi er, unique for each authority
Examples:
Everyone (World): S-1-1-0
System: S-1-5-18
Administrator: S-1-5-21-<local authority>-500
6
PRINCIPALS USED FOR ACCESS
CONTROL
SID: an individual principal
Group: a collection of principals managed by
DC; groups have their own SIDs and can be
nested
Alias: a local group managed by LSA;
cannot be nested
Aliases implement logical roles: an
application may de ne an alias to which
SIDs are assigned at run-time
SUBJECTS
7
TOKEN CONTENTS
PRIVILEGES
A set of xed privileges is de ned by numeric
constants in Winnt.h
Privileges control access to system resources.
Example privileges:
load or unload a device driver
lock a page in a physical memory
create a computer account
shut down a system
modify a system time
Privileges are not access rights!
8
OBJECTS
9
SECURITY DESCRIPTOR
10
GENERIC ACCESS RIGHTS
ACLs IN WINDOWS
DACL in a security descriptor is a list of
Access Control Entries (ACE)
ACE format:
ACE type: positive or negative permissions
Principal SID
Access rights mask
Inheritance ags
ACEs are processed sequentially until either
some entry denies all requested access
rights and a set of ACE grants all requested
access rights
11
ACL PROCESSING EXAMPLE
ACL INHERITANCE
12
KEY POINTS
Thank You
13