lilicoding / soot-infoflow-android-iccta

Inter-component communication Taint Analysis for Android
https://sites.google.com/site/icctawebpage/
GNU Lesser General Public License v2.1
92 stars 46 forks source link

[Errors from Epicc] 'java.lang.RuntimeException' errors for real-life apps #6

Closed muntaha14 closed 9 years ago

muntaha14 commented 9 years ago

I analysed some real-life applications. For 2 applications, Epicc reported errors. Details are given below

1) App MD5 99800eb1cad6e3a8d5c267b8bda81a26 Error:

Warning: android.view.MenuItem$OnMenuItemClickListener is a phantom class! java.lang.RuntimeException: IOException with com.j256.ormlite.field.DatabaseField: null at soot.coffi.ClassFile.readClass(ClassFile.java:404) at soot.coffi.ClassFile.loadClassFile(ClassFile.java:201) at soot.coffi.Util.resolveFromClassFile(Util.java:85) at soot.CoffiClassSource.resolve(CoffiClassSource.java:45) at soot.SootResolver.bringToHierarchy(SootResolver.java:229) at soot.SootResolver.bringToSignatures(SootResolver.java:252) at soot.SootResolver.bringToBodies(SootResolver.java:288) at soot.SootResolver.processResolveWorklist(SootResolver.java:164) at soot.SootResolver.resolveClass(SootResolver.java:129) at soot.Scene.forceResolve(Scene.java:1516) at soot.jimple.interproc.cc.ConnectedComponents.computeConnectedComponents(ConnectedComponents.java:180) at soot.jimple.interproc.cc.TestApps.Epicc.main(Epicc.java:83) Caused by: java.io.EOFException at java.io.DataInputStream.readInt(DataInputStream.java:392) at soot.coffi.ClassFile.readClass(ClassFile.java:352) ... 11 more

2) App MD5 95a277d7371860714aa2c43d67b42852 Error:

[Call Graph] For information on where the call graph may be incomplete, use the verbose option to the cg phase. java.lang.RuntimeException: Trying to create interface invoke expression for non-interface type: com.actionbarsherlock.ActionBarSherlock$Implementation Use JVirtualInvokeExpr or JSpecialInvokeExpr instead! at soot.jimple.internal.JInterfaceInvokeExpr.(JInterfaceInvokeExpr.java:46) at soot.jimple.Jimple.newInterfaceInvokeExpr(Jimple.java:433) at soot.coffi.CFG.generateJimple(CFG.java:4507) at soot.coffi.CFG.jimplify(CFG.java:1237) at soot.coffi.CFG.jimplify(CFG.java:925) at soot.coffi.CoffiMethodSource.getBody(CoffiMethodSource.java:100) at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:91) at soot.SootMethod.retrieveActiveBody(SootMethod.java:324) at soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processNewMethod(OnFlyCallGraphBuilder.java:527) at soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processReachables(OnFlyCallGraphBuilder.java:418) at soot.jimple.toolkits.callgraph.CallGraphBuilder.build(CallGraphBuilder.java:84) at soot.jimple.toolkits.callgraph.CHATransformer.internalTransform(CHATransformer.java:43) at soot.SceneTransformer.transform(SceneTransformer.java:39) at soot.SceneTransformer.transform(SceneTransformer.java:45) at soot.SceneTransformer.transform(SceneTransformer.java:50) at soot.jimple.interproc.cc.ConnectedComponents.detectEntryPoints(ConnectedComponents.java:416) at soot.jimple.interproc.cc.ConnectedComponents.computeConnectedComponents(ConnectedComponents.java:225) at soot.jimple.interproc.cc.TestApps.Epicc.main(Epicc.java:83)

APK files could not be attached. These can be downloaded from virustotal.

Thanks,

lilicoding commented 9 years ago

Hi,

Currently we are working on a more sophisticated version of Epicc in which we already solved some known issues and we also take into account URIs. But we are not ready to make the new version public accessible.

Could you please send the failed apps to me by email? I will test the new version tool on them and try to fix them if the problems still exist in the new version tool.

muntaha14 commented 9 years ago

Hi, I have emailed APKs at 'joeyli1989@gmail.com'.

muntaha14 commented 9 years ago

Can you please tell me, when is new Epicc expected to be released for public access?

lilicoding commented 9 years ago

From now on, please use IC3 to replace the experiments. I will close this issue first, feel free to reopen it if you still encounter the same problem.