building secure & trustworthy systems

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/88

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

89 Terms

1
New cards

Q: What are side-channel attacks?

Attacks that exploit physical effects (e.g., timing, power use) rather than software flaws.

2
New cards

Q: What is a Prime+Probe attack?

A cache timing attack where an attacker fills a cache set, waits, then checks for eviction.

3
New cards

Q: What makes Prime+Probe possible?

Shared last-level cache (LLC) in multicore systems.

4
New cards

Q: What is a Flush+Flush attack?

A side-channel that detects cache state by measuring flush timing.

5
New cards

Q: How can you mitigate Flush+Flush attacks?

Use cache partitioning, disable timers, or restrict shared memory.

6
New cards

Q: What is speculative execution?

CPU executes paths before conditions resolve; basis for Spectre/Meltdown.

7
New cards

Q: What is Spectre?

Exploits speculative execution (branch prediction) to leak memory content.

8
New cards

Q: What is Meltdown?

Exploits out-of-order execution to read kernel memory from user space.

9
New cards

Q: How can Meltdown be mitigated?

Use kernel page-table isolation (KPTI).

10
New cards

Q: What is a cache line?

The smallest unit of memory that can be stored in a cache.

11
New cards

Q: What is a timing attack?

Leverages the time differences of operations to infer secret data.

12
New cards

Q: What is a power analysis attack?

Measures power usage to extract cryptographic keys.

13
New cards

Q: What is DPA (Differential Power Analysis)?

Uses multiple traces to statistically recover secret keys.

14
New cards

Q: What is SPA (Simple Power Analysis)?

Directly interprets power traces to reveal operations.

15
New cards

Q: What does TCB stand for?

Trusted Computing Base.

16
New cards

Q: What is secure boot?

A boot process that verifies digital signatures of bootloaders and OS.

17
New cards

Q: What is attestation?

Process of proving software integrity to a verifier.

18
New cards

Q: What is a root of trust?

The foundational component in a system that is always trusted.

19
New cards

Q: What is the purpose of a reference monitor?

Mediates all access between subjects and objects.

20
New cards

Q: List the three properties of a reference monitor.

Tamperproof, always invoked, small enough to verify.

21
New cards

Q: What is a hardware enclave?

A secure, isolated memory region (e.g., Intel SGX).

22
New cards

Q: What is code signing?

Cryptographically proving code integrity and origin.

23
New cards

Q: What is the Principle of Least Privilege?

Users/processes should only access what they need.

24
New cards

Q: What is multilevel security?

Enforces policies based on data classification and clearance.

25
New cards

Q: What does the Bell-LaPadula model enforce?

Confidentiality.

26
New cards

Q: Bell-LaPadula: What does 'No Read Up' mean?

Subjects can’t read data at a higher classification.

27
New cards

Q: Bell-LaPadula: What does 'No Write Down' mean?

Subjects can’t write to a lower classification level.

28
New cards

Q: What does the Biba model enforce?

Integrity.

29
New cards

Q: Biba: What does 'No Write Up' mean?

Subjects can’t write to higher integrity levels.

30
New cards

Q: Biba: What does 'No Read Down' mean?

Subjects can’t read from lower integrity levels.

31
New cards

Q: What is the invocation property in Biba?

A subject can invoke another only at its level or lower.

32
New cards

Q: What is a covert channel?

An unauthorized pathway for information flow.

33
New cards

Q: What is memory isolation?

Preventing one process from accessing another's memory.

34
New cards

Q: What is stack canary?

A known value used to detect stack buffer overflows.

35
New cards

Q: What is ASLR?

Address Space Layout Randomization – randomizes memory locations to hinder exploits.

36
New cards

Q: What is the SSDLC?

Secure Software Development Lifecycle – integrates security at all stages.

37
New cards

Q: What are the phases of SSDLC?

Requirements, Design, Implementation, Testing, Deployment.

38
New cards

Q: What is secure by design?

Building systems with security as a core requirement.

39
New cards

Q: What is a buffer overflow?

Writing beyond the buffer’s limit, overwriting memory.

40
New cards

Q: What is input validation?

Ensuring user input meets expected format before processing.

41
New cards

Q: What is threat modeling?

Identifying and analyzing potential threats in a system.

42
New cards

Q: What is the STRIDE model?

Spoofing, Tampering, Repudiation, Information Disclosure, DoS, Elevation of Privilege.

43
New cards

Q: What is spoofing in STRIDE?

Pretending to be someone else (e.g., fake credentials).

44
New cards

Q: What is repudiation?

Ability to deny having performed an action.

45
New cards

Q: What is fuzz testing?

Inputting random or malformed data to uncover bugs.

46
New cards

Q: What is static code analysis?

Examining source code without running it.

47
New cards

Q: What is dynamic code analysis?

Analyzing software while it's running.

48
New cards

Q: What is the OWASP Top 10?

A list of top web application security risks.

49
New cards

Q: What is SQL injection?

Injecting SQL commands via input to manipulate the database.

50
New cards

Q: What is Cross-Site Scripting (XSS)?

Injecting malicious scripts into web pages.

51
New cards

Q: What is CVE?

Common Vulnerabilities and Exposures – public vulnerability database.

52
New cards

Q: What is CWE?

Common Weakness Enumeration – standard for coding errors.

53
New cards

Q: What is CVSS?

Common Vulnerability Scoring System – rates severity.

54
New cards

Q: What is a CVSS base score of 9.0–10.0?

Critical severity.

