Android APK контрольный график с сажей
Я пытаюсь сделать граф управления потоком с помощью API сажи из Android APK. Я много читал, но чувствую себя немного беспомощным, как начать с нуля. Я использую спокойную сборку сажи (скачано здесь: 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. По ссылке это сделано с помощью:
SetupApplication app = new SetupApplication(...)
Но это уже первая проблема, в ночной сборке soot.jar нет SetupApplication.
Я сделал это с помощью командной строки, как здесь:
http://www.abartel.net/dexpler/
это почти сработало, но построение графика потока управления - это только первый шаг. После этого я должен манипулировать графиками и использовать его в качестве входных данных для какой-то другой структуры. Так что командная строка не вариант для меня. Я бы предпочел сделать это с Java!
Может кто-нибудь помочь копошеному новичку?
1 ответ
Чтобы получить граф вызовов через Soot, попробуйте вместо этого библиотеку Soot, расположенную по адресу https://github.com/secure-software-engineering/soot-infoflow-android. Затем импортируйте soot.jimple.infoflow.android.SetupApplication в исходный код Java. Все должно быть хорошо.