Wed 20 Jun 2018 14:50 - 15:15 at Grand Ballroom CD - Dynamic Techniques Chair(s): Sorin Lerner

Low-level programming languages with weak/static type systems, such as C and C++, are vulnerable to errors relating to the misuse of memory at runtime, such as (sub-)object bounds overflows, (re)use-after-free, and type confusion. Such errors account for many security and other undefined behavior bugs for programs written in these languages. In this paper, we introduce the notion of dynamically typed C/C++, which aims to detect such errors by dynamically checking the "effective type" of each object before use at runtime. We also present an implementation of dynamically typed C/C++ in the form of the Effective Type Sanitizer (EffectiveSan). EffectiveSan enforces type and memory safety using a combination of low-fat pointers, type meta data and type/bounds check instrumentation. We evaluate EffectiveSan against the SPEC2006 benchmark suite and the Firefox web browser, and detect several new type and memory errors. We also show that EffectiveSan achieves high compatibility and reasonable overheads for the given error coverage. Finally, we highlight that EffectiveSan is one of only a few tools that can detect sub-object bounds errors, and uses a novel approach (dynamic type checking) to do so.

Conference Day
Wed 20 Jun

Displayed time zone: Eastern Time (US & Canada) change

14:00 - 15:40
Dynamic TechniquesPLDI Research Papers at Grand Ballroom CD
Chair(s): Sorin LernerUniversity of California, San Diego
14:00
25m
Talk
HHVM JIT: A Profile-Guided, Region-Based Compiler for PHP and Hack
PLDI Research Papers
Media Attached
14:25
25m
Talk
On-Stack Replacement, Distilled
PLDI Research Papers
Daniele Cono D'EliaSapienza University of Rome, Italy, Camil DemetrescuSapienza University Rome
Media Attached
14:50
25m
Talk
EffectiveSan: Type and Memory Error Detection using Dynamically Typed C/C++
PLDI Research Papers
Gregory J. DuckNational University of Singapore, Singapore, Roland H. C. YapNational University of Singapore, Singapore
Media Attached
15:15
25m
Talk
Calling-to-Reference Context Translation via Constraint-Guided CFL-Reachability
PLDI Research Papers
Cheng CaiUniversity of California, Irvine, Qirun ZhangUniversity of California, Davis, Zhiqiang ZuoNanjing University, China, Khanh NguyenUniversity of California, Irvine, Harry XuUniversity of California, Los Angeles (UCLA), Zhendong SuUniversity of California, Davis
Media Attached