Android APP漏洞自动化静态扫描检测工具-Qark

快速 Android 审查工具包

此工具旨在查找源代码或打包 APK 中的多个与安全相关的 Android 应用程序漏洞。该工具还能够创建“概念验证”可部署的 APK 和/或 ADB 命令,能够利用它发现的许多漏洞。无需 root 测试设备,因为该工具专注于可以在其他安全条件下利用的漏洞。

要求

在 Python 2.7.13 和 3.6 上测试 在 OSX、Linux 和 Windows 上测试

用法

有关更多选项,请参阅–help命令。

APK:

~ qark --apk path/to/my.apk

Java源代码文件:

~ qark --java path/to/parent/java/folder
~ qark --java path/to/specific/java/file.java

结果

报告以 JSON 格式生成,可以构建为其他格式类型,要更改报告类型,请使用–report-type标志。

安装

使用 pip(不对要求进行安全检查):

~ pip install --user qark  # --user is only needed if not using a virtualenv
~ qark --help

使用 requirements.txt(对要求的安全检查):

~ git clone https://github.com/linkedin/qark
~ cd qark
~ pip install -r requirements.txt
~ pip install . --user  # --user is only needed if not using a virtualenv
~ qark --help

利用 APK

QARK 可以针对已发现的一些漏洞生成基本漏洞利用 APK。

要生成漏洞利用 APK,需要遵循几个步骤。您需要有 Android SDK v21 和 build-tools v21.1.2

  1. 安装android SDK,可以在“命令行工具”下获取:https://developer.android.com/studio/#downloads

  2. 解压安卓SDK

  3. 进入新目录并使用 bin/sdkmanager --licenses 生成许可证

  4. 确保生成的许可证位于 android SDK 目录中。

  5. 安装 SDK 和正确的构建工具版本: bin/sdkmanager --install “platforms;android-21” “sources;android-21” “build-tools;21.1.2”

qark工具使用

对APK进行安全评估
命令:

python qark.py --source 1 --pathtoapk /root/soft/app/needtest.apk --exploit 1 --install 1

加粗部分是你需要进行安全检测的APK的路径

检查

QARK 是一个易于使用的工具,能够发现 Android 应用程序中的常见安全漏洞。与商业产品不同,它是 100% 免费使用的。QARK 提供教育信息,使安全审查人员能够找到对漏洞的精确、深入的解释。QARK 自动使用多个反编译器,利用它们的组合输出,在反编译 APK 时产生出色的结果。最后,与传统工具相比,QARK 的主要优势在于它可以生成 ADB 命令,甚至是功能齐全的 APK,从而将假设的漏洞转化为有效的“POC”漏洞利用。

此工具尝试查找的安全漏洞类型包括:

无意中导出的组件
保护不当的导出组件
容易被拦截或窃听的意图
不正确的 x.509 证书验证
创建世界可读或世界可写文件
可能泄露数据的活动
粘性意图的使用
不安全地创建待处理意图
发送不安全的广播意图
嵌入在源中的私钥
密码学使用薄弱或不当
潜在可利用的 WebView 配置
出口偏好活动
窃听
启用备份的应用程序
可调试的应用程序
支持过时 API 版本且存在已知漏洞的应用程序

注意

注意:QARK 将 Android 应用程序反编译回原始源代码。如果在您的管辖范围内这可能被认为是非法的,请不要使用此工具。如果您不确定,请寻求法律顾问。

如果您在 OSX 上遇到问题,尤其是与对 Play 商店的出站调用或 SDK 下载有关的问题,可能是由于您的 Python/OpenSSL 配置以及 OSX 最近的更改影响了通过 brew 安装的 Python 的事实。核对您的 Python 安装并从源代码重新安装可能会解决您的问题。

执照

版权所有 2015 LinkedIn Corp. 保留所有权利。

版权所有 2015 LinkedIn Corp. 根据 Apache 许可证 2.0 版(“许可证”)获得许可;除非遵守许可,否则您不得使用此文件。

您可以在此处获取许可证的副本。除非适用法律要求或书面同意,否则根据许可分发的软件是在“原样”基础上分发的,没有任何明示或暗示的保证或条件。

项目地址:

https://github.com/linkedin/qark

参考链接:
https://blog.csdn.net/daizhongyin/article/details/104656558

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值