System-on-Chip Platform Security Assurance: Architecture and Validation

Modern system-on-chip (SoC) designs include a wide variety of highly sensitive assets which must be protected from unauthorized access. A significant aspect of SoC design involves exploration, analysis, and evaluation of resiliency mechanisms against attacks to such assets. These attacks may arise from a number of sources, including malicious intellectualproperty blocks (IPs) in the hardware, malicious or vulnerable firmware and software, insecure communication of the system with other devices, and side-channel vulnerabilities through power and performance profiles. Countermeasures for these attacks are equally diverse, which include architecture, design, implementation, and validation-based protection. In this paper, we provide a comprehensive overview of the security infrastructure in modern SoC designs, including both resiliency techniques and their validation paradigms at presilicon and postsilicon stages. We identify gaps in current resiliency and analysis architectures and propose design and validation solutions to address them. Finally, we provide industry perspectives on the role and impact of current practices on SoC security, and discuss some emerging trends in this important area.

[1]  Fei Xie,et al.  Challenges and opportunities with concolic testing , 2015, 2015 National Aerospace and Electronics Conference (NAECON).

[2]  Mark Mohammad Tehranipoor,et al.  Guest Editors' Introduction: Confronting the Hardware Trustworthiness Problem , 2010, IEEE Des. Test Comput..

[3]  Ahmad-Reza Sadeghi,et al.  HAFIX: Hardware-Assisted Flow Integrity eXtension , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[4]  Aarti Gupta,et al.  Formal hardware verification methods: A survey , 1992, Formal Methods Syst. Des..

[5]  Mark Mohammad Tehranipoor,et al.  Analyzing circuit vulnerability to hardware Trojan insertion at the behavioral level , 2013, 2013 IEEE International Symposium on Defect and Fault Tolerance in VLSI and Nanotechnology Systems (DFTS).

[6]  Sandip Ray,et al.  Security challenges in mobile and IoT systems , 2016, 2016 29th IEEE International System-on-Chip Conference (SOCC).

[7]  Ahmad-Reza Sadeghi,et al.  Dynamic integrity measurement and attestation: towards defense against return-oriented programming attacks , 2009, STC '09.

[8]  Steven J. Greenwald,et al.  Discussion topic: what is the old security paradigm? , 1998, NSPW '98.

[9]  Michael R. Clarkson,et al.  Hyperproperties , 2008, 2008 21st IEEE Computer Security Foundations Symposium.

[10]  Frederic T. Chong,et al.  Sapper: a language for hardware-level security policy enforcement , 2014, ASPLOS.

[11]  Jin Yang,et al.  Security of SoC firmware load protocols , 2014, 2014 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST).

[12]  Priyadarsan Patra On the cusp of a validation wall , 2007, IEEE Design & Test of Computers.

[13]  John A. Clark,et al.  Effective Security Requirements Analysis: HAZOP and Use Cases , 2004, ISC.

[14]  Zhao Yiqiang,et al.  A System-On-Chip bus architecture for hardware Trojan protection in security chips , 2011, 2011 IEEE International Conference of Electron Devices and Solid-State Circuits.

[15]  Mark Mohammad Tehranipoor,et al.  A low-cost solution for protecting IPs against scan-based side-channel attacks , 2006, 24th IEEE VLSI Test Symposium.

[16]  Magdy S. Abadir,et al.  A Survey of Hybrid Techniques for Functional Verification , 2007, IEEE Design & Test of Computers.

[17]  Jared D. DeMott,et al.  Fuzzing for Software Security Testing and Quality Assurance , 2008 .

[18]  Farinaz Koushanfar,et al.  A Survey of Hardware Trojan Taxonomy and Detection , 2010, IEEE Design & Test of Computers.

[19]  Ahmad-Reza Sadeghi,et al.  Counterfeit Object-oriented Programming: On the Difficulty of Preventing Code Reuse Attacks in C++ Applications , 2015, 2015 IEEE Symposium on Security and Privacy.

[20]  Swarup Bhunia,et al.  Correctness and security at odds: Post-silicon validation of modern SoC designs , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[21]  Paul C. Kocher,et al.  Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems , 1996, CRYPTO.

[22]  Swarup Bhunia,et al.  A flexible architecture for systematic implementation of SoC security policies , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[23]  James Newsome,et al.  Trustworthy Execution on Mobile Devices: What Security Properties Can My Mobile Platform Give Me? , 2012, TRUST.

[24]  Swarup Bhunia,et al.  Exploiting design-for-debug for flexible SoC security architecture , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[25]  Mark Mohammad Tehranipoor,et al.  AVFSM: A framework for identifying and mitigating vulnerabilities in FSMs , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[26]  Yuguang Fang,et al.  Securing wireless sensor networks: a survey , 2008, IEEE Communications Surveys & Tutorials.

[27]  Wen Chen,et al.  Striking a balance between SoC security and debug requirements , 2016, 2016 29th IEEE International System-on-Chip Conference (SOCC).

[28]  Eric Whitman Smith Axe, an automated formal equivalence checking tool forprograms , 2011 .

[29]  Yiorgos Makris,et al.  Proof-Carrying Hardware Intellectual Property: A Pathway to Trusted Module Acquisition , 2012, IEEE Transactions on Information Forensics and Security.

[30]  Xeno Kovah,et al.  How Many Million BIOSes Would you Like to Infect? , 2015 .

[31]  Siva Sai Yerubandi,et al.  Differential Power Analysis , 2002 .

[32]  David Kleidermacher,et al.  Embedded Systems Security: Practical Methods for Safe and Secure Software and Systems Development , 2012 .

[33]  Michael K. Reiter,et al.  Flicker: an execution infrastructure for tcb minimization , 2008, Eurosys '08.