Podcast
Questions and Answers
What type of memory is RAM?
What type of memory is RAM?
- Persistent memory
- Secondary memory
- Volatile memory (correct)
- Non-volatile memory
ROM is considered volatile memory.
ROM is considered volatile memory.
False (B)
What is the function of the MMU in relation to virtual and physical addresses?
What is the function of the MMU in relation to virtual and physical addresses?
The MMU translates a range of virtual addresses to a range of physical addresses.
The data stored in _____ memory is lost when the device is powered off.
The data stored in _____ memory is lost when the device is powered off.
Match the memory type with its characteristic:
Match the memory type with its characteristic:
Which of the following statements is true regarding the TLB?
Which of the following statements is true regarding the TLB?
Persistent memory is automatically cleared when the power supply is interrupted.
Persistent memory is automatically cleared when the power supply is interrupted.
What differentiates volatile memory from persistent memory?
What differentiates volatile memory from persistent memory?
What is the main purpose of IOMMU in relation to RAM?
What is the main purpose of IOMMU in relation to RAM?
What type of attack allows an attacker to extract firmware from ROM hardware?
What type of attack allows an attacker to extract firmware from ROM hardware?
Buffer overflow occurs when software writes data within the boundaries of the buffer.
Buffer overflow occurs when software writes data within the boundaries of the buffer.
An attacker can execute a side-channel attack on SRAM by analyzing the power consumption.
An attacker can execute a side-channel attack on SRAM by analyzing the power consumption.
What is Return-Oriented Programming?
What is Return-Oriented Programming?
The mechanism extit{ASLR} is used to separate parts of the program across the ______ to increase security.
The mechanism extit{ASLR} is used to separate parts of the program across the ______ to increase security.
What is the main vulnerability in the discussed scenarios?
What is the main vulnerability in the discussed scenarios?
Match the following concepts with their descriptions:
Match the following concepts with their descriptions:
The best protection mechanism is to not leave the hardware __________ at any moment.
The best protection mechanism is to not leave the hardware __________ at any moment.
Which of these statements is true regarding the NON-executable stack protection?
Which of these statements is true regarding the NON-executable stack protection?
Match the memory type with its associated attack method:
Match the memory type with its associated attack method:
Why is full disk encryption not a complete solution for protecting data when a system is on?
Why is full disk encryption not a complete solution for protecting data when a system is on?
Return-Oriented Programming requires attackers to write new malicious code into memory.
Return-Oriented Programming requires attackers to write new malicious code into memory.
How does ASLR increase security against attacks?
How does ASLR increase security against attacks?
ROM is less important to protect than SRAM because it does not contain sensitive data.
ROM is less important to protect than SRAM because it does not contain sensitive data.
What can happen if DMA interacts with RAM without the need for virtual memory?
What can happen if DMA interacts with RAM without the need for virtual memory?
What is the primary function of a DMA (Direct Memory Access) controller?
What is the primary function of a DMA (Direct Memory Access) controller?
The CPU accesses ROM through virtual addresses exclusively.
The CPU accesses ROM through virtual addresses exclusively.
What type of memory does the CPU use to access data through virtual addresses?
What type of memory does the CPU use to access data through virtual addresses?
Embedded systems typically use ROM for storing data because it contains _____ programs.
Embedded systems typically use ROM for storing data because it contains _____ programs.
Match the following memory types with their characteristics:
Match the following memory types with their characteristics:
What happens if the TLB does not contain a virtual address?
What happens if the TLB does not contain a virtual address?
A cold boot attack involves the attacker accessing the device after it has been powered down.
A cold boot attack involves the attacker accessing the device after it has been powered down.
What is one common method an attacker might use to access RAM data?
What is one common method an attacker might use to access RAM data?
The CPU accesses _____ memory via both physical and virtual addresses.
The CPU accesses _____ memory via both physical and virtual addresses.
What is the main risk associated with an attacker having physical access to a device?
What is the main risk associated with an attacker having physical access to a device?
How does the IOMMU ensure secure and isolated memory access in a virtualized environment, and what role does PCI passthrough play in this process?
How does the IOMMU ensure secure and isolated memory access in a virtualized environment, and what role does PCI passthrough play in this process?
What specific mechanisms does the IOMMU use to prevent DMA attacks, and how does its functionality differ from the CPU's MMU?
What specific mechanisms does the IOMMU use to prevent DMA attacks, and how does its functionality differ from the CPU's MMU?
Flashcards
Persistent Memory
Persistent Memory
A type of memory that retains data even after the power is turned off. Examples include ROM (Read-Only Memory), which stores firmware, and flash memory, used in USB drives and SSDs.
Volatile Memory
Volatile Memory
A type of memory that loses its data when the power is turned off. Examples include RAM (Random Access Memory) and SRAM (Static RAM).
CPU Cache
CPU Cache
A form of memory used by the CPU to quickly access frequently used data. This memory is much faster than main memory (RAM) but smaller. It usually stores instructions and data from the most recently used parts of the program.
RAM (Random Access Memory)
RAM (Random Access Memory)
Signup and view all the flashcards
SRAM (Static RAM)
SRAM (Static RAM)
Signup and view all the flashcards
Virtual Address
Virtual Address
Signup and view all the flashcards
Physical Address
Physical Address
Signup and view all the flashcards
Memory Management Unit (MMU)
Memory Management Unit (MMU)
Signup and view all the flashcards
What is DMA?
What is DMA?
Signup and view all the flashcards
How does the CPU access data in RAM?
How does the CPU access data in RAM?
Signup and view all the flashcards
Why are embedded systems suitable for using ROM?
Why are embedded systems suitable for using ROM?
Signup and view all the flashcards
How does the CPU's cache access SRAM?
How does the CPU's cache access SRAM?
Signup and view all the flashcards
What is the TLB?
What is the TLB?
Signup and view all the flashcards
What happens if a virtual address is not found in the TLB?
What happens if a virtual address is not found in the TLB?
Signup and view all the flashcards
What is a page fault?
What is a page fault?
Signup and view all the flashcards
What is a cold boot attack?
What is a cold boot attack?
Signup and view all the flashcards
What type of attack is a cold boot attack?
What type of attack is a cold boot attack?
Signup and view all the flashcards
What is an attacker model for RAM?
What is an attacker model for RAM?
Signup and view all the flashcards
ROM Firmware Extraction
ROM Firmware Extraction
Signup and view all the flashcards
SRAM Side Channel Attack
SRAM Side Channel Attack
Signup and view all the flashcards
Full Disk Encryption Limitation
Full Disk Encryption Limitation
Signup and view all the flashcards
DMA Injection Attack
DMA Injection Attack
Signup and view all the flashcards
Memory Scanning Attack
Memory Scanning Attack
Signup and view all the flashcards
Attacker Access to Memory
Attacker Access to Memory
Signup and view all the flashcards
ROM Firmware Modification
ROM Firmware Modification
Signup and view all the flashcards
Hardware Unattended Vulnerability
Hardware Unattended Vulnerability
Signup and view all the flashcards
IONMU (Input/Output Memory Management Unit)
IONMU (Input/Output Memory Management Unit)
Signup and view all the flashcards
Buffer Overflow
Buffer Overflow
Signup and view all the flashcards
Non-executable Stack Protection
Non-executable Stack Protection
Signup and view all the flashcards
Return-Oriented Programming (ROP)
Return-Oriented Programming (ROP)
Signup and view all the flashcards
Address Space Layout Randomization (ASLR)
Address Space Layout Randomization (ASLR)
Signup and view all the flashcards
Gadget
Gadget
Signup and view all the flashcards
Study Notes
Memory Types
- Three main memory types in modern computers are RAM, ROM, and SRAM.
- RAM (random access memory) is volatile memory, meaning its data is lost when power is off.
- ROM (read-only memory) is persistent memory, retaining data even without power.
- SRAM (static RAM) is a type of RAM but also volatile.
Volatile vs. Persistent Memory
- Volatile memory loses data when power is removed.
- Persistent memory retains data even when power is off.
- RAM is volatile; data is erased when the computer is turned off.
- ROM is persistent; data remains saved even without power.
- SRAM is volatile; data disappears when the power supply is disconnected.
Virtual vs. Physical Addresses
- Virtual addresses are translated to physical addresses by the Memory Management Unit (MMU).
- Each process has its own page table to translate virtual addresses to unique locations in physical memory.
- A Translation Lookaside Buffer (TLB) speeds up this translation process.
- Processes are prevented from accessing each other's memory by using distinct virtual address spaces and TLB entries.
- A CPU needs virtual addresses to access data stored in RAM for computations.
- DMA (Direct Memory Access) devices use physical addresses to transfer data directly to/from peripherals without CPU intervention.
Memory Access Mechanisms
- Components access RAM through physical addresses (DMA) or virtual addresses (CPU).
- Components access ROM through physical addresses (embedded systems) or virtual addresses, which are rarely used (CPU).
- Components access SRAM through physical addresses (cache) or virtual addresses (CPU).
Execution of an Executable File
- An executable file's instructions are loaded into RAM.
- The CPU fetches the instructions and executes them.
- The CPU uses virtual addresses to access memory locations.
- Page faults occur when virtual addresses need data not currently in RAM; the OS loads the necessary data from storage.
- Data from the hard disk (storage) is loaded into RAM.
Attacker Models and Memory Attacks
- RAM: Attacker can access the device physically, steal data, or perform a cold boot attack.
- ROM: Attacker physically accesses ROM hardware to extract firmware (confidentiality attack).
- SRAM: Attacker can analyze the power consumption of SRAM to determine cache contents via side-channel attack.
Protection Mechanisms for Memory
- Non-executable Stack Protection: Protects against buffer overflows.
- Address Space Layout Randomization (ASLR) makes Return-Oriented Programming (ROP) attacks more complex. This technique separates code/data mappings randomly, preventing attackers from predicting where gadgets will be located.
Key Memory Security Considerations
- ROM is extremely important to secure, as it contains crucial firmware that (ideally) should not be modified.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.