Protecting Smart Devices from the Bottom-up

2020 
Author(s): Machiry, Aravind | Advisor(s): Kruegel, Christopher; Vigna, Giovanni | Abstract: Modern systems are mainly composed of IoT devices and Smartphones.Most of these devices use ARM processors, which, along with flexiblelicensing, have new security architecture features, such as ARMTrustZone, that enables execution of a secure application in anuntrusted environment. Furthermore, with well-supported, extensible,open-source embedded operating systems like Android allows themanufactures to quickly customize their operating system with devicedrivers, thus reducing the time-to-market.Unfortunately, the proliferation of device vendors and race to the market has resulted in poor quality device drivers containing criticalsecurity vulnerabilities. Furthermore, the patches for thesevulnerabilities get merged into the end-products with a significantdelay resulting in the Patch Gap, which causes privacy andsecurity of billions of users to be at risk.In this dissertation, I will show how the new architecture features can leadto security issues by introducing new attack vectors.Second, I will show that the existing techniques are inadequate to find the security issues in Linux kernel drivers and how, with certain well-defined optimizations, we canprecisely find security issues.Third, I will present my solution to the problem of Patch Gap byshowing a principled approach to automatically port patches to vendor productrepositories.Finally, I will present our on-going work to automatically port C toChecked C, which provides a low overhead, backward-compatible, andmemory-safe C alternative that could be used on resource-constrained modern systems to prevent security vulnerabilities.Through this work, I presented effective ways to find, fix, propagate, and prevent vulnerabilities in modern system software, thus improving modern systems security.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    0
    Citations
    NaN
    KQI
    []