Seminar • Cryptography, Security, and Privacy (CrySP) — Finding Semantic Bugs in Kernels: The Symbolic Way and the Fuzzy WayExport this event to calendar

Thursday, January 16, 2020 — 10:30 AM EST

Meng Xu, School of Computer Science
Georgia Institute of Technology

The scale and pervasiveness of modern software pose challenges for security researchers: a bug is more devastating than ever, and the growing software complexity keeps exacerbating the situation with more bug species — expanding the arms race between security practitioners and attackers beyond memory errors. As a consequence, we need a new generation of bug hunting tools that not only scale well with increasingly larger codebases but also catch up with the growing variety of bugs.

In this talk, I will present two complementary bug hunting frameworks that meet the scalability and agility requirements: focused symbolic checking and multi-dimensional fuzz testing, and showcase their effectiveness in a challenging arena: OS kernels. While symbolic execution can never scale up to the whole kernel, complete checking may nevertheless be possible in carefully constructed program slices. I will demonstrate how symbolic bug models can help build such slices and enable a jumpstart of symbolic execution from the middle of a program. On the other hand, fuzz testing turns bug finding into a probabilistic search, but current practices restrict themselves to one dimension only (sequential executions). I will illustrate how to explore the concurrency dimension and extend the bug scope beyond memory errors to a broad spectrum of semantic bugs. Finally, I will give a sense of the extensibility of both frameworks with planned bug checker integrations, as well as a vision to have them incorporated into the software development cycle right from day 1.


Bio: Meng Xu is a Ph.D. candidate in the school of computer science at Georgia Tech, advised by Taesoo Kim. His research interests are broadly in the areas of system and software security, with a thesis research on finding semantic bugs via symbolic execution and fuzz testing, and rich experience in achieving security with software diversity and N-version programming. His work has uncovered over 100 bugs in foundational software like OS kernels and browsers, appears in top-tier security and system venues, and receives a distinguished paper award at USENIX Security 2018. He also served on the Program Committee of CCS 2018 as well as the Student PC of Oakland 2018 and EuroSys 2018.

Location 
DC - William G. Davis Computer Research Centre
1304
200 University Avenue West

Waterloo, ON N2L 3G1
Canada

S M T W T F S
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  1. 2020 (188)
    1. November (1)
    2. October (7)
    3. September (21)
    4. August (28)
    5. July (14)
    6. June (18)
    7. May (16)
    8. April (20)
    9. March (16)
    10. February (25)
    11. January (22)
  2. 2019 (255)
    1. December (21)
    2. November (25)
    3. October (16)
    4. September (20)
    5. August (18)
    6. July (12)
    7. June (23)
    8. May (23)
    9. April (32)
    10. March (25)
    11. February (16)
    12. January (24)
  3. 2018 (217)
  4. 2017 (36)
  5. 2016 (21)
  6. 2015 (36)
  7. 2014 (33)
  8. 2013 (23)
  9. 2012 (4)
  10. 2011 (1)
  11. 2010 (1)
  12. 2009 (1)
  13. 2008 (1)