Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Cynthia Sturton is active.

Publication


Featured researches published by Cynthia Sturton.


ieee symposium on security and privacy | 2011

Defeating UCI: Building Stealthy and Malicious Hardware

Cynthia Sturton; Matthew Hicks; David A. Wagner; Samuel T. King

In previous work Hicks et al. proposed a method called Unused Circuit Identification (UCI) for detecting malicious backdoors hidden in circuits at design time. The UCI algorithm essentially looks for portions of the circuit that go unused during design-time testing and flags them as potentially malicious. In this paper we construct circuits that have malicious behavior, but that would evade detection by the UCI algorithm and still pass design-time test cases. To enable our search for such circuits, we define one class of malicious circuits and perform a bounded exhaustive enumeration of all circuits in that class. Our approach is simple and straight forward, yet it proves to be effective at finding circuits that can thwart UCI. We use the results of our search to construct a practical attack on an open-source processor. Our malicious backdoor allows any user-level program running on the processor to enter supervisor mode through the use of a secret â knock. We close with a discussion on what we see as a major challenge facing any future design-time malicious hardware detection scheme: identifying a sufficient class of malicious circuits to defend against.


computer and communications security | 2009

On voting machine design for verification and testability

Cynthia Sturton; Susmit Jha; Sanjit A. Seshia; David A. Wagner

We present an approach for the design and analysis of an electronic voting machine based on a novel combination of formal verification and systematic testing. The system was designed specifically to enable verification and testing. In our architecture, the voting machine is a finite-state transducer that implements the bare essentials required for an election. We formally specify how each component of the machine is intended to work and formally verify that a Verilog implementation of our design meets this specification. However, it is more challenging to verify that the composition of these components will behave as a voter would expect, because formalizing human expectations is difficult. We show how systematic testing can be used to address this issue, and in particular to verify that the machine will behave correctly on election day.


architectural support for programming languages and operating systems | 2015

SPECS: A Lightweight Runtime Mechanism for Protecting Software from Security-Critical Processor Bugs

Matthew Hicks; Cynthia Sturton; Samuel T. King; Jonathan M. Smith

Processor implementation errata remain a problem, and worse, a subset of these bugs are security-critical. We classified 7 years of errata from recent commercial processors to understand the magnitude and severity of this problem, and found that of 301 errata analyzed, 28 are security-critical. We propose the SECURITY-CRITICAL PROCESSOR ER- RATA CATCHING SYSTEM (SPECS) as a low-overhead solution to this problem. SPECS employs a dynamic verification strategy that is made lightweight by limiting protection to only security-critical processor state. As a proof-of- concept, we implement a hardware prototype of SPECS in an open source processor. Using this prototype, we evaluate SPECS against a set of 14 bugs inspired by the types of security-critical errata we discovered in the classification phase. The evaluation shows that SPECS is 86% effective as a defense when deployed using only ISA-level state; incurs less than 5% area and power overhead; and has no software run-time overhead.


architectural support for programming languages and operating systems | 2017

Identifying Security Critical Properties for the Dynamic Verification of a Processor

Rui Zhang; Natalie Stanley; Christopher Griggs; Andrew Chi; Cynthia Sturton

We present a methodology for identifying security critical properties for use in the dynamic verification of a processor. Such verification has been shown to be an effective way to prevent exploits of vulnerabilities in the processor, given a meaningful set of security properties. We use known processor errata to establish an initial set of security-critical invariants of the processor. We then use machine learning to infer an additional set of invariants that are not tied to any particular, known vulnerability, yet are critical to security. We build a tool chain implementing the approach and evaluate it for the open-source OR1200 RISC processor. We find that our tool can identify 19 (86.4%) of the 22 manually crafted security-critical properties from prior work and generates 3 new security properties not covered in prior work.


formal methods | 2018

A recursive strategy for symbolic execution to find exploits in hardware designs

Rui Zhang; Cynthia Sturton

This paper presents hardware-oriented symbolic execution that uses a recursive algorithm to find, and generate exploits for, vulnerabilities in hardware designs. We first define the problem and then develop and formalize our strategy. Our approach allows for a targeted search through a possibly infinite set of execution traces to find needle-in-a-haystack error states. We demonstrate the approach on the open-source OR1200 RISC processor. Using the presented method, we find, and generate exploits for, a control-flow bug, an instruction integrity bug and an exception related bug.


hardware oriented security and trust | 2016

Model checking to find vulnerabilities in an instruction set architecture

Chris Bradfield; Cynthia Sturton

Hardware companies conduct extensive testing and verification during the processor design process to reduce the number of errata that persist to the final product. These processes rely on a specification against which to test or verify the design; as a result, they will fail to catch vulnerabilities stemming from errors in the specification itself. In this work we present a model-checking based approach for detecting such vulnerabilities. Our approach is feasible, even for a modern CISC architecture, given the class of properties we are interested in. We demonstrate the value of this approach with a case study of the Intel SYSRET vulnerability.


conference on electronic voting technology workshop on trustworthy elections | 2012

Automated analysis of election audit logs

Patrick Baxter; Anne Edmundson; Keishla Ortiz; Ana Maria Quevedo; Samuel Rodríguez; Cynthia Sturton; David A. Wagner


conference on electronic voting technology workshop on trustworthy elections | 2009

Weight, weight, don't tell me: using scales to select ballots for auditing

Cynthia Sturton; Eric Rescorla; David A. Wagner


formal methods | 2013

Symbolic software model validation

Cynthia Sturton; Rohit Sinha; Thurston H. Y. Dang; Sakshi Jain; Michael McCoyd; Wei Yang Tan; Petros Maniatis; Sanjit A. Seshia; David A. Wagner


symposium on usable privacy and security | 2015

Usability of Augmented Reality for Revealing Secret Messages to Users but Not Their Devices

Sarah J. Andrabi; Michael K. Reiter; Cynthia Sturton

Collaboration


Dive into the Cynthia Sturton's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Andrew Chi

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Michael K. Reiter

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jonathan M. Smith

University of Pennsylvania

View shared research outputs
Top Co-Authors

Avatar

Robert A. Cochran

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar

Rohit Sinha

University of California

View shared research outputs
Top Co-Authors

Avatar

Rui Zhang

University of North Carolina at Chapel Hill

View shared research outputs
Researchain Logo
Decentralizing Knowledge