Efficient Timing Channel Protec3on for On-Chip Networks - - PowerPoint PPT Presentation

efficient timing channel protec3on for on chip networks
SMART_READER_LITE
LIVE PREVIEW

Efficient Timing Channel Protec3on for On-Chip Networks - - PowerPoint PPT Presentation

Title Efficient Timing Channel Protec3on for On-Chip Networks Efficient Timing Channel Protec3on for On-Chip Networks Yao Wang and G. Edward Suh


slide-1
SLIDE 1

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Efficient ¡Timing ¡Channel ¡Protec3on ¡ for ¡On-­‑Chip ¡Networks ¡

Yao ¡Wang ¡and ¡G. ¡Edward ¡Suh ¡ Cornell ¡University ¡

slide-2
SLIDE 2

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

  • Future ¡large-­‑scale ¡mul3-­‑cores ¡will ¡be ¡shared ¡among ¡

mul3ple ¡applica3ons ¡/ ¡virtual ¡machines ¡

On-­‑Chip ¡Networks ¡are ¡Shared ¡Resources ¡

NOCS ¡2012 ¡ 2/21 ¡

Virtual ¡Machine ¡A ¡ Virtual ¡Machine ¡B ¡

slide-3
SLIDE 3

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Problem: ¡Timing ¡Channels ¡

  • Shared ¡NoC ¡causes ¡interference ¡

NOCS ¡2012 ¡ 3/21 ¡

  • Network ¡interference ¡introduces ¡3ming ¡channels ¡
  • Side ¡channel ¡
  • Covert ¡channel ¡
  • High ¡assurance ¡systems ¡requires ¡security ¡guarantee ¡
  • Example: ¡Corporate ¡virtual ¡machines ¡on ¡the ¡cloud ¡
slide-4
SLIDE 4

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

RSA ¡Example ¡

  • RSA ¡: ¡a ¡public ¡key ¡cryptographic ¡algorithm ¡
  • Prone ¡to ¡3ming ¡channel ¡aVacks ¡

NOCS ¡2012 ¡ 4/21 ¡

Core ¡0 ¡ MC ¡0 ¡ Core ¡1 ¡ MC ¡1 ¡ Core ¡2 ¡ MC ¡2 ¡

Crossbar ¡ RSA ¡ AVacker ¡ key: ¡0110… ¡

slide-5
SLIDE 5

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

RSA ¡Example ¡

  • RSA ¡: ¡a ¡public ¡key ¡cryptographic ¡algorithm ¡
  • Prone ¡to ¡3ming ¡channel ¡aVacks ¡

NOCS ¡2012 ¡ 5/21 ¡

0.2 0.4 0.6 0.8 1 220 230 240 250 260 270 280

Fraction of bit ’1’ in RSA key Time

slide-6
SLIDE 6

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Outline ¡

  • Objec3ve: ¡Eliminate ¡3ming ¡channels ¡through ¡the ¡

shared ¡on-­‑chip ¡networks ¡

  • Completely ¡eliminate ¡informa3on ¡leakage ¡
  • Low ¡performance ¡overhead ¡
  • Rest ¡of ¡the ¡talk ¡
  • Poten3al ¡approaches ¡
  • Our ¡solu3on ¡ ¡
  • Evalua3on ¡
  • Related ¡work ¡
  • Conclusion ¡

NOCS ¡2012 ¡ 6/21 ¡

slide-7
SLIDE 7

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Use ¡Quality-­‑of-­‑Service? ¡

  • QoS ¡techniques ¡provide ¡performance ¡isola3on ¡to ¡different ¡

network ¡flows ¡

  • QoS ¡techniques ¡are ¡not ¡enough ¡for ¡security ¡
  • A ¡flow ¡can ¡use ¡bandwidth ¡beyond ¡its ¡alloca3on ¡
  • Bandwidth ¡u3liza3on ¡reveals ¡the ¡flow ¡demand ¡

NOCS ¡2012 ¡ 7/21 ¡

Flow ¡A ¡ Demand ¡ Flow ¡B ¡ Demand ¡ Flow ¡A ¡ BW ¡u3liza3on ¡ 100% ¡ 100% ¡ 100% ¡ 0% ¡

1 ¡ 2 ¡

A ¡ B ¡

Bandwidth ¡alloca3on ¡ ¡ ¡ ¡A: ¡50% ¡ ¡ ¡ ¡B: ¡50% ¡

50% ¡ 100% ¡

slide-8
SLIDE 8

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Sta3c ¡Par33oning ¡

  • To ¡eliminate ¡3ming ¡channels, ¡resource ¡alloca3on ¡cannot ¡

depend ¡on ¡run-­‑3me ¡demands ¡

  • Sta3c ¡par33oning ¡
  • Spa3al ¡Network ¡Par33oning ¡(SNP) ¡
  • Temporal ¡Network ¡Par33oning ¡(TNP) ¡
  • Completely ¡eliminate ¡the ¡3ming ¡channels ¡
  • High ¡performance ¡overhead ¡

