有关Mariana Trench
Mariana Trench是一款功能齐全的静态数据编码分析服务平台,在该专用工具的幫助下,众多科学研究工作人员可以轻轻松松对于Android和Java应用软件开展静态数据编码分析。
在这篇文章中,大家将引领大伙儿在自身的设施上安装并配备好Mariana Trench,随后运用Mariana Trench在一个中小型的App中探寻出一个远程控制执行命令系统漏洞。
依靠部件
Mariana Trench的一切正常运行规定当地机器设备上安装并配备好最新版的Python自然环境。在macOS上,我们可以根据homebrew来获得新版本的Python:
在Debian系统软件上(Ubuntu、Mint、Debian),我们可以应用apt-get来进行Python的安装:
留意:大伙儿还要在当地机器设备上安装并配备好AndroidSDK,并将“$ANDROID_SDK”环境变量设置为偏向SDK的安装途径。此外,大家还必须在一个虚拟环境中运行,这一步可以利用以下指令完成:
$ source ~/.venvs/mariana-trench/bin/activate
(mariana-trench)$
假如你终端窗口的cmd前边表明了虚拟环境的名字,表明你的虚拟环境早已激话取得成功。
专用工具安装
在虚拟环境中安装Mariana Trench比较简单,只必须运行以下指令就可以:
专用工具运行
大家将应用一个简便的App来开展检测,运行以下指令就可以获得检测App:
(mariana-trench)$ cd mariana-trench/documentation/sample-app
下面,大家就可以实行静态数据编码分析了:
--system-jar-configuration-path=$ANDROID_SDK/platforms/android-30/android.jar \
--apk-path=sample-app-debug.apk \
--source-root-directory=app/src/main/java
# ...
INFO Analyzed 68886 models in 4.04s. Found 4 issues!
# ...
应用Mariana Trench对检测App实行完分析后,会发觉四个安全隐患,分析的导出結果将包括对于应用软件中每一个方式的有关信息。
进一步解决
分析的导出結果实际上并不是人们可写的,因而大家还必须对这类信息内容开展进一步解决,这儿将应用到SAPP:
(mariana-trench)$ sapp --database-name=sapp.db server --source-directory=app/src/main/java
# ...
2021-05-12 12:27:22,867 [INFO] * Running on http://localhost:5000/ (Press CTRL C to quit)
輸出的最终一行说明SAPP打开了一台当地Web服务端,并容许大家立即查询解析結果。
专用工具运作結果
许可证协议
本项目的研发与发布遵循MIT开源许可证协议。
项目详细地址
Mariana Trench:【GitHub传送门】