Sat 22 Jun 2019 14:00 - 14:20 at 106A - Engineering Advances for Program Analysis Tools Chair(s): Thierry Lavoie

Different Java compilers and compiler versions, e.g., javac or ecj, produce different bytecode from the same source code. This makes it hard to trace if the bytecode of an open-source library really matches the provided source code. Moreover, it prevents one from detecting which open-source libraries have been re-compiled and rebundled into a single jar, which is a common way to distribute an application. Such rebundling is problematic because it prevents one to check if the jar file contains open-source libraries with known vulnerabilities. To cope with these problems, we propose the tool SootDiff that uses Soot’s intermediate representation Jimple, in combination with code clone detection techniques, to reduce dissimilarities introduced by different compilers, and to identify clones. Our results show that SootDiff successfully identifies clones in 102 of 144 cases, whereas bytecode comparison succeeds in 58 cases only.

Sat 22 Jun

Displayed time zone: Tijuana, Baja California change

14:00 - 15:30
Engineering Advances for Program Analysis ToolsSOAP at 106A
Chair(s): Thierry Lavoie Synopsys, Inc.
14:00
20m
Talk
SootDiff: Bytecode Comparison across different Java Compilers
SOAP
Andreas Dann Paderborn University, Ben Hermann Paderborn University, Eric Bodden Heinz Nixdorf Institut, Paderborn University and Fraunhofer IEM
Pre-print
14:20
20m
Talk
Modernizing Parsing Tools
SOAP
14:40
20m
Talk
MetaDL: Analysing Datalog in Datalog
SOAP
Pre-print
15:00
30m
Talk
Open Discussion on Previous Talks 2
SOAP