[Soot-list] How to use paddle in flowdroid

HAOFENG LI lihaofeng061218 at gmail.com
Wed Aug 28 00:35:34 EDT 2019


I want to build callgraph using paddle.
The following is my command:
java -classpath .;paddle-0.3.jar -jar soot-infoflow-cmd.jar -a Clone1.apk 
-p platforms -s SourcesAndSinks.txt

There is a crash when i run the code.

[main] INFO soot.jimple.infoflow.cmd.MainClass - Analyzing app 
E:\project\DroidBench\apk\GeneralJava\Clone1.apk (1 of 1)...
[main] INFO soot.jimple.infoflow.android.SetupApplication - Initializing 
Soot...
[main] INFO soot.jimple.infoflow.android.SetupApplication - Loading dex 
files...
[main] INFO soot.jimple.infoflow.android.SetupApplication - ARSC file 
parsing took 0.0236198 seconds
[main] INFO 
soot.jimple.infoflow.android.entryPointCreators.AndroidEntryPointCreator - 
Creating Android entry point for 1 components...
[main] INFO soot.jimple.infoflow.android.SetupApplication - Constructing 
the callgraph...
[main] ERROR soot.jimple.infoflow.android.SetupApplication - Could not 
calculate callback methods
java.lang.RuntimeException: Could not find 
soot.jimple.paddle.PaddleTransformer. Did you include Paddle on your Java 
classpath?
        at soot.jimple.paddle.PaddleHook.instantiate(PaddleHook.java:62)
        at 
soot.jimple.paddle.PaddleHook.paddleTransformer(PaddleHook.java:48)
        at 
soot.jimple.paddle.PaddleHook.internalTransform(PaddleHook.java:54)
        at soot.SceneTransformer.transform(SceneTransformer.java:36)
        at soot.Transform.apply(Transform.java:102)
        at soot.RadioScenePack.internalApply(RadioScenePack.java:68)
        at 
soot.jimple.toolkits.callgraph.CallGraphPack.internalApply(CallGraphPack.java:58)
        at soot.Pack.apply(Pack.java:117)
        at 
soot.jimple.infoflow.android.SetupApplication.constructCallgraphInternal(SetupApplication.java:564)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbackMethods(SetupApplication.java:682)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbacks(SetupApplication.java:476)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbacks(SetupApplication.java:446)
        at 
soot.jimple.infoflow.android.SetupApplication.processEntryPoint(SetupApplication.java:1396)
        at 
soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1362)
        at 
soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1309)
        at soot.jimple.infoflow.cmd.MainClass.run(MainClass.java:333)
        at soot.jimple.infoflow.cmd.MainClass.main(MainClass.java:231)
[main] INFO soot.jimple.infoflow.memory.MemoryWarningSystem - Shutting down 
the memory warning system...
The data flow analysis has failed. Error message: Could not find 
soot.jimple.paddle.PaddleTransformer. Did you include Paddle on your Java 
classpath?
java.lang.RuntimeException: Could not find 
soot.jimple.paddle.PaddleTransformer. Did you include Paddle on your Java 
classpath?
        at soot.jimple.paddle.PaddleHook.instantiate(PaddleHook.java:62)
        at 
soot.jimple.paddle.PaddleHook.paddleTransformer(PaddleHook.java:48)
        at 
soot.jimple.paddle.PaddleHook.internalTransform(PaddleHook.java:54)
        at soot.SceneTransformer.transform(SceneTransformer.java:36)
        at soot.Transform.apply(Transform.java:102)
        at soot.RadioScenePack.internalApply(RadioScenePack.java:68)
        at 
soot.jimple.toolkits.callgraph.CallGraphPack.internalApply(CallGraphPack.java:58)
        at soot.Pack.apply(Pack.java:117)
        at 
soot.jimple.infoflow.android.SetupApplication.constructCallgraphInternal(SetupApplication.java:564)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbackMethods(SetupApplication.java:682)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbacks(SetupApplication.java:476)
        at 
soot.jimple.infoflow.android.SetupApplication.calculateCallbacks(SetupApplication.java:446)
        at 
soot.jimple.infoflow.android.SetupApplication.processEntryPoint(SetupApplication.java:1396)
        at 
soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1362)
        at 
soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1309)
        at soot.jimple.infoflow.cmd.MainClass.run(MainClass.java:333)
        at soot.jimple.infoflow.cmd.MainClass.main(MainClass.java:231)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20190827/7db71916/attachment.html>


More information about the Soot-list mailing list