PHY ¡Covert ¡Channels: ¡ Can ¡you ¡see ¡the ¡Idles? ¡
Ki ¡Suh ¡Lee ¡ Cornell ¡University ¡ ¡
Joint ¡work ¡with ¡Han ¡Wang, ¡and ¡Hakim ¡Weatherspoon ¡
¡
1 ¡
첩 자
Chupja ¡
PHY Covert Channels: Can you see the Idles? Ki - - PowerPoint PPT Presentation
PHY Covert Channels: Can you see the Idles? Ki Suh Lee Chupja Cornell University Joint work with Han Wang, and Hakim Weatherspoon 1
PHY ¡Covert ¡Channels: ¡ Can ¡you ¡see ¡the ¡Idles? ¡
Ki ¡Suh ¡Lee ¡ Cornell ¡University ¡ ¡
Joint ¡work ¡with ¡Han ¡Wang, ¡and ¡Hakim ¡Weatherspoon ¡
¡
1 ¡
Chupja ¡
첩자 (chupja) ¡
2 ¡
Network ¡Covert ¡Channels ¡
– Through ¡communicaJon ¡not ¡intended ¡for ¡data ¡transfer ¡
¡
3 ¡
Network ¡Covert ¡Channels ¡
– Through ¡communicaJon ¡not ¡intended ¡for ¡data ¡transfer ¡ – Using ¡legiJmate ¡packets ¡(Overt ¡channel) ¡
4 ¡
Network ¡Covert ¡Channels ¡
– Through ¡communicaJon ¡not ¡intended ¡for ¡data ¡transfer ¡ – Using ¡legiJmate ¡packets ¡(Overt ¡channel) ¡
5 ¡
Goals ¡of ¡Covert ¡Channels ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡in ¡a ¡second ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡without ¡loss ¡/ ¡error ¡
– How ¡well ¡communicaJon ¡is ¡hidden ¡
6 ¡
Goals ¡of ¡Covert ¡Channels ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡in ¡a ¡second ¡ – 10~100s ¡bits ¡per ¡second ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡without ¡loss ¡/ ¡error ¡ – Cabuk’04, ¡Shah’06 ¡
– How ¡well ¡communicaJon ¡is ¡hidden ¡ – Liu’09, ¡Liu’10 ¡
7 ¡
ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡
8 ¡
Current ¡network ¡covert ¡channels ¡ ¡ are ¡implemented ¡in ¡L3~4 ¡(TCP/IP) ¡layers ¡ ¡ and ¡are ¡extremely ¡slow. ¡
Chupja: ¡PHY ¡Covert ¡Channel ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡in ¡a ¡second ¡ – 10~100s ¡bits ¡per ¡second ¡
– How ¡much ¡informaJon ¡can ¡be ¡delivered ¡without ¡loss ¡/ ¡error ¡ – Bit ¡Error ¡Rate ¡< ¡10% ¡
– How ¡well ¡communicaJon ¡is ¡hidden ¡ – Invisible ¡to ¡detecJon ¡socware ¡
9 ¡
ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡ Physical ¡
10 ¡
Chupja ¡is ¡a ¡network ¡covert ¡channel ¡ ¡ which ¡is ¡faster ¡than ¡priori ¡art. ¡ ¡ ¡ It ¡is ¡implemented ¡in ¡L1 ¡(PHY), ¡ ¡ robust ¡and ¡virtually ¡invisible ¡to ¡socware. ¡
Outline ¡
11 ¡
Outline ¡
– Threat ¡Model ¡ – 10 ¡Gigabit ¡Ethernet ¡
12 ¡
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡
Threat ¡Model ¡
13 ¡
ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡ ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡ ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡ ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡ Sender ¡ Receiver ¡ Passive ¡ Adversary ¡ Commodity ¡Server ¡ Commodity ¡NIC ¡
10 ¡Gigabit ¡Ethernet ¡
– Each ¡bit ¡is ¡~100 ¡picosecond ¡wide ¡ – 7~8 ¡bit ¡special ¡character ¡in ¡the ¡physical ¡layer ¡ ¡ – 700~800 ¡picoseconds ¡to ¡transmit ¡ – Only ¡in ¡PHY ¡
14 ¡
Packet ¡i ¡ Packet ¡i+1 ¡ Packet ¡i+2 ¡ ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡
– Same ¡packet ¡size, ¡ ¡ – Same ¡IPD ¡(IPG), ¡ ¡ – Same ¡desJnaJon ¡
¡
Terminology ¡
15 ¡
IPG ¡ Packet ¡i ¡ Packet ¡i+1 ¡ IPD ¡ Packet ¡i ¡ Packet ¡i+1 ¡ Packet ¡i+2 ¡
Chupja: ¡Design ¡
16 ¡
Packet ¡i ¡ Packet ¡i+1 ¡ Packet ¡i+2 ¡ G ¡-‑ ¡Ɛ ¡ G ¡+ ¡Ɛ ¡ D ¡-‑ ¡Ɛ ¡ D ¡+ ¡Ɛ ¡ ‘0’ ¡ ‘1’ ¡ Packet ¡i ¡ Packet ¡i+2 ¡ ¡ ¡Gi ¡ Gi+1 ¡ Di ¡ Di+1 ¡ ‘0’ ¡ ‘1’ ¡ Packet ¡i+1 ¡ Packet ¡i ¡ Packet ¡i+2 ¡ G ¡ G ¡ D ¡ D ¡ IPG ¡ IPG ¡ Packet ¡i+1 ¡
Chupja: ¡Design ¡
– Encoding ¡‘1’: ¡Gi ¡= ¡G ¡+ ¡ε ¡ – Encoding ¡‘0’: ¡Gi ¡= ¡G ¡-‑ ¡ε ¡
17 ¡
Packet ¡i ¡ Packet ¡i+1 ¡ Packet ¡i+2 ¡ G ¡-‑ ¡Ɛ ¡ G ¡+ ¡Ɛ ¡ D ¡-‑ ¡Ɛ ¡ D ¡+ ¡Ɛ ¡ ‘0’ ¡ ‘1’ ¡
ImplementaJon ¡
– Socware-‑defined ¡Network ¡Interface ¡Card ¡ – Allows ¡control ¡and ¡access ¡every ¡bit ¡of ¡PHY ¡
18 ¡
ApplicaJon ¡ Transport ¡ Network ¡ Data ¡Link ¡ Physical ¡
Outline ¡
– Bandwidth ¡ – Robustness ¡ – Undetectability ¡
19 ¡
EvaluaJon ¡
– Why ¡is ¡Chupja ¡robust? ¡
20 ¡
What ¡is ¡the ¡bandwidth ¡of ¡Chupja? ¡
21 ¡
EvaluaJon: ¡Bandwidth ¡
22 ¡ 1.E+02 ¡ 1.E+03 ¡ 1.E+04 ¡ 1.E+05 ¡ 1.E+06 ¡ 1.E+07 ¡ 1.E+08 ¡ 0.01 ¡ 0.1 ¡ 0.5 ¡ 1 ¡ 3 ¡ 6 ¡ 9 ¡ Covert ¡Channel ¡Capacity ¡(bps) ¡ Overt ¡Channel ¡Throughput ¡(Gbps) ¡ 64B ¡ 512B ¡ 1024B ¡ 1518B ¡
1518B ¡1Gbps ¡ 81kbps ¡
How ¡robust ¡is ¡Chupja? ¡ ¡
23 ¡
¡ ¡ ¡ ¡
Boston ¡ Cornell ¡(Ithaca) ¡ Cornell ¡(NYC) ¡ NLR ¡(NYC) ¡ Chicaco ¡ Cleveland ¡
Sender ¡ Receiver ¡
¡ ¡ ¡ ¡
SW1 ¡ SW1 ¡ SW2 ¡ SW2 ¡ SW3 ¡ SW4 ¡
Sender ¡ Receiver ¡
EvaluaJon ¡Setup ¡
– Six ¡commercial ¡switches ¡ – Average ¡RTT: ¡0.154 ¡ms ¡
¡
– Nine ¡rouJng ¡hops ¡ – Average ¡RTT: ¡67.6ms ¡ – 1~2 ¡Gbps ¡External ¡Traffic ¡
24 ¡
EvaluaJon: ¡Robustness ¡
25 ¡
? ¡
Sender ¡ Receiver ¡
0 ¡ 0.1 ¡ 0.2 ¡ 0.3 ¡ 0.4 ¡ 0.5 ¡ 0.6 ¡ 16 ¡ 32 ¡ 64 ¡ 128 ¡ 256 ¡ 512 ¡ 1024 ¡ 2048 ¡ 4096 ¡ BER ¡ Ɛ ¡(/I/s) ¡ Small ¡No ¡Ext. ¡ Small ¡Ext ¡3.6G ¡ NLR ¡
7.7% ¡ 2.8% ¡ 8.9% ¡
? ¡
EvaluaJon: ¡Robustness ¡
26 ¡
Sender ¡ Receiver ¡
0 ¡ 0.1 ¡ 0.2 ¡ 0.3 ¡ 0.4 ¡ 0.5 ¡ 0.6 ¡ 16 ¡ 32 ¡ 64 ¡ 128 ¡ 256 ¡ 512 ¡ 1024 ¡ 2048 ¡ 4096 ¡ BER ¡ Ɛ ¡(/I/s) ¡ Small ¡No ¡Ext. ¡ Small ¡Ext ¡3.6G ¡ NLR ¡
7.7% ¡ 2.8% ¡ 8.9% ¡
Why ¡is ¡Chupja ¡robust? ¡
27 ¡
EvaluaJon: ¡Why? ¡
– Over ¡mul=ple ¡hops ¡when ¡there ¡is ¡no ¡external ¡traffic. ¡ – With ¡external ¡traffic ¡
28 ¡
EvaluaJon: ¡Why? ¡
– Over ¡mul=ple ¡hops ¡when ¡there ¡is ¡no ¡external ¡traffic. ¡ – With ¡external ¡traffic ¡
29 ¡
Sender ¡ Homogeneous ¡ 1518B ¡at ¡1 ¡Gbps ¡ Receiver ¡
Sender ¡ Chupja ¡(Ɛ ¡= ¡256/I/s) ¡ ¡ 1518B ¡at ¡1 ¡Gbps ¡ Receiver ¡
EvaluaJon: ¡Why? ¡ ¡
– Over ¡mul=ple ¡hops ¡when ¡there ¡is ¡no ¡external ¡traffic. ¡ ¡
30 ¡
0.000001 ¡ 0.00001 ¡ 0.0001 ¡ 0.001 ¡ 0.01 ¡ 0.1 ¡1 ¡hop ¡ 3 ¡hop ¡ 6 ¡hop ¡ 9 ¡hop ¡ 12 ¡hop ¡ 15 ¡hop ¡ 15 ¡hop ¡ D ¡-‑ ¡Ɛ ¡ ¡ 90% ¡in ¡ ¡ D ¡-‑ ¡Ɛ ¡± ¡250ns ¡
0.000001 ¡ 0.00001 ¡ 0.0001 ¡ 0.001 ¡ 0.01 ¡ 0.1 ¡1 ¡hop ¡ 3 ¡hop ¡ 6 ¡hop ¡ 9 ¡hop ¡ 12 ¡hop ¡ 90% ¡in ¡ ¡ D ¡± ¡250ns ¡ Homogeneous ¡stream ¡ Chupja ¡stream ¡( ¡Ɛ=256/I/s ¡) ¡ 90% ¡in ¡ ¡ D ¡± ¡100ns ¡ 90% ¡in ¡ ¡ D ¡– ¡Ɛ ¡± ¡100ns ¡ D ¡+ ¡Ɛ ¡ ¡
EvaluaJon: ¡Why? ¡ ¡
31 ¡
¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡
Boston ¡ Cornell ¡(Ithaca) ¡ Cornell ¡(NYC) ¡ NLR ¡(NYC) ¡ Chicaco ¡ Cleveland ¡
– Even ¡when ¡there ¡is ¡external ¡traffic. ¡
Encoded ¡‘Zero’ ¡ Encoded ¡‘One’ ¡ Sender ¡ Receiver ¡
Ɛ ¡(/I/s) ¡ (ns) ¡ 256 ¡ (=204.8ns) ¡ 512 ¡ (=409.6) ¡ 1024 ¡ (=819.2) ¡ 2048 ¡ (=1638.4) ¡ 4096 ¡ (=3276.8) ¡ BER ¡ 0.367 ¡ 0.391 ¡ 0.281 ¡ 0.089 ¡ 0.013 ¡
EvaluaJon: ¡Why? ¡
– Over ¡mul=ple ¡hops ¡when ¡there ¡is ¡no ¡external ¡traffic. ¡ – With ¡external ¡traffic ¡
32 ¡
? ¡
Sender ¡ Receiver ¡ 1518B ¡at ¡1 ¡Gbps ¡
With ¡sufficiently ¡large ¡Ɛ, ¡ ¡ the ¡interpacket ¡spacing ¡holds ¡throughout ¡ ¡ the ¡network, ¡and ¡BER ¡is ¡less ¡than ¡10% ¡ ¡
How ¡undetectable ¡is ¡Chupja? ¡ ¡
33 ¡
EvaluaJon: ¡DetecJon ¡Setup ¡
– Kernel ¡Jmestamping ¡
34 ¡
¡ ¡ ¡ NLR ¡
Sender ¡ Kernel ¡ Jmestamping ¡ Receiver ¡
¡ ¡ ¡ NLR ¡
Sender ¡ SoNIC ¡ Jmestamping ¡ Receiver ¡
EvaluaJon: ¡DetecJon ¡
35 ¡ 0.00001 ¡ 0.0001 ¡ 0.001 ¡ 0.01 ¡ 0.1 ¡
1228 ¡ 12211 ¡ 23194 ¡ Interpacket ¡Delay ¡(ns) ¡ HOM ¡ 1024 ¡ 4096 ¡ 0.000001 ¡ 0.00001 ¡ 0.0001 ¡ 0.001 ¡ 0.01 ¡ 0.1 ¡
1228 ¡ 12211 ¡ 23194 ¡ Interpacket ¡Delay ¡(ns) ¡ HOM ¡ 1024 ¡ 4096 ¡
Kernel ¡Timestamping ¡ SoNIC ¡Timestamping ¡
Ɛ ¡= ¡1024 ¡ Ɛ ¡= ¡4096 ¡ Ɛ ¡= ¡1024 ¡ Ɛ ¡= ¡4096 ¡
EvaluaJon: ¡Summary ¡
– 10s~100s ¡Kilo ¡bits ¡per ¡second ¡
– BER ¡< ¡10% ¡over ¡NLR ¡ – Why ¡is ¡Chupja ¡robust? ¡
– Invisible ¡to ¡socware ¡
36 ¡
Conclusion ¡
– High-‑bandwidth, ¡robust, ¡and ¡undetectable ¡
– PerturbaJons ¡from ¡switches ¡ – Inaccurate ¡endhost ¡Jmestamping ¡
37 ¡
Thank ¡you ¡
38 ¡