iOS URL Scheme挟制 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

iOS URL Scheme挟制

申博_新闻事件 申博 60次浏览 未收录 0个评论

苹果经由历程iOS沙箱机制限定每一个运用能够接见的资本以治理运用平安和隐私的题目。但该机制也有肯定的平安题目,假如一个APP被黑,经由历程APP Store分发的一切运用能够都邑出现题目。加上接见掌握,app之间的通讯变得越发难题。

但苹果也供应了其他方法来协助app间的通讯,最常见的体式格局就是URL Scheme。本质上讲,这是一个许可开发者在iOS装备上经由历程URL来启动APP的特性,能够将信息从一个APP通报到别的一个APP。比方,翻开一个URL facetime://, FaceTime就会被挪用。这是一种异常有用的快捷体式格局,但URL Scheme的设想是为了通讯而不是平安。

下面引见下怎样滥用URL Scheme来损坏隐私,举行弹出广告和单子敲诈,文章以苏宁和微信为例举行了考证。

事情道理

iOS许可APP声明一个简朴的URL Scheme。比方,两个完整断绝的app能够应用Sample://来举行音讯通报。因而歹意app能够应用URL Scheme来入侵用户。

Apple已在iOS 11以后版本上处理了这一题目,运用了先来先效劳准绳,只要运用URL Scheme装置的APP才能够启动。但该破绽依然能够用其他体式格局来应用。

URL Schemes影响账户隐私

URL Schemes是作为APP的网关来从其他APP来接收信息。由于苹果许可差别的APP声明雷同的URL scheme,因而歹意APP能够挟制特定APP的敏感数据。假如app A的上岸历程与APP B相干,那末就异常风险了。

比方,苏宁易购APP许可受害者运用微信账号来上岸。一般的认证历程是苏宁APP天生一个URL Scheme查询,并发送给微信APP。当微信APP收到苏宁APP的查询后,会从微信效劳器请求一个Login-Token,并发还给苏宁APP举行认证。

iOS URL Scheme挟制

图1. 苏宁APP用微信账号上岸历程示意图

研讨发明苏宁APP老是运用雷同的Login-Request URL Scheme查询来请求Login-Token,然则微信并不会对上岸请求的源举行认证。因而,进击者能够运用APP的Login-Request URL Scheme作歹意目标。

进击者能够运用苏宁APP的Login-Request URL Scheme查询来请求受害者微信账号的Login-Token。然后能够运用该token来用微信账号来上岸苏宁APP。该历程许可进击者网络个人信息或滥用账户的接见权限。

iOS URL Scheme挟制图2. 歹意用户用受害者微信账号上岸苏宁APP示例

为了完成进击,进击者起首必需猎取苏宁的Login-Request URL Scheme。要从苏宁APP猎取该URL Scheme要用微信的URL Scheme建立一个完整自力的APP,微信的URL Scheme 在苏宁app的LSApplicationQueriesSchemesin Info.plist 中。有了正当的WeChat URL Scheme,就能够建立一个捏造的微信,苏宁APP就能够查询捏造的微信来请求Login-Token。

假如苏宁APP发送了该请求,捏造的APP就会猎取Login-Request URL Scheme。剖析发明Login-Request中包括含有常数值的常数参数的多轮查询,如许进击者就能够重放该请求。

iOS URL Scheme挟制

图3. 猎取苏宁发往微信APP的Login-Request

iOS URL Scheme挟制图4. 猎取苏宁发往微信APP的Login-Token

如图3和图4所示,苏宁APP会插进去一个唯一的、庞杂的URL Scheme(wxe386966df7b712ca)来组织查询守候微信相应。该特定的URL在苏宁上岸时会在微信上注册。微信会认出该URL但不会认证Login-Request的源,而是直接相应到请求源的Login-Token。

但请求源多是一个滥用苏宁APP的URL scheme的歹意APP。

iOS URL Scheme挟制

API 渗入测试从入门到通晓系列文章(下)

