clkscrew
play

ClkScrew Aaron Zhang Outline Introduction to DVFS and background - PowerPoint PPT Presentation

ClkScrew Aaron Zhang Outline Introduction to DVFS and background information. What makes CLKSCREW unique? Challenges to CLKSCREW Attacks and Results Conclusion Voltage Energy + = Usage Frequency HARDWARE DVFS (Dynamic


  1. ClkScrew Aaron Zhang

  2. Outline • Introduction to DVFS and background information. • What makes CLKSCREW unique? • Challenges to CLKSCREW • Attacks and Results • Conclusion

  3. Voltage Energy + = Usage Frequency

  4. HARDWARE DVFS (Dynamic Voltage and Frequency Scaling) SOFTWARE

  5. Outline • Introduction to DVFS and background information. • What makes CLKSCREW unique? • Challenges to CLKSCREW • Attacks and Results • Conclusion

  6. 1 1 1 FLIP FLOP FLIP FLOP

  7. Less time for number to go through Flip-Flop 0 0 1 FLIP FLOP FLIP FLOP

  8. NON- TRUSTZONE TRUSTZONE DVFS

  9. Steps 1. Clear Residual States 2. Profile for Anchor 3. Pre-fault Delaying 4. Deliver the fault.

  10. Outline • Introduction to DVFS and background information. • What makes CLKSCREW unique? • Challenges to CLKSCREW • Attacks and Results • Conclusion

  11. Do phones allow for overclocking/ under-volting?

  12. How do you make sure the flip-flops do not damage the injected code?

  13. Attacker Code CPU CORE 1 Victim Thread CPU CORE 2

  14. How do you get the timing precise enough? How do we make sure the attack occurs where we want it to occur?

  15. Outline • Introduction to DVFS and background information. • What makes CLKSCREW unique? • Challenges to CLKSCREW • Attacks and Results • Conclusion

  16. Inferring AES Keys AES Attacking Decryption Code NON- TRUSTZONE TRUSTZONE DVFS

  17. Loading Apps into Trust Zone Attacker’s Attacking App Code NON- TRUSTZONE TRUSTZONE DVFS

  18. • Each App has 4 Signatures • One signature takes 270 Million clock cycles to App validate. 1. Signature 1 2. Signature 2 • In order for CLKSCREW to 3. Signature 3 4. Signature 4 corrupt data it needs to change just 65 thousand clock cycles within the entire process

  19. 65000/1080000000 = 0.0000601%

  20. Cache Profiling • Pick a memory address of the area of interest • Run dummy instructions and time the amount it takes for these instructions to be removed • Patterns for removing will tell you the pattern of the actual code. Timing Anchor • Track duration of consecutive cache instructions

  21. One instance of Desired Fault out of 65

  22. Outline • Introduction to DVFS and background information. • What makes CLKSCREW unique? • Challenges to CLKSCREW • Attacks and Results • Conclusion

  23. Defenses

  24. Hardware Limits regarding Voltage and Frequency • Make it unable for users to overclock and under- volt their phones • Difficulties include having to remake hardware chips from scratch and having every phone and chipmaker adhere to regulation.

  25. Separate DVFS for Trustzone • Create a separate DVFS for Trustzone itself • Separate DVFS’ for cores on the same chip can cause massive overhead.

  26. Randomization • Randomize clock cycles so that attackers do not know what to expect. • Useless when run-time time-anchors are used.

  27. Conclusions • CLKSCREW is a side-channel attack that utilizes voltage and frequency of devices to induce faults. • Exploiting faults that cannot be easily changed.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend