[Soot-list] Null Pointer Exception when Creating Dummy Main Method for APK

R.F. rayfang1991 at hotmail.com
Wed Aug 5 09:39:51 EDT 2015


Thanks for the quick action, Steve.

Sorry for providing so many strange cases. Actually these are APKs of apps
on Google Play Top 300. I think Google should upgrade the Android
development toolchain to standardize the coding convention.

Thanks.



Best Regards,
R.F.

On Wed, Aug 5, 2015 at 8:36 PM, Steven Arzt <Steven.Arzt at cased.de> wrote:

> Hi,
>
>
> This is very strange. Your APK file contains classes that implement
> interfaces which are not actually interfaces, but proper classes. This
> should normally not be possible. Nevertheless, I have patched Soot to
> handle such cases. The code is on Github, a new nightly build will be
> available tomorrow.
>
>
>
> Best regards,
>
>   Steven
>
>
>
> *Von:* soot-list-bounces at CS.McGill.CA [mailto:
> soot-list-bounces at CS.McGill.CA] *Im Auftrag von *R.F.
> *Gesendet:* Dienstag, 4. August 2015 16:41
> *An:* soot-list at CS.McGill.CA
> *Betreff:* [Soot-list] Null Pointer Exception when Creating Dummy Main
> Method for APK
>
>
>
> Hi,
>
>
>
> First of all, please forgive me for reporting so many issues with
> FlowDroid, since I am studying and testing it heavily recently as a newbie.
> To Steven and all the contributors of Soot, I cannot be more grateful. I'm
> glad to see Soot keep getting better and better.
>
>
>
> I was analyzing  another APK using the given test class of FlowDroid.
>
>
>
>
> https://drive.google.com/file/d/0B0ceYAgUVEZbZmVmbnZWTEY5T0E/view?usp=sharing
>
>
>
> However, the following exception is thrown:
>
> Exception in thread "main" java.lang.NullPointerException
>
>      at soot.Hierarchy.<init>(Hierarchy.java:128)
>
>      at soot.Scene.getActiveHierarchy(Scene.java:957)
>
>      at
> soot.jimple.infoflow.entryPointCreators.AndroidEntryPointCreator.getComponentType(AndroidEntryPointCreator.java:448)
>
>      at
> soot.jimple.infoflow.entryPointCreators.AndroidEntryPointCreator.createDummyMainInternal(AndroidEntryPointCreator.java:180)
>
>      at
> soot.jimple.infoflow.entryPointCreators.BaseEntryPointCreator.createDummyMainInternal(BaseEntryPointCreator.java:122)
>
>      at
> soot.jimple.infoflow.entryPointCreators.BaseEntryPointCreator.createDummyMain(BaseEntryPointCreator.java:107)
>
>      at
> soot.jimple.infoflow.android.SetupApplication.createMainMethod(SetupApplication.java:598)
>
>      at
> soot.jimple.infoflow.android.SetupApplication.calculateCallbackMethods(SetupApplication.java:447)
>
>      at
> soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(SetupApplication.java:378)
>
>      at
> soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(SetupApplication.java:344)
>
>      at
> soot.jimple.infoflow.android.TestApps.Test.runAnalysis(Test.java:521)
>
>      at soot.jimple.infoflow.android.TestApps.Test.main(Test.java:215)
>
>
>
>
>
> My setup is the latest source code on the develop branch (or default
> branch on GitHub) of Jasmin (https://github.com/Sable/jasmin), Heros (
> https://github.com/Sable/heros), Soot (https://github.com/Sable/soot),
> Soot Infoflow (
> https://github.com/secure-software-engineering/soot-infoflow) and Soot
> Infoflow Android (
> https://github.com/secure-software-engineering/soot-infoflow-android). My
> arguments are "/PATH/TO/APK /PATH/TO/android-platforms". The
> "android-platform" directory is also a clone of
> https://github.com/Sable/android-platforms. The JRE used by Eclipse is
> Oracle Java 7 on Ubuntu 15.04 64-bit (/usr/lib/jvm/java-7-oracle).
>
>
>
> Can you reproduce the issue?
>
>
>
> Thanks so much.
>
>
>
>
>
>
>
> Best Regards,
>
> R.F.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20150805/940308b5/attachment-0001.html 


More information about the Soot-list mailing list