NOCS ¡2012 ¡ 8/21 ¡

SNP ¡ TNP ¡ Cycle ¡0 ¡ Cycle ¡1 ¡

… ¡

VM ¡A ¡ VM ¡A ¡ VM ¡B ¡ VM ¡B ¡

slide-9
SLIDE 9

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

One-­‑Way ¡Informa3on ¡Leak ¡Protec3on ¡

  • Usually ¡only ¡one-­‑way ¡informa3on ¡protec3on ¡is ¡

needed ¡

  • Mul3-­‑level ¡security ¡(MLS) ¡model ¡
  • One-­‑way ¡protec3on ¡is ¡the ¡key ¡for ¡efficient ¡3ming ¡

channel ¡protec3on ¡

NOCS ¡2012 ¡ 9/21 ¡

Personal ¡APP ¡ (Music ¡Player) ¡ Business ¡App ¡ (Bank ¡Management) ¡ Regular ¡VM ¡ Corporate ¡VM ¡ Low-­‑Security ¡Domain ¡ High-­‑Security ¡Domain ¡

Informa3on ¡ ¡ flow ¡ PC ¡ Cloud ¡Compu3ng ¡ In ¡general ¡

slide-10
SLIDE 10

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Timing ¡Channel ¡through ¡NoC ¡

NOCS ¡2012 ¡ 10/21 ¡

HS ¡demand ¡

0 ¡ 1 ¡ 1 ¡

LS ¡throughput ¡

HS: ¡High-­‑Security ¡Domain ¡ LS: ¡Low-­‑Security ¡Domain ¡

HS ¡-­‑-­‑-­‑> ¡LS ¡

slide-11
SLIDE 11

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

  • Reversed ¡Priority ¡
  • Assign ¡high ¡priority ¡to ¡low-­‑security ¡domain ¡
  • The ¡behavior ¡(throughput, ¡latency) ¡of ¡low-­‑security ¡domain ¡is ¡

not ¡affected ¡by ¡high-­‑security ¡domain ¡

  • Sta3c ¡Limits ¡
  • Low-­‑security ¡domain ¡could ¡ini3alize ¡Denial-­‑of-­‑Service ¡(DoS) ¡

aVack ¡

  • Sta3c ¡limit ¡controls ¡the ¡amount ¡of ¡traffic ¡that ¡low-­‑security ¡

domain ¡can ¡send ¡during ¡a ¡certain ¡interval ¡ ¡

Reversed ¡Priority ¡with ¡Sta3c ¡Limits ¡(RPSL) ¡

NOCS ¡2012 ¡ 11/21 ¡

slide-12
SLIDE 12

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Implementa3on: ¡Avoid ¡Interference ¡

  • Priority-­‑based ¡separable ¡allocator ¡
  • Input ¡arbiter ¡& ¡Output ¡arbiter ¡
  • Sta3c ¡virtual ¡channel ¡alloca3on ¡
  • Avoid ¡head-­‑of-­‑line ¡blocking ¡

NOCS ¡2012 ¡ 12/21 ¡

Router ¡

Virtual ¡Channels ¡

Input ¡link ¡

0 ¡ 1 ¡ 2 ¡ 3 ¡

Low-­‑security ¡Domain ¡ High-­‑security ¡Domain ¡

slide-13
SLIDE 13

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

  • Sta3c ¡limit ¡control ¡mechanism ¡
  • Counter ¡& ¡Control ¡logic ¡
  • Apply ¡to ¡both ¡input ¡and ¡output ¡arbiter ¡

Implementa3on: ¡Avoid ¡DoS ¡

NOCS ¡2012 ¡ 13/21 ¡

Priority-­‑ based ¡ Arbiter ¡ Counter ¡ Requests ¡ Winning ¡ Request ¡ Sta3c ¡limit ¡ Control ¡

Low-­‑security ¡Domain ¡ High-­‑security ¡Domain ¡

Input ¡Arbiter ¡

slide-14
SLIDE 14

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Benefits ¡of ¡One-­‑Way ¡Protec3on ¡

NOCS ¡2012 ¡ 14/21 ¡

Time ¡ BW ¡ U3liza3on ¡ Total ¡BW ¡ HS ¡ LS ¡ Round-­‑robin ¡Allocator ¡

LS ¡ HS ¡

Time ¡ BW ¡ U3liza3on ¡ Total ¡BW ¡ HS ¡ LS ¡ Temporal ¡Network ¡Par33oning ¡

LS ¡ HS ¡

Time ¡ BW ¡ U3liza3on ¡ Total ¡BW ¡ HS ¡ LS ¡

LS ¡ HS ¡

RPSL ¡

1 ¡ 2 ¡

LS ¡ HS ¡

