Week 9: Side Channels Flashcards

1
Q

What are some possible Side-Channel Attacks?

A

Runtime/Timing.
Power Analysis - SPA.
Temperature.
Sound (then SPA).
EM emanation.
Photonic emissions.

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

How can Simple Power Analysis Attacks be prevented?

A

Add noise - can be filtered/averaged out.
Decrease signal/balance power consumption - costly.
Fix algorithm - small leakages may remain undetected.

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

How to prevent SPA-like attacks on AES?

A

Fix with a constant time xtime operation.
Beware compiler optimizations and CPUs with non-constant time multiplication.
Bigger CPUs use T-Tables - bigger table lookups.

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

What is the intuition behind Side Channel Attacks?

A

Power consumption of ek(x) depends on k.

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

How do differential timing attacks work on AES?

A

T(k, x) = T_xtime(k, x) + T_rest
T(k, x) = sumof(T_xtime,i(k, x)) + const.

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

Describe a SPA-like attack on AES?

A
  1. Send input byte + read MSBit(B0)
  2. Compute hypothetical MSbit for each candidate k:
    - Key space halved
  3. Repeat for new input
  4. Repeat for every key byte
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Describe a differential timing attack on AES?

A
  • For each candidate k:
    • For each x:
      • Compute MSbit
      • If 0, add to T0 -> else, T1
    • Computer averages and (T1_avg - T0_avg)
  • Find max avg.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Explain FLUSH+RELOAD?

A

(Assumes attacker has local, non-privileged code execution)
1. Target L3(LLC) cache (works across cores).
2. Flush cache.
3. Run victim.
4. Measure access times to victim memory.

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

How does an attacker probe address for FLUSH+RELOAD?

A

mmap() function

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