Index
iOS URL Scheme劫持
描述
应用程序可以注册URI Scheme来处理诸如单点登录 (SSO)、应用程序深度链接或执行跨应用程序通信等操作。
恶意应用程序可以注册合法应用程序已在使用的URI,从而能够拦截旨在发送给合法应用程序的数据,其中可能包含OAuth授权码或令牌等敏感信息。
建议
为了降低iOS上的URL Scheme劫持风险,建议使用iOS通用链接 (Universal Links)。
通用链接通过使用标准Web链接(HTTP/HTTPS)的验证过程来防止恶意应用程序的拦截。
例如,Telegram应用程序同时支持自定义URL Scheme和通用链接:
tg://resolve?domain=fridadotre是一个自定义URL Scheme,使用了tg://机制。https://telegram.me/fridadotre是一个通用链接,使用了https://机制。
这种模型可确保通用链接在不牺牲简单性和灵活性的情况下,具有唯一性与安全性。
链接
标准
- OWASP_MASVS_L1:
- MSTG_PLATFORM_3
- OWASP_MASVS_L2:
- MSTG_PLATFORM_3
- GDPR:
- ART_5
- ART_32
- PCI_STANDARDS:
- REQ_6_2
- REQ_6_3
- REQ_11_3
- OWASP_MASVS_v2_1:
- MASVS_CODE_4
- SOC2_CONTROLS:
- CC_2_1
- CC_4_1
- CC_7_1
- CC_7_2
- CC_7_4
- CC_7_5
- CNIL_FOR_DEVELOPERS:
- DEVELOPERS_4_1_4
- HIPAA_CONTROLS:
- SECURITY221
- SECURITY212
- SECURITY213