在本系列文章的前面一部分我们从使用 Postman 开始,创建了集合和请求,并通过 Burp Suite 设置为了 Postman 的代理,这样我们就可以使用 Burp 的模糊测试和请求篡改的功能。 在接下来的这部分内容中,我们将深入研究一些稍微高级一点的 Postman 功能,这些功能你肯定会用到的。 集合变量   Postman 中的变量几乎可以用于请求中的任何字段。 语法是在它们的两边使用两层花括号。有几个地方我可以使用变量定义它们。 如果它们是静态的,也许我会将它们设置为集合变量。 例如,我一直使用 http://localhost:4000 作为我的测试主机。 如果我将测试 API 的端口从400

图5.歹意app URLSchemeAttack盗取的Login-Token

歹意进击者能够应用该Login-Token来接见受害者的微信账号,暴露个人信息。被黑的账号也能够被用于歹意目标。

iOS URL Scheme挟制

图6. 进击者装备用盗取的Login-Token来登入微信账号

该破绽存在于运用这类上岸体式格局的多个APP中,并不局限于微信和苏宁。

URL Schemes滥用账单垂纶

捏造的URL Scheme能够用于多个进击场景中,另一个进击场景是账单重放垂纶,即诱使受害者付出其他账单。在这类进击中,运用了社会工程技术和URL Schemes的破绽。

一般来讲,账单重放垂纶是经由历程发送到特定APP的账单请求的URL Scheme +付出特性来完成的。下面用滴滴和美团打车APP来证实该进击的能够性。

为了重放该进击,研讨人员将微信app作为付出APP。进击者能够运用前面提到的战略:用正当APP的URL Scheme来建立一个捏造的微信,猎取来自滴滴或美团打车的URL Scheme账单请求。

有了账单URL Scheme后,进击者能够重放到正当微信APP的账单请求,并自动挪用其付出接口。因而进击者运用了盗取的滴滴或美团打车的URL Scheme请求,受害者的正当微信APP就会接收付出请求。 iOS URL Scheme挟制

图7. URL Scheme请求重放证实

一般来讲用户能够并不会被诳骗,因而这个请求多是随机弹出的。但这一特性增加了欺骗的能够性。用户能够会无意地点击付出,或以为这是一个正当的付出请求。

另一个进击场景多是运用SMS社工技能和URL Scheme。以滴滴或美团打车为例,进击者起首应用的照样账单这一历程。

运用滴滴或美团打车的用户常常会收到短信提示其付出未付出的账单。进击者能够天生类似的SMS音讯给受害者,SMS中含有账单请求的URL Scheme——来自进击者。用户点击后,链接就会将受害者重定向到微信的付出接口,请求受害者付出。这是一种操纵受害者使其付出本不属于他本身的账单的有用而简朴的体式格局。 iOS URL Scheme挟制

图8. 来自SMS音讯的账单重放垂纶

微信最新版新加入了一种平安战略来防备此类账单重放进击,即微信不接收来自手机浏览器Safari的账单请求。但依然支撑来自Chrome, Message, Gmail等APP的账单请求。

URL Scheme用于弹窗广告

URL Scheme的另一个题目是能够被用于启动运用。也就是说歹意app注册了特定的URL Scheme后,当URL Scheme挪用后,歹意app就能够会被启动。研讨历程当中,研讨人员发明大批应用该特性来向用户展现广告的APP。歹意APP会声明与主流APP相干的URL Scheme,比方wechat://, line://, fb://, fb-messenger://。

iOS URL Scheme挟制

总结和平安发起

URL Scheme异常风险,研讨人员不发起运用这类体式格局来通报敏感信息。进击者能够应用通讯历程当中不举行认证源或目标地的特性。该破绽最早发明时候是在2018年,已于2018年7月和8月通知了相干厂商。苹果也已将URL Scheme的风险通知了开发者,并供应了平安发起:考证一切的URL参数,抛弃能够有题目标畸形的URL,限定能够对用户数据发生要挟的操纵。

对开发者来讲,发起运用通用链接、设置通用链接上岸接口,运用随机id来在当地接收login token,防备挟制和歹意login token重放进击。

原文地点: https://www.4hou.com/info/news/19226.html


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明iOS URL Scheme挟制
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址