Domain 3 -- Security Architecture and Engineering Flashcards
The CPU is the _________ of a computer
brain
The actual execution of instructions and logic is performed by the _________.
Arithmetic Logic Unit (ALU)
The control unit _________ and ________ the system while different apps and operating system instructions are being executed
manages and synchonizes
What are the two types of registers that the CPU has?
General Registers
Special Registers
The Program Status Word (PSW) in the CPU has a bit to indicate _______ Mode or _______ Mode
User
Privlieged
What’s the difference between Symmetric and Asymmetric modes of multi-processing?
With Symmetric Multiprocessing any CPU can be handed any piece of work (example – All CPU’s can execute OS threads and user threads)
With Asymmetric multiprocessing, not all CPU’s are created equal. Some CPU’s can be dedicated to a specific task (e.g. the Operating System) and other CPU’s can be dedicated to user threads
What is ROM memory?
Read Only Memory – It can’t be changed
What is PROM and can it be changed?
PROM - Programmable Read-only memory (can be programmed only one time)
What is EPROM and can it be modified?
EPROM stands for Erasable Programmable Read Only Memory
It can be erased, modified and upgraded
It is erased with UV Light
What is EEPROM and how is it differrent from EPROM?
EEPROM stands for Electrically Erasable ROM.
Instead of requiring UV light to erase it. It can be erased elecrically.
Erasing EEPROM is slow. Only 1 bit at a time.
How are Flash Memory and EEPROM similar? How are they different?
Flash Memory came after EEPROM.
It can be erased in blocks and is faster than EEPROM
What are the three key elements that make a program vulnerable to a buffer overflow attack?
- Not validating the user input to perform proper bounds checking
- Making a function call that pushes the return pointer into the stack
- Using an insecure function that copies values without ensuring they do not exceed the size of the destination.
What are two memory Protection Techniques and how do they work?
- ASLR – Address Space Layout Randomization. This is where the OS changes the layout of the memory continually, so attackers can’t attack it
- DEP – Data Execution Prevention. It can mark certain memory locations as “off-limits” and thus reduce the “playing field for hackers.”
Where are the three places where memory leaks can take place?
- Operating Systems
- Applications
- Software drivers
What are the two main countermeasures against memory leaks?
- Developing better code that doesn’t create leaks
- Using garbage collector software to identify unused memory and mark it as available to the OS
Operating systems provide multiprogramming. What does that mean?
Multiprogramming means that more than one program (or process) can be loaded into memory at the same time.
Note that multi-programming is a legacy term. It has been replaced by multi-tasking.
What’s the difference between multi-programming and multi-tasking?
Multiproramming means the ability to load more than one program into memory at the same time.
Multitasking means the ability not only to load more than one program into memory at the same time, but also deal with requests from different applications simultaneously.
What’s the difference between cooperative multi-tasking and preemptive multitasking?
Cooperative multitasking (Windows 3.1 and early Mac systems) requrired processes to voluntarily release resources they were using while they were waiting.
With Preemptive multitasking the OS controls how long a process can control a resource via mechanisms like time sharing.
Pre-emptive multi-tasking took control away from the apps and gave it to the OS, making it more stable.
What are the three states that a process can be in?
Running
Ready
Blocked
What’s the difference between a maskable and non-maskable interrupt?
A maskable interrupt is assigned to an event that is not overly important. It can be ignored by the application, if necessary
A non-maskable interrupt can never be overriden by an application.
What is a watchdog timer?
A watchdog timer is an example of a critical process that must always do its thing.
The watchdog timer will reset the system with a warm reboot if it cannot recover itself
In what order are the instructions in the Memory Stack performed?
LIFO
What are the names of the two pointers related to the memory stack and what are they used for
Return pointer – where to send the results of processing after the instructions on the stack have been executed
Stack Pointer – used by the CPU to keep track of where it is in processing stack instructions
What are four methods of enforcing process isolation?
- Encapsulation of objects
- Time multiplexing of shared resources
- Naming distinctions
- Virtual memory mapping
What are the three goals of memory management?
- Provide an abstraction level for programmers
- Maximize performance with the limited amout of memory available
- Protect the operating system and applications loaded into memory
What is a Dynamic Link Library (DLL)?
A DLL is a set of functions that applications can call upon to carry out differrent types of procedures
What is Virtual Memory?
When RAM and secondary storage are combined, the result is virtual memory
What are five ways that an OS can perform IO operations?
- Programmed IO - Polling
- Interrupt driven I/O – One character at a time to a printer
- I/O using DMA (Direct memory access / AKA unmapped IO)
- Premapped I/O - CPU sends device physical memory address and device is trusted to read it (scary)
- Fully mapped I/O - OS works with devices via logical memory address. Device is not trusted with physical memory addresses.
What is a CPU microarchitecture?
The microarchitecture contains the things that make up the physical CPU (registers, logic gates, ALU, cache, etc.)
Describe the relationship between instruction set, micoarchitecture and Operating Systems.
The most common instruction set today (x86) can be used within different microarchitectures (Intel, AMD, etc.) and with different operating systems (Windows, MacOS, Linux, etc.)
What’s the definition of an API?
Application Programming Interface – An API is the doorway to a protocol, operating service, process or DLL.
What are the four basic OS architecture types and a brief definition?
- Monolithic – all OS system processes run in kernel mode
- Layered – All OS system processes run in a herarchical model in kernel mode
- Microkernel - Core OS processes run in kernel mode and the remaining ones run in user mode.
- Hybrid microkernel - All OS processes run in kernel mode. Core processes run within a microkernel and others run in a client/server model.
What is a security policy?
A security policy is a strategic tool that dictates how sensitive information and resources are to be managed and protected.
What is the Trusted Computing Base (TCB)
The TCB is a collection of HW, SW and firmware coponents within a system that provides some type of security and enforces the systems’s security policy
What is the security perimeter in the context of the TCB?
A security perimeter is a boundary that divides the trusted from the untrusted
Are the TCB and Security Perimeter Physical things?
No – the TCB and Security Perimeter are conceptual constructs to delineate between trusted and untrusted components and how they communicate
What is the Reference Monitor?
The reference monitor is an abstract machine that mediates all access subjects have to objects.
What is the security kernel?
The security kernel is made up of hardware, software and firmware coponents that fall within the TCB, and it implements and enforces the reference monitor concept.
What are the three main requirements of the security kernel?
- It must provide isolation for the processes carrying out the reference monitor concept and it must be tamperproof
- It must be invoked for every access attempt and must be impossible to circumvent. Thus, the security kernel must be implemented in a complete and foolproof way.
- It must be small enough to be tested and verified in a complete and comprehensive manner
What’s the relationship between Reference Monitor, the Security Kernel and the TCB?
- The Reference Monitor is a concept in which an abstract machine mediates all access to objects by subjects
- The Security Kernel is the hardware, software and firmware of the TCB that implements this concept
- The TCB is the totality of protection mechanisms within a computer system that work together to enforce security policy
What is a multilevel security policy?
Multilevel security policies prevent information from flowing from a high security level to a lower security level.
What type of security model is the Bell-LaPadula model and what aspect of security does it enforce?
- It’s a multi-level security policy
- It only deals with Confidentiality
State the three main rules of the Bell-LaPadula Model and briefly describe them.
- Simple Security Rule - A subject at a given security level cannot read data that rsides at a higher security level (No read up)
- *-property (star property) rule - A subject in a given security level cannot write information to a lower security level (No write down)
- Strong star property rule - a subject who has read and write capabilities can only perform both of those functions at the same security level. So, for a subject to be able to read and write to an object, its clearance and the objects clearance must be equal.
What aspect of Security is the Biba Security model concerned with?
Integrity
State the three main rules of the Biba Model and briefly describe them.
- *-integrity axiom - A subject cannot write data to an object at a higher integrity level (no write up)
- Simple integrity axiom - A subject cannot read data from a lower integrity level (no read down).
- Invocation property - A subject cannot request service (invoke) at a higher integrity
What’s common about the Bell-LaPadula and Biba rules?
- Both have simple rules
- Both have * rules
- If the word Simple is used, it’s with respect to reading
- If the rule uses *, it’s about writing
What aspect of security is the Clark-Wilson model concerned with?
Integrity
What are the five elements used in the Clark-Wilson model?
- Users - active agents
- Transformation procedures (TP’s)
- Constrained data items (CDI’s)
- Unconstrained data items (UDI’s)
- Integrity Verification Procedures (IVP’s)
What is a distinctive feature of the Clark-Wilson model, and what does it refer to?
Well formed transactions - these are a series of operations that transform a data item from one consistent state to another.
Briefly describe how the Clark-Wilson model works?
- Data is separated into CDI (secure and worthy of protection) and UDI (less critical)
- Users can’t modify CDI directly. They must use Transformation Procedures to modify the data on behalf of the user
- The IVP ensures that all critical data manipulation follows the application defined integrity rules
- The Clark-Wilson model enforces the “access triple”
- Subject (user)
- Program (TP)
- Object (CDI)
What is a non-interference model and what is the point of it?
- A non-interference model ensures that any actions that take place at a higher level of security do not affect or interfere with actions that take place at a lower level
- It is concerned about what a subject knows about the state of the system
- It is designed to prevent data leakage. If an entity at a higher security level performs an action, it cannot change the state for an entity at a lower security level.
What does the Brewer and Nash Model state? What is a synonym for it?
- The model allows for dynamically changing access controls that protect against conflicts of interest
- The Brewer and Nash model states that a subject can write to an object if, and only if, the subject cannot read another object that is in a different dataset
- Its main goal is to protect against conflicts of interest by users’ access attempts (example – stock broker having access to earnings report)
- It is also known as the Chinese Wall model
What are the eight rules covered by the Graham-Denning Model
- How to securely create an object
- How to securely create a subject
- How to securely delete an object
- How to securely delete a subject
- How to securely provide the read access right
- How to securely provide grant the access right
- How to securely provide the delete access right
- How to securely provide transfer access rights
What is the gist of the Harrison-Ruzzo-Ullman Model?
What does it deal with?
The Harrison-Ruzzo-Ullman model deals with access rights of subjects and the integrity of those rights
A subject can carry out only a finite set of operations on an object.
Gist – If there is a complex operation required (Steps A-F, for example) and one of those commands is not authorized, then the whole operation fails.
Think transaction integrity
Systems Evaluation / Common Criteria - What international standard refers to it?
ISO/IEC 15408
These are Common Criteria for the evaluation of the security level of a system
What are the seven Evaluation Assurance Levels (EALs) of the Common Criteria?
- EAL1 - Functionally tested
- EAL2 - Structurally tested
- EAL3 - Methodically tested and checked
- EAL4 - Methodically designed, tested and reviewed
- EAL5 - Semiformally designed and tested
- EAL6 - Semiformally verified design and tested
- EAL7 - Formally verified design and tested
What does it mean that a system is “formally verified?”
It means that it’s based on a model that can be mathematically proven
The Common Criteria uses ______ _________ in its evaluation process
Protection profiles (pp)
What are the three sections typically contained in a Protection Profile?
- Security Problem Description
- Security Objectives
- Security Requirements
What CAUTIONS should be kept in mind regarding Assurance Ratings?
- It only means it has the potential of providing the specified level of protection. It must be properly configured to actually provide the desired level of protection
- It is up to the customer to keep the software properly configured at all times.
- The level of protection is a point in time snapshot. The next version of the software could have a lower level of protection
What are the three main parts of the ISO/IEC 15408 Internation Standard that deals with Security properties under the Common Criteria framework?
- ISO/IEC 15408-1 Introduction and General model
- ISO/IEC 15408-2 Security Functional Components
- ISO/IEC 15408-3 Security Assurance Components
Within the context of the Common Criteria, what’s the difference between Certification and Accreditation?
- Certification is the comprehensive technical evaluation of the security components and their compliance for the purpose of accredition
- The goal of the certification process is to ensure that a system, product, or network is right for the customer’s purposes
- Accreditation is the formal acceptance of the adequacy of a system’s overall security and functionality by management.
- Following examination of the certifaction information, Management makes a formal accreditation statement
What’s the difference between Open Systems and Closed Systems?
- Open Systems are based on standards, protocols and interfaces that have published specifications
- Closed systems use an architecture that does not follow industry standards
Name three common models in Cloud Computing.
- SaaS - e.g. Salesforce.com
- PaaS = e.g. Web server
- IaaS - User responsible for configuring the infrastructure
Name four types of parallel computing and briefly describe each.
- Bit level parallelism - multiple bits are processed in parallel
- Instruction level parallelism - Two or more program instructions can be executed simultaneously (requires two or more processors)
- Task level parallelism (breaking down a large problem, such as weather forecasting, into multiple tasks that can be executed in parallel.
- Data parallelism - describes the distribution of data among different nodes that then process it in parallel.
Name the two main database security issues and briefly describe them.
- Aggregation - puts together pieces of information available to get a view of secret information
- Inference - the ability to derive information not explicitly available. It’s the goal of aggregation
What is context based access control and what types of attacks is it designed to prevent?
Context based access control means that the software “understands” what actions should be allowed based on the state and sequence of the request.
What else was the user doing? What did he just attempt to do previously? What hours of the day are these access requests being made, etc.?
What’s the difference between content dependent access control and context dependent access control?
Content dependent access control is simple. Does the user have access to the resource or not?
Context dependent access control must know if the user has access to a resource, what other resources did he just ask to see? What time of day is it. What sequence of events is taking place, etc/
What are four methods of protecting against inference attacks? Briefly describe each of them.
- Context based access control - knowing context of the user’s request before granting access
- Cell suppression - hide specific cells that could be used in inference attacks
- Partitioning the database - Not having all the info in one place to make it tougher to connect the dots
- Noise and Perturbation - intentionally inserting bogus information to misdirect the attacker and confusing them enough so that the actual attack will not be fruitful
What are five ways of keeping web-based systems secure?
- Analyze website architecture and keep it as simple and straightforward as possible
- Assume all user input is potentially dangerous and must be sanitized before being processed
- All output generated by the system should be filtered to ensure private/sensitive data is not being disclosed
- Make sure that the system fails securely
- Web application firewalls – these inspect traffic into/out of the web site to filter malicious content. Added layer of security.
What are some of the issues related to mobile devices in the enterprise?
- False base stations can be created
- Confidential data can be stolen
- Camera and microphone functionality can be used improperly
- Internet sites can be accessed in violation of company policies
- Malicious code can be downloaded
- Encryption can be weak and not end to end
Name six things enterprises can do to improve mobile device security.
- Only allow centrally managed devices to access corporate resources
- Remote policies should be pushed to each device and user profiles should be encrypted with no local options for modification
- Data encryption, idle timeout locks, screen saver lockouts, authentication, and remote wipe should be enabled
- Bluetooth should be locked down, only allowed apps should be installed and social media sites should be restricted
- Endpoint security should expand to mobile endpoints
- 802.1X should be implemented on wireless VoIP clients on mobile devices
What is a cyber-physical system? Give two examples of such systems.
Any system in which computers and phsical devices collaborate via the exchange of inputs and outputs to accomplish a task or objective is a cyber physical system
Examples:
- Embedded systems
- Internet of things
What are the key areas of concern related to the security of Internet of Things devices?
- Authentication (usually it’s poor if it exists at all)
- Encryption - since cryptography requires a lot of processing and memory, in many cases data at rest and in motion can be vulnerable
- Updates - many vendors do not provide functionality to automatically update the software/firmware when patches are available
What does ICS stand for?
Industrial Control Systems
Name three types of Industrial Control Systems and briefly describe them
- Programmable Logic Controllers (PLCs) - are computers designed to control electromechanical processes such as assembly lines, elevators, roller coasters and nuclear centrifuges. Typically communicate via RS-232
- Distributed Control Systems (DCS) - Think hierarchy. At bottom are the devices to be controlled (e.g. hammers). Next level up are the PLC’s. Next level up from PLCs are Distributed Control systems that are supervisory computers that control, for example, an assembly line. DCS typically work within the context of a single plant
- Supervisory Control and Data Acquisition (SCADA) – Essentially DCS across long distances. DCS could control a power plant. A SCADA system would control distribution of generated power across a power grid.
Name the main elements of a SCADA System and briefly describe them.
Remote Terminal Unit (RTU) - endpoint that connects to sensors and actuators
Data Acquisition Servers (DAS) - backends that receive data from RTU’s via telemetry system and perform processing
Human Machine Interface (HMI) - User Station
What is the single greatest threat to ICS security?
The single greatest threat to ICS security is the connectivity of these once-private networks to traditional IT networks
What are the NIST SP 800-82 recommendations related to ICS security?
- Apply risk management process to ICS
- Segment the network to place IDS/IPS at the subnet boundaries
- Disable unneeded ports and services on all ICS devices
- Implement least privilege through the ICS
- Use encryption wherever feasible
- Ensure there is a process for patch management
- Monitor audit trails regularly
What is the average number of software defects per 1000 lines of code
6 defects per 1000 LOC.
What is a maintenance hook and what should be done about them?
Maintenance hooks are commands that only a developer knows that gives him/her easy access to the code
They should be removed before the software goes into production
Are maintenance hooks a thing of the past?
No because:
- Developers are not necessarily security minded
- Enterprises are still running old software that may still have maintenance hooks.
Name three countermeasures to maintenance hooks (aka back doors).
- Use a host base IDS to watch for attackers using back doors to access the system
- Use file system encryption to protect sensitive information
- Implement auditing to detect any type of back door use
What is the key concept behind a Time Of Check / Time of Use attack. Give an example
The main concept is that it may be possible for an attacker to get “in the middle” of the sequence of instructions that are to be performed.
Example, Process 1 may check to see of Bob has access to a non-critical text file. However, before the file is opened, the attacker may change out the non-critical file with the password file and thus Bob would gain access to the password file.
This type of attack is also known as an asynchronous attack.
What is a race condition and give an example of one?
A race condition is when two different processes need to carry out their tasks on one resource and they must be performed in a certain order.
However, if process 2 can be manipulated to happen before process 1, it could generate incorrect results.
Example: If you are supposed to add 3 (process 1) and divide by 15 (process 2) and these processes happen out of order, they would generate the different results.
What are two countermeasures to TOC/TOU attacks?
- Use atomic operations (don’t break up authorization and authorization)
- Apply software locks when carrying out its checking tasks
What is a substitution cypher?
A cipher where each character is replaced with another character
What is the scytale cipher?
When paper (or papyrus) is wrapped around a piece of wood it is readable, but otherwise not.
How did Cesear’s cipher work?
He created cipher text by shifting each character 3 positions forward in the alphabet.
What is a cryptosystem?
A system or product that provides encryption and decryption.
What is a cypher?
An algorithm
What are the four components of a cyptosystem? (at least these 4 are needed)
- Software
- Protocols
- Algorithms
- Keys
What is Kerckhoff’s Principle?
Kerckhoff argued that the only secret in cyptography should be the key. That way lots of people know how it works and can make it better.
Not everyone agrees with this point of view.
What are the factors that determine the strength of a cyptosystem?
- The algorithm
- The secrecy of the key
- The initialization vectors
- How they all work together
What is another term for cryptography strength?
Work factor (i.e. how much work is required to break the system)
What is a one-time pad? What is another name for it?
A one-time pad is a perfect encryption scheme because it is considered unbreakable if implemented properly.
Another name for a one-time pad is the Vernam cipher.
How does the One-Time Pad work?
- Convert the message to binary
- Create a random one-time pad of 1’s and 0’s with as many bits as the plain text message
- To create cyphertext, XOR the plaintext binary wtih the onetime pad, bit by bit
- To decrypt it, also XOR the the ciphertext with the one-time pad
What 5 factors must be in place in order for the one-time pad to be unbreakable?
- The pad must be used only one time
- The pad must be as long as the message
- The pad must be securely distributed
- The pad must be secured at sender and receiver’s sites
- The pad must be made up of truly random values
- What is an example of a running key cipher?
Each side has the same bookshelf of books
1st book:
49th page
6th line
7th column
The four parameters above give you the first character. Then, etc.
What is an example of a concealment cipher?
What is a concealment cipher an example of?
Example – You get a message, but the real message is to only read every third word.
A concealment cipher is an example of steganography.
What does steganography mean?
Steganography is a method of hiding data in another media type so the very existence of the data is concealed.
Example is to conceal a message in a jpeg file.
What are the three components of steganography?
- Carrier - a signal, data stream or file that has hidden information in it
- Stegomedium - the medium in which the information is hidden
- Payload – the information that is to be concealed and transmitted
What is a method of embedding the message into certain types of media?
Least Significant Bit (LSB)
How does a substitution cipher work?
A substitution cipher replaces bits, characters or blocks of characters with different bits, characters, or blocks.
How does a transposition cipher work?
A transposition cipher does not replace the original text with different text, but rather moves the original values around. It rearranges the bits, characters or blocks of characters to hide the original meaning.
What type of cipher is Ceasar’s cipher – Substitution or transposition?
Substitution
What is frequency analysis?
Frequency analysis is looking at how often certain patters recur in order to break the code.
In English, the letter e is the most common, so once you know the cipher text for e you can go on to the next step.
What do Key Derivation Functions do?
Ker Derivation Functions (KDF’s) are used to generate keys that are made up of random values.
What is symmetric cryptography?
It’s where sender and receiver use two instances of the same key
What are the strenghs of Symmetric Key Encryption?
- Much faster than asymmetric systems
- Hard to break if done with a large key size
What are the weaknesses of symmetric key encryption?
- Requires a secure mechanism to deliver keys properly
- Each pair of users needs a unique key, so as the number of individuals increases, so does the number of keys, making key management overwhelming
- Provides confidentiality, but not authenticity or non-repudiation
Give six eamples of symmetric keys
- DES
- Triple-DES
- Blowfish
- International Data Encryption Algorithm (IDEA)
- RC4, RC5, RC6
- Advances Encryption Standard (AES)
What is asymmetric cryptography?
Asymmetric cryptography uses two different keys for encryption and decryption. Both keys are mathematically related.
What is secure message format? What does it ensure?
Secure message format is encrypting the file with the receivers public key. That way only the receiver can decrypt it.
This ensures confidentiality
If authentication is most important, then which key would the sender use for encryption of the message before sending it?
The sender would use his/her private key, because it is known only to the sender and would prove that the message came from the sending
What is meant by open message format?
Open message format means the sender encrypts the message with his/her private key.
Authenticity is ensured, but not confidentiality because anyone with the sender’s public key could decrypt it.
What is another name for Asymmetric Cryptography?
Public Key Cryptography
What are the strengths of Asymmetric key algorithms?
- Better key distribution than symmetric systems
- Better scalability than symmetric systems
- Can provide authentication and non-repudiation
What are the weaknesses of asymmetric key cryptography?
- It’s much slower than symmetric key cryptography
- Mathematically intensive tasks
What are five examples of asymmetric key algorithms?
- Rivest-Shamir-Adelman (RSA)
- Elliptic curve cryptosystem (ECC)
- Diffie-Hellman
- El Gamal
- Digital Signature Algorithm (DSA)
How do block cyphers work?
- Message is divided into fixed-length blocks
- An encryption algorithm is run against each of the blocks
What does confusion in cryptography refer to?
Confusion pertains to making the relationship between the key and resulting ciphertext as complex as possible so the key cannot be uncovered from the ciphertext.
What does diffusion refer to in cryptography?
Diffusion means that a single plaintext bit has influence over several of the ciphertext bits. Thus, changing a plaintext value should change many ciphertext values, not just one.
What is the avalanche effect in cryptography, and what is it similar to?
The avalanche effect means that a small change in the plaintext will make a big change in the ciphertext.
The avalanche effect is basically the same thing as diffusion.
What is a stream cipher?
Whereas a block cipher breaks a message down into blocks of fixed length, a stream cipher treats a message as a stream of bits and performs functions on each bit individually.
Name four characteristics of a strong and effective stream cipher.
- Easy to implement in hardware
- Long periods of no repeating patters within keystream values
- A keystream is not linearly related to a key (if a person figures out the keystream value, they still don’t have the key
- A statistically unbiased keystream (as many zeroes as ones)
Which are considered more secure, block ciphers or streams ciphers?
Block ciphers are considered more secure