Android 带烟灰的 APK 控制流程图

Android APK control flow graph with soot

我正在尝试使用来自 Android APK 的 soot API 制作控制流程图。我已经阅读了很多,但我对如何从头开始感到有点无助。我使用的是 nighty 版本的 soot(在此处下载:https://ssebuild.cased.de/nightly/soot/lib/),因为我读到 2.5.0 版已过时。我用 google 找到了很多,例如:

https://mailman.cs.mcgill.ca/pipermail/soot-list/2014-September/007303.html

首先我需要加载 Android APK 文件。在 link 上完成了:

SetupApplication app = new SetupApplication(...)

但这已经是第一个问题了,每晚构建 soot.jar 中没有 SetupApplication

我是用命令行完成的,如下所示:

http://www.abartel.net/dexpler/

这几乎奏效了,但构建控制流图只是第一步。之后,我必须操纵图表并将其用作其他框架的输入。所以命令行不适合我。我更愿意使用 Java!

有人可以帮助新手吗?

要通过 Soot 获取调用图,请尝试使用位于 https://github.com/secure-software-engineering/soot-infoflow-android 的 Soot 库。 然后在您的 Java 源代码中导入 soot.jimple.infoflow.android.SetupApplication。 一切都应该没问题。