slide-15
SLIDE 15

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Experimental ¡Setup ¡

  • Goals ¡of ¡experiments ¡
  • Timing ¡channel ¡protec3on ¡
  • DoS ¡protec3on ¡
  • Performance ¡overhead ¡ ¡
  • Darsim: ¡cycle-­‑level ¡NoC ¡simulator ¡
  • Comparison ¡of ¡three ¡schemes ¡
  • Round-­‑robin ¡allocator ¡(ISLIP) ¡
  • Temporal ¡Network ¡Par33oning ¡(TNP) ¡
  • Reversed ¡Priority ¡with ¡Sta3c ¡Limits ¡(RPSL) ¡

NOCS ¡2012 ¡ 15/21 ¡

slide-16
SLIDE 16

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Timing ¡Channel: ¡No ¡Protec3on ¡ ¡

  • Simple ¡network ¡
  • Round-­‑robin ¡allocator ¡

NOCS ¡2012 ¡ 16/21 ¡

1 ¡ 2 ¡ 3 ¡ 4 ¡

Low-­‑security ¡Domain ¡ High-­‑security ¡Domain ¡

HS ¡ LS ¡

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

HS offered BW (flit/cycle) LS observed BW (flit/cycle)

1.0 flit/cycle 0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

LS offered BW (flit/cycle) HS observed BW (flit/cycle)

1.0 flit/cycle

slide-17
SLIDE 17

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Timing ¡Channel: ¡Two-­‑way ¡Protec3on ¡

  • Simple ¡network ¡
  • Temporal ¡Network ¡Par33oning ¡

NOCS ¡2012 ¡ 17/21 ¡

1 ¡ 2 ¡ 3 ¡ 4 ¡

Low-­‑security ¡Domain ¡ High-­‑security ¡Domain ¡

HS ¡ LS ¡

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

HS offered BW (flit/cycle) LS observed BW (flit/cycle)

1.0 flit/cycle 1.0 flit/cycle 1.0 flit/cycle 0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

LS offered BW (flit/cycle) HS observed BW (flit/cycle)

1.0 flit/cycle

0.4/1.0 ¡

slide-18
SLIDE 18

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Timing ¡Channel: ¡One-­‑way ¡Protec3on ¡

  • Simple ¡network ¡
  • Reversed ¡Priority ¡with ¡Sta3c ¡Limits ¡(Sta3c ¡limit ¡= ¡0.8) ¡

NOCS ¡2012 ¡ 18/21 ¡

1 ¡ 2 ¡ 3 ¡ 4 ¡

Low-­‑security ¡Domain ¡ High-­‑security ¡Domain ¡

HS ¡ LS ¡

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

HS offered BW (flit/cycle) LS observed BW (flit/cycle)

1.0 flit/cycle 0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

LS offered BW (flit/cycle) HS observed BW (flit/cycle)

1.0 flit/cycle

1.0/1.0 ¡

slide-19
SLIDE 19

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Performance ¡

  • Applica3ons ¡show ¡bursty ¡traffic ¡
  • RPSL ¡is ¡efficient ¡for ¡bursty ¡traffic ¡

NOCS ¡2012 ¡ 19/21 ¡

20 40 60 80 100 500 1000 1500 2000 2500 3000

Timeline/ (million cycles) Injected flits every million cycles

FFT OCEAN

HIGH ¡ LOW ¡

slide-20
SLIDE 20

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Related ¡Work ¡

  • Side-­‑channel ¡protec3on ¡
  • Shared ¡resources ¡are ¡prone ¡to ¡side-­‑channel ¡aVacks, ¡e.g. ¡shared ¡

caches, ¡branch ¡predic3on ¡

  • Cannot ¡be ¡applied ¡to ¡NoC ¡
  • QoS ¡schemes ¡
  • Allows ¡resource ¡usage ¡beyond ¡alloca3on ¡
  • Insufficient ¡to ¡prevent ¡3ming ¡channel ¡aVacks ¡
  • Composability ¡
  • Remove ¡interference ¡between ¡applica3ons ¡for ¡fast ¡integra3on ¡
  • Require ¡bi-­‑direc3onal ¡non-­‑interference, ¡incur ¡high ¡performance ¡
  • verhead ¡

NOCS ¡2012 ¡ 20/21 ¡

slide-21
SLIDE 21

Title ¡ Efficient ¡Timing ¡Channel ¡Protec3on ¡for ¡On-­‑Chip ¡Networks ¡

Conclusion ¡

  • Shared ¡on-­‑chip ¡networks ¡introduce ¡3ming ¡channels ¡
  • Prevent ¡effec3ve ¡sharing ¡of ¡large-­‑scale ¡NoC ¡in ¡high ¡assurance ¡

systems ¡

  • One-­‑way ¡3ming ¡channel ¡protec3on ¡is ¡sufficient ¡in ¡

many ¡situa3ons ¡

  • RPSL ¡provides ¡efficient ¡one-­‑way ¡3ming ¡channel ¡

protec3on ¡

  • Incurs ¡low ¡performance ¡overhead ¡

NOCS ¡2012 ¡ 21/21 ¡