Introduction Flashcards

1
Q

What are the types of side channels?

A

I/O Observable, Software observable, physically observable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is an I/O Observable SC?

A

Using metadata about a program’s response to input/output to leak information

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a software observable SC?

A

obtaining information by executing a program on the target system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a physically observable SC?

A

obtain information by observing the target’s physical properties

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Subtypes of I/O SCs?

A

Timing side channel, termination side channel (subtype of timing)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is and isn’t an I/O SC?

A

Observing when and how large data is sent, NOT the data itself

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Why are I/O SC dangerous?

A

They generally do not require physical access and therefore can be done remotely and without permissions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the main cause of I/O SC?

A

Secret-dependent control flows that create a timing difference

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the main idea behind software observable SC?

A

Programs running on the same computer share resources. By measuring your own performance, you can learn information about other programs’ resource usage

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Name some shared resource side channels

A
  • monitor pages swapped into RAM to tell which part of a program is executing
  • branch pred can leak information about which branches have been taken
  • cache side channels
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Shared resource contention side channels

A

?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is speculative execution?

A

when we are not sure what instructions we should be executing, so we speculatively execute our best guess (branch pred)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe Spectre

A

Speculative execution attack.

  1. victim stores secret in reg
  2. has secret-independent code with branch instr
  3. attack trains predictor to jump to malicious code, reads secret from reg
  4. uses a cache side channel to read secret
  5. victim sees branch is incorrect, flushes pipeline, proceeds
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are some examples of physically observable SCs?

A

Power, sound/acoustic, backscattering, electromagnetic, temperature, photonic/light, fault injections (physically inject fault signal into the system)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Subtypes of power SCs?

A
  • Simple Power Analysis (SPA) - observable by looking at power trace (looking at raw data)
  • Differential Power Analysis (DPA) - observable by looking at statistical transformation of data
  • High-Order Differential Power Analysis (HO-DPA) - DPA but using data from multiple sources (must synchronize by time)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the benefits of EM SCs?

A
  • Can be measured without direct access to device

- hard to mimic EM signals - harder for malware to fake the correct signal