Lecture Notes for Operating Systems
File System Reliability and Security, 22 November 1999
These are provisional lecture notes, expect changes.
- reliability - data integrity
- media failure - bad block list; controller deals with it
- backups - large disks; minimal but complete effort
- mirrored disks - tandem systems
- raid - striped disks; performance and reliability
-
- crash recovery - re-establishing consistency
- disk blocks should be either in a file or on the free list
- bad blocks are treated appropriately - put on the free list, or in a
file
- recovery re-establishes syntactic, not semantic, correctness
- file system consistency - count file references and make sure
directories agree
- consistency heuristics - proper permissions, sensible sizes
- protecting the user - keeping deleted files
- security - policy, mechanism, and assurance
- policy - need to know; hierarchical; information flow
- mechanism - how you implement policy
- assurance - how you make sure mechanism's implementing policy; tiger
teams, formal review, security audits
- security problems
- data loss - disasters, failures, oopses; covert channels
- unauthorized access - intruders; privacy
- three famous problems - unix, tenex, os360
- trojan horses, virus, worms, backdoors
- generic security attacks - tiger or penetration teams
- security design principles
- public design and review - security through secrecy usually doesn't
work
- sensible defaults - "sensible" meaning secure
- repetitive access checks - check and check again
- simple, uniform, and built-in security measures
- the human factor - social engineering
- security mechanisms
- user authentication
- passwords - good password selection
- cracking
- salting
- one-time passwords - synchronized random numbers
- challenge-response - smart cards
- physical identification - biometrics; watch the data
- reference monitor - the final word on security; where the operating
system comes in
- protection domains - object-access rights pairs
- the current protection domain vettes object operations
- example - unix files
- domains are defined by uid, gid pairs
- access rights are read-write-execute for owner, group, world
- protection matrix - domains x objects; elements are access rights
- access control lists - store the columns
- each object keeps a list of domain-access right pairs
- capabilities - store the rows
- each domain keeps a list of object-assess right pairs
- hardware support, or fast software (caching)
- revocation's a problem - indirect capabilities
This page last modified on 7 December 1999.