55
New cards

Q: What is the attack vector (AV) in CVSS?

Describes how an attacker exploits the vulnerability.

56
New cards

Q: What is privilege escalation?

Gaining higher access rights than permitted.

57
New cards

Q: What is a race condition?

System behavior depends on the sequence/timing of inputs.

58
New cards

Q: What is symbolic execution?

Uses symbols instead of values to explore program paths.

59
New cards

Q: What is code injection?

Attacker injects malicious code into an application.

60
New cards

Q: What is the goal of input sanitization?

Remove/encode dangerous input to prevent injection attacks.

61
New cards

Q: What is GDPR?

General Data Protection Regulation – EU privacy law.

62
New cards

Q: What is data minimization?

Collecting only data necessary for a purpose.

63
New cards

Q: What is a privacy impact assessment (PIA)?

An analysis to identify and mitigate privacy risks.

64
New cards

Q: What is informed consent under GDPR?

Clear agreement from users after being informed.

65
New cards

Q: What is collective privacy?

Privacy risks that affect groups, not just individuals.

66
New cards

Q: What is vulnerability disclosure?

Reporting security flaws to the affected party.

67
New cards

Q: What is responsible disclosure?

Coordinated reporting of vulnerabilities to vendors before publicizing.

68
New cards

Q: What is DevSecOps?

Incorporating security practices in DevOps.

69
New cards

Q: What is session management?

Controlling user session lifecycles securely.

70
New cards

Q: What are secure coding guidelines?

Standards to avoid common vulnerabilities during development.

71
New cards

Trusted Computing Base

the set of hardware, software, and firmware components in a computer system

that are critical for maintaining the system's security

72
New cards

What is TCB responsible for, and in respect to what?

Responsible for enforcing the system’s security policies and ensuring that the system behaves as expected with respect to:

o Access control
o Confidentiality
o Integrity
o Availability of data

73
New cards

Key characteristics of a Rich Execution Environment (REE)

Full-featured OS & Applications

Optimised for Performance

Large Attack Surface Software & Hardware

Device Interaction and User Access

No Hardware-Enforced Isolation

Security Vulnerabilities

74
New cards

Key advantages of REE

Flexibility, Performance, User Interaction

75
New cards

Key disadvantages of REE

Security Risks, Lack of Hardware Protection, Susceptibility to Malware

76
New cards

Trusted Execution Environment (TEE)

A secure area within a processor that ensures the integrity and confidentiality of sensitive code and data.

  • Provides an isolated environment, separate from the main operating system

  • Applications can run securely in isolated environment without interference from potentially compromised software or hardware.

77
New cards

TEE key features

Isolation, Confidentiality and Integrity, Secure storage, Secure Execution, Cryptographic operation, Authentication and Attestation, Access control, tamper resistance, minimal attack surface, real-time protection

78
New cards

Flush + flush attack sequence

  • Spy maps shared library

  • Spy flushes shared cache line

  • Victim loads data

  • Spy flushes the data again

  • Spy measures timing in both cases (with & without cache line)

79
New cards

Flush + flush

An attack technique that relies only on the execution time of the flush instruction, which depends on whether data is cached or not! It does not make any memory accesses, contrary to any other cache attack

80
New cards

Prime + probe attack sequence

  • Spy fills cache lines

  • Victim flushes cache lines while running

  • Spy probes data to determine if set is being accessed or not

  • Spy measures timing in both cases (with & without cache line)

81
New cards

Prime + Probe SCA

A cache side-channel attack technique does not require sharing cores or memory between attacker and victim. Does not exploit VMM weaknesses and works on typical server platforms

82
New cards

Evict + Reload SCA

A form of cache side-channel attack where an attacker evicts data from the cache and then reloads it to measure the access time, revealing whether a victim's data was accessed.

83
New cards

Rowhammer SCA

Is a circuit-level vulnerability. A type of cache side-channel attack that exploits DRAM’s physical properties, allowing an attacker to flip bits in adjacent memory rows through repeated access, potentially compromising security.

84
New cards

Static RAM

SRAM retains bit value as long as power is on without any refresh requirement. Faster, Lower Density, Higher cost

85
New cards

Dynamic RAM

  • DRAM requires periodic refresh to retain stored value

  • Capacitors charged to store data

  • Higher density, lowered cost

  • Susceptible to “Cold boot attacks” exploiting capacitor discharge time to read sensitive data from physical memory, as well as Row hammering attacks

  • DRAM cells are grouped into rows

  • All cells in a row are refreshed together

86
New cards

Spectre mechanism

Miss-trains Branch Prediction to convince CPU to speculatively execute code that should not be executed during correct program execution

87
New cards

Flush + reload SCA

Relies on shared memory (LLC), and high-resolution timers to infer access patterns. The victim and attacker must share at least 1 page of data physically. When the attacker uses the clflush command with an address pointing to this shared data, it's completely flushed from the cache hierarchy. Because the data is shared, the attacker is allowed to hit on this data in cache. So, the attacker repeatedly flushes shared data with the victim, then allows/waits for the victim to run, then reloads the data.

88
New cards

Scoring of CVSS consists of…

Access Vector: N(network) A(adjacent network) L(local) P(physical)

Attack Complexity: LH

Privileges Required: N(none) L(low) H(high)

User Interaction: N(none) R(required ie clicking a link)

Scope: U(unchanged, only affects 1 component/system) C(changed, many affected)

Confidentiality: NHL

Integrity: NHL

Availability: NHL

89
New cards