Key Principles Flashcards
Confidentiality
the property that information is not made available to unauthorized entities
Integrity
the property that information is not altered or destroyed in an unauthorized manner
Authentication
the act of confirming the identity of an entity interacting with a system
Authorization
the act of assigning rights and privileges to entities interacting with a system
Non-repudiation
the ability to associate actions or changes to a unique individual
Least Privilege
Every component and entity has the minimum possible
privileges to complete its task
Zero Trust
Dropping privileges is hard.
Start with zero privileges and add only the ones that are necessary.
Economy of Mechanism (8 Design Principles for Security)
Design should be as simple as possible. Complex mechanisms are difficult to test.
Fail-safe Defaults (8 Design Principles for Security)
Default state should be “lack of access.” Examples: No default pswd, no debugging interfaces or backdoors. Secure initial config. Start with highest security level. Invalid configuration falls back to high security.
Complete Mediation (8 Design Principles for Security)
Complete access control -> Every access to every object checked.
Authentication and authorization are critical. Any value that can be influenced by user can’t be trusted
Open Design (8 Design Principles for Security)
NOT security by obscurity. Design should be available for everyone to build trust and allow reviews. Security should depend on secrecy of a small token
Separation of Privilege (8 Design Principles for Security)
Access depends on more than one condition. Examples: launching missile requires two people and keys, bank safe needs two physical keys
Least Privilege (8 Design Principles for Security)
Every component and entity has the minimum possible privileges to complete its task. Examples: Avoid running progs as root, drop privileges when no longer needed
Least Common Mechanism (8 Design Principles for Security)
Reduce mechanisms used by more than one component, person…
Reduces surprise interactions. Avoids race conditions.
Reduces dangerous information flows
Psychological Acceptability (8 Design Principles for Security)
Easy to use interfaces to tools and technologies otherwise people will use them incorrectly/for the wrong reasons/not at all