Shopify移动应用URL方案验证绕过漏洞分析
漏洞概述
在Shopify移动应用程序中发现一个安全漏洞,该漏洞允许绕过NavigationActivity组件中的URL方案验证。攻击者可以通过构造使用data:或javascript:方案的恶意URL,在应用WebView上下文中执行JavaScript代码。
技术细节
应用信息
|
|
漏洞原理
研究发现,com.shopify.mobile应用未验证作为额外参数传递给com.shopify.mobile.navigation.NavigationActivity的URL方案,这可能导致在应用WebView中加载任意HTML内容(包括JS代码),并接管SmartWebview和EASDK JavaScript接口。
复现步骤
使用提供的APK文件进行测试,执行以下命令:
|
|
影响分析
- JavaScript代码执行能力
- 通过EASDK和SmartWebview接口运行Java代码的潜在风险
- 可能通过暴露的接口访问设备文件
利用条件
- 需要安装恶意应用
- 需要显著的用户交互
- 攻击复杂度较高
时间线
- 2022年10月17日:漏洞报告提交
- 2022年11月3日:漏洞确认并奖励500美元奖金
- 2022年11月30日:修复完成
- 2025年9月17日:报告公开披露
CVSS评分
基础评分:2.9(CVSS:3.0/AV:P/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N)
评分说明
- 攻击复杂度:高 - 需要目标用户安装恶意应用并错误选择
- 用户交互:需要 - 受害者必须在安装后选择恶意应用
- 机密性影响:低 - 设备文件可能是最有价值的暴露内容
- 完整性影响:低 - 理论上可能通过下载覆盖文件
修复状态
Shopify工程师已实施修复措施,该漏洞不再可复现。