P ROTECT IO N : Root-of-Trust for IO in Compromised Platforms Aritra Dhar, Enis Ulqinaku, Kari Kostiainen, Srdjan Capkun ETH Zurich NDSS 2020 | |
Motivation Remote device 75 Heart beat 177 Insulin (U) 0.025 Basal rate (U/Hr) Low limit (mg/dL) 60 105 High limit (mg/dL) Cancel Program NDSS 2020 | | 4/3/20 2
Motivation Remote device 75 Heart beat 177 Insulin (U) 0.025 Basal rate (U/Hr) Low limit (mg/dL) 60 105 High limit (mg/dL) Cancel Program NDSS 2020 | | 4/3/20 3
Remote Trusted path User IO devices Host Remote server NDSS 2020 Aritra Dhar | | 4/3/20 4
Solution 1: Transaction Confirmation Device Remote device 75 Heart beat 177 Insulin (U) 0.025 Basal rate (U/Hr) Android Protected Confirmation Low limit (mg/dL) 60 You are going to program Heart beat 75 105 High limit (mg/dL) Insulin 177U Basal rate 0.025 U/Hr Low level 60 mg/dL High level 105 mg/dL Cancel Program And more …… NDSS 2020 Aritra Dhar | | 4/3/20 5
Solution 2: Input Signing Remote device 75 Heart beat 177 Insulin (U) Heart beat 75 Insulin 177U 0.025 Basal rate (U/Hr) Basal rate 0.025 U/Hr Low level 60 mg/dL Low limit (mg/dL) High level 105 mg/dL 60 Trusted embedded 105 High limit (mg/dL) device Cancel Program NDSS 2020 Aritra Dhar | | 4/3/20 6
Display manipulation attack Insulin 177 177 17 Insulin 7 1777 177 User sees 177 Device records 1777 Host sends 1777 • IntegriKey NDSS 2020 Aritra Dhar | | 4/3/20 7
Observation 1 The lack of output integrity – the render of user inputs on the screen – compromises input integrity. NDSS 2020 Aritra Dhar | | 4/3/20 8
Solution 3: Overlay Remote device Remote device 75 Heart beat Heart beat 177 Insulin (U) Insulin (U) 0.025 Basal rate (U/Hr) Basal rate (U/Hr) Low limit (mg/dL) Low limit (mg/dL) 60 105 High limit (mg/dL) High limit (mg/dL) Cancel Cancel Program Program NDSS 2020 Aritra Dhar | | 4/3/20 9
Overlay: Output Manipulation Remote device Remote device Heart beat Insulin (U) Insulin (U) Heart rate Basal rate (U/Hr) Basal rate (U/Hr) Low limit (mg/dL) Low limit (mg/cc) High limit (mg/dL) High limit (mg/cc) Cancel Cancel Program Program NDSS 2020 Aritra Dhar | | 4/3/20 10
Overlay: Output Manipulation Remote device 177 Insulin (U) Heart rate 75 Basal rate (U/Hr) 0.025 Low limit (mg/cc) 6000 10500 High limit (mg/cc) Program Cancel NDSS 2020 Aritra Dhar | | 4/3/20 11
Observation 2 If the protected output is provided out-of-context , users are more likely not to verify it. Therefore input integrity can be violated. NDSS 2020 Aritra Dhar | | 4/3/20 12
Overlay: Early Form Submission Attack Remote device 75 Heart beat 17 Insulin (U) Textbox in focus 0.025 Basal rate (U/Hr) • Fidelius • Trusted overlay from FPGA Low limit (mg/dL) 60 105 High limit (mg/dL) Program Cancel OS triggers click NDSS 2020 Aritra Dhar | | 4/3/20 13
Observation 3 If not all the modalities of inputs are secured simultaneously, none of them can be fully secured. NDSS 2020 Aritra Dhar | | 4/3/20 14
Requirements The lack of output integrity – the render of user inputs on the screen – compromises input integrity. Inter-dependency between Input and output NDSS 2020 Aritra Dhar | | 4/3/20 15
Requirements If not all the modalities of inputs are secured simultaneously, none of them can be fully secured. All modalities of input NDSS 2020 Aritra Dhar | | 4/3/20 16
Requirements If the protected output is provided out-of-context , users are more likely not to verify it. Therefore input integrity can be violated. Low cognitive load NDSS 2020 Aritra Dhar | | 4/3/20 17
Requirements Low TCB and easy deploy NDSS 2020 Aritra Dhar | | 4/3/20 18
Requirements NDSS 2020 Aritra Dhar | | 4/3/20 19
ProtectIOn Low TCB + fast deployment Input modalities IOHub NDSS 2020 Aritra Dhar | | 4/3/20 20
IO Integrity – Overlay Generation Remote device Insulin (U) Heart rate Basal rate (U/Hr) Simultaneous IO Low limit (mg/cc) High limit (mg/cc) Cancel Program <form action=“/some_action”, signature = “0x45AB…”, id = “0x0ab”> NDSS 2020 Aritra Dhar | | 4/3/20 21
IO Integrity – Overlay Generation Simultaneous IO NDSS 2020 Aritra Dhar | | 4/3/20 22
IO Integrity – Overlay Generation Remote device Verified UI from secure_site.io Insulin (U) Heart rate Basal rate (U/Hr) Simultaneous IO Low limit (mg/cc) High limit (mg/cc) Cancel Program NDSS 2020 Aritra Dhar | | 4/3/20 23
IO Integrity – Input Remote device Verified UI from secure_site.io 75 Insulin (U) 177 Heart rate 0.025 Basal rate (U/Hr) Simultaneous IO Low limit (mg/cc) 60 105 High limit (mg/cc) Cancel Program NDSS 2020 Aritra Dhar | | 4/3/20 24
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms Low cognitive load Put 1 in front of all inputs NDSS 2020 Aritra Dhar | | 4/3/20 25
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms § Lightbox Low cognitive load Put 1 in front of all inputs NDSS 2020 Aritra Dhar | | 4/3/20 26
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms § Lightbox Low cognitive load § Highlight Put 1 in front of all inputs NDSS 2020 Aritra Dhar | | 4/3/20 27
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms § Lightbox Low cognitive load § Highlight § Freezing Put 1 in front of all inputs NDSS 2020 Aritra Dhar | | 4/3/20 28
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms § Lightbox Low cognitive load § Highlight § Freezing § Combination Put 1 in front of all inputs NDSS 2020 Aritra Dhar | | 4/3/20 29
Grabbing User Attention § Output Integrity: Low cognitive load § Several existing mechanisms § Lightbox Low cognitive load § Highlight § Freezing § Combination § How to determine when to engage? § Track pointer § Mouse movement on the overlay NDSS 2020 Aritra Dhar | | 4/3/20 30
Prototype and TCB Low TCB Fast deployment 25.16M 20.92M 1.9K 2M 3.5K 71K 893 600K 121K 36.68M NDSS 2020 Aritra Dhar | | 4/3/20 31
Performance § Display latency: 21.67 ms § ~46 fps § Mouse latency: 250 !" § Keyboard latency: 170 !" § Pointer detection accuracy: 0.997 NDSS 2020 Aritra Dhar | | 4/3/20 32
Summary § Existing research § Drawbacks § Observations § Requirements for Trusted Path § ProtectIOn design § Prototype NDSS 2020 Aritra Dhar | | 4/3/20 33
Thank you! Questions?
Backup slides
Prototype View User’s view on the monitor Focusing user’s attention Attacker’s view NDSS 2020 Aritra Dhar | | 4/3/20 36
Other Trusted Path Solutions NDSS 2020 Aritra Dhar | | 4/3/20 37
How to Build a Trusted Path § Server sends messages : HTML, JS … → " § All modalities of inputs → # § #$%&' → " → # § Host transforms them : Browser, GPU … + I → ["] § ,-.$/01-" : ", # → ["] § Host is a bad guy → " 1- " 4 § Output integrity → Users need to report back " / " 4 NDSS 2020 Aritra Dhar | | 4/3/20 38
Definition: Violation of Input/output Integrity § Sever sends ! § Server knows ! § Given ! , correct input is " § Host sends ! # ≠ ! Output integrity § User sends " # ≠ " Input integrity NDSS 2020 Aritra Dhar | | 4/3/20 39
Verification + $%&'()*%+() + # + " + . + /0# + / … ! # ! " ! . ! /0# ! / $%&'()*%+() $%&'()*%+() $%&'()*%+() Anything missing in the chain → IO integrity violation NDSS 2020 Aritra Dhar | | 4/3/20 40
Overlay: Output Manipulation Remote device 177 Insulin (U) Heart rate 75 Basal rate (U/Hr) 0.025 Low limit (mg/cc) 6000 10500 High limit (mg/cc) Program Cancel NDSS 2020 Aritra Dhar | | 4/3/20 41
Recommend
More recommend