
在移动应用安全不断演变的格局中,SSL Pinning已成为抵御中间人攻击的关键防御机制。然而,对于安全研究人员和渗透测试人员来说,识别这些实现可能是一项耗时且复杂的任务。
我创建此工具的目的是为了在扫描应用中实现的SSL Pinning时,建立一些模式检测。在运行应用之前先进行静态分析会更容易。传统的SSL Pinning检测方法通常需要手动代码审查或动态分析,这可能效率低下且消耗资源。SSLPinDetect通过提供自动化的模式识别弥合了这一差距,使安全专业人员能够在深入分析或运行时测试之前,快速识别潜在的SSL Pinning实现。
自定义模式SSLPinDetect遵循一个简单而强大的工作流程:
apktool提取并反编译目标APKSSLPinDetect内置了用于检测常见SSL Pinning实现的模式,包括:
该工具支持JSON格式的自定义模式文件,允许您:
示例模式文件结构:
{
"OkHttp Certificate Pinning": [
"Lcom/squareup/okhttp/CertificatePinner;",
"Lokhttp3/CertificatePinner;",
"setCertificatePinner"
],
"TrustManager Override": [
"Ljavax/net/ssl/X509TrustManager;",
"checkServerTrusted"
]
}SSLPinDetect在以下领域展现了重要价值:
设置SSLPinDetect简单直接:
先决条件
安装
git clone https://github.com/aancw/SSLPinDetect
cd SSLPinDetect
pip install -r requirements.txt基本用法
python sslpindetect.py -f app.apk -a apktool.jar带详细输出的高级用法
python sslpindetect.py -a apktool_2.11.0.jar -f sample/app-release.apk -v这将提供详细的输出,包括:
(请按回车键或点击查看完整尺寸图像)
SSLPinDetect 演示
随着移动安全的持续发展,SSLPinDetect旨在与这一格局共同成长。其模块化模式系统确保能够快速纳入新的SSL Pinning技术,使您的安全评估保持时效性和全面性。
SSLPinDetect是开源的,欢迎安全社区的贡献。无论您是想:
将 Aan 的故事发送到您的收件箱。免费加入 Medium 以获取此作者的更新。订阅
SSLPinDetect 基于 MIT 许可证提供。有关最新更新和模式定义,请访问项目仓库和 smali-sslpin-patterns 集合。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。