Thu 21 Jun 2018 15:15 - 15:40 at Grand Ballroom CD - Synthesis and Learning Chair(s): Xin Zhang

Creating and maintaining an up-to-date set of security rules that match misuses of crypto APIs is challenging, as crypto APIs constantly evolve over time with new cryptographic primitives and settings, making existing ones obsolete.

To address this challenge, we present a new approach to extract security fixes from thousands of code changes. Our approach consists of: (i) identifying code changes, which often capture security fixes, (ii) an abstraction that filters irrelevant code changes (such as refactorings), and (iii) a clustering analysis that reveals commonalities between semantic code changes and helps in eliciting security rules.

We applied our approach to the Java Crypto API and showed that it is effective: (i) our abstraction effectively filters non-semantic code changes (over 99% of all changes) without removing security fixes, and (ii) over 80% of the code changes are security fixes identifying security rules. Based on our results, we identified 13 rules, including new ones not supported by existing security checkers.

Thu 21 Jun

pldi-2018-papers
14:00 - 15:40: PLDI Research Papers - Synthesis and Learning at Grand Ballroom CD
Chair(s): Xin ZhangMassachusetts Institute of Technology, USA
pldi-2018-papers14:00 - 14:25
Talk
Uri AlonTechnion, Meital ZilbersteinTechnion, Omer LevyUniversity of Washington, USA, Eran YahavTechnion
Media Attached
pldi-2018-papers14:25 - 14:50
Talk
Yu FengUniversity of Texas at Austin, USA, Ruben MartinsCarnegie Mellon University, Osbert BastaniStanford University, Isil DilligUT Austin
Media Attached
pldi-2018-papers14:50 - 15:15
Talk
Woosuk LeeUniversity of Pennsylvania, USA, Kihong HeoUniversity of Pennsylvania, USA, Rajeev AlurUniversity of Pennsylvania, Mayur NaikUniversity of Pennsylvania
Media Attached
pldi-2018-papers15:15 - 15:40
Talk
Media Attached