阻垢剂厂家
免费服务热线

Free service

hotline

010-00000000
阻垢剂厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

iOSURLScheme劫持在未越狱的iPhone6上盗取支付宝和微信支付的帐号密码WooYun知识

发布时间:2021-04-11 10:22:20 阅读: 来源:阻垢剂厂家

iOS URL Scheme 劫持-在未越狱的 iPhone 6上盗取支付宝和微信支付的帐号密码 | WooYun知识库

既然苹果不发布补丁保护第三方应用。第三方应用就没有办法了么? 不是的,这里至少有两种方法可以检测自己应用的 URL Scheme 是否被 Hijack:

(1)、应用本 身可以发送一条 URL Scheme 请求给自己,如果自己可以接收到的话,说明 URL Scheme 没 有被劫持,如果不能收到的话,就说明被劫持了,这时候可以提醒用户卸载有冲突的 app。

代码如下:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@“alipay://test“]];

(2)、利用 MobileCoreServices 服务中的 applicationsAvailableForHandlingURLScheme()方法可以 所有注册了该 URL Schemes 的应用和处理顺序,随后应用就可以检测自己,或者别人的 URL Scheme 是否被劫持了。代码如下:

Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace");

NSObject* workspace =

[LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)]; NSLog(@"openURL: %@",[workspace performSelector:@selector(applicationsAvailableForHandli ngURLScheme:)withObject:@"alipay"]);

在任意 app 下运行这个函数,可以返回 URL 处理的顺序,比如运行结果是:

2015-03-18 15:34:37.695 GetAllApp[13719:1796928] openURL: (

" LSApplicationProxy: 0x156610010 com.mzheng.GetAllApp", " LSApplicationProxy: 0x1566101f0 com.mzheng.Alipay", " LSApplicationProxy: 0x15660fc30 com.alipay.iphoneclient"

说明有三个 app 都声名了 alipay 这个 URL shceme,并且会处理这个请求的是 "com.mzheng.GetAllApp",而不是支付宝。

0x05 文章更新

石家庄CGQ转矩转速传感器

重庆云母

江苏吹瓶机价格

昆明亿利冲孔板