1、移动应用是如何通过移动应用是如何通过WebView窃取你的隐私的窃取你的隐私的目录I.移动应用与WEBII.同安全主体原则(SPP)与XPMIII.XPM自动化检测工具IV.结果与案例分析V.总结与展望移动应用与Web移动应用内集成WEB服务广泛应用于各种功能,如广告,社交分享,用户身份认证和授权复用已有Web代码;适配不同平台,提供一致的用户体验集成方式位于应用内部,提供流畅的交互界面提供丰富的接口,可令应用操作Web网页WebView on AndroidUIWebView/WKWebView on iOSWebView:轻量级应用内浏览器Mobile appWebViewWebView
2、APIWebView提供的API可以操作以下Web敏感资源Manipulated WebResourcesAndroid WebViewiOS UIWebViewiOS WKWebViewLocal StorageCookieManagerNSHTTPCookieStorageWKWebsiteDataStorageWeb ContentloadUrl,evaulateJavascriptstringByEvaluatingJavascriptFromStringevaluateJavascriptWeb AddressonPageFinished,shouldOverrideUrlLoadi
3、ngNetwork TrafficshouldInteceptRequestshouldStartLoadWithRequestdecidePolicyForNavigationAction,decidePolicyForNavigationResponseQ:这些API会被安全的使用吗?App-to-Web Attacks移动应用对加载的WEB资源进行拦截、篡改等操作最主要的方式是通过WebView APIWebApp但是大多数情况下,使用WebView API是安全的。怎样区分App-to-Web Attacks和正常使用场景呢?目录I.移动应用与WEBII.同安全主体原则(SPP)与XP
4、MIII.XPM自动化检测工具IV.结果与案例分析V.总结与展望同安全主体原则SPP与XPM应用集成Web服务并对其敏感资源进行操作时,应用和Web的安全主体(Security Principal)必须一致。借鉴于Web中的同源策略(SOP,Same Origin Policy)同安全主体原则 Same Principal Policy(SPP)Cross Principal Manipulation(XPM)应用安全主体PA 和 Web安全主体 PW 不一致,且应用对Web资源进行了操作XPM示例C1:属于Facebook官方AppC2:属于Chatous App中的Facebook SDK
5、C3:属于Chatous App中的类两个App中的三个类都对Web资源进行了操作C1&C2:not XPMC3:XPM目录I.移动应用与WEBII.同安全主体原则(SPP)与XPMIII.XPM自动化检测工具IV.结果与案例分析V.总结与展望XPM自动化检测工具1.准确识别Web和App的安全主体:第三方库和App自身2.准确比较Web和App的安全主体是否一致:semantic gap挑战Semantic Gap命名的多态性:netease&163缩写:baidu&bdXPM自动化检测工具1.确定代码边界,即与WebView操作相关的代码2.提取代码签名,Merkle-tree的迭代式签名
6、方法3.比较代码签名,识别第三方库解决方法:1.第三方库识别方法XPM自动化检测工具1.在搜索引擎中搜索PA和PW2.将返回结果正规化,使用bag-of-word model和term frequency,生成两个向量3.计算两个向量之间的余弦距离解决方法:2.使用搜索引擎cos%,=+,-.+.+,-A+2?.+,-+2?XPMChecker1.静态分析模块,得到上下文信息2.安全主体识别模块3.XPM分类器三个模块目录I.移动应用与WEBII.同安全主体原则(SPP)与XPMIII.XPM自动化检测工具IV.结果与案例分析V.总结与展望XPMChecker 检测结果发现了21款应用,具有恶