等保APP测评漏洞修复方案 – iOS篇

移动安全 3年前 (2021) admin
491 0 0

往期精华文章:


作者简介:马老师,等保咨询师( CIIP、CISP、PIPP、ISO/IEC27001 认证)

前言:等保测评环节中,APP是测评环节不可缺少的一部分(除非被测系统中不涉及APP应用)分析多次APP测评案例,作者梳理出了iOS常见测评漏洞及修复方案


WebView组件跨域漏洞

评估目的

评估WebView是否存在跨域风险

威胁描述

WebView是iOS用于显示网页的控件,是一个基于Webkit引擎、展现web页面的控件。WebView控件功能除了具有一般View的属性和设置外,还可对URL请求、页面加载、渲染、页面交互进行处理。iOS平台的WebView组件(UIWebView/WKWebView)存在控件跨域访问漏洞(CNNVD-201801-515),漏洞源UIWebView 默认允许“file://” 域发起跨域请求,而WKWebView可通过手动设置允许“file://”域发起跨域请求。攻击者可利用App文件下载机制将恶意文件写入沙盒内并诱导用户打开,当用户打开恶意文件时,其中的恶意代码可通过AJAX向“file://”域发起请求,从而远程获取App沙盒内所有的本地敏感数据。成功利用该漏洞的攻击者,可以远程获取手机应用沙盒内所有本地文件系统内容,包括浏览器的Cookies、用户的配置文件、文档等敏感信息。

修复方案

避免开启文件域的全局访问;

避免在WebView中加载来自外部传入的“file://”域页面;

对于敏感信息数据,建议进行加密处理后存储,或使用iOS平台推荐的KeyChain服务进行存储,可缓解漏洞可能造成的破坏;


URL Schemes中间人攻击

评估目的

评估应用是否存在中间人攻击风险

威胁描述

URL Schemes的设计之初是为了方便APP之间通讯。通过URL Schemes可以在应用间相互唤起,而产生漏洞的根源在于这个URL并非是应用唯一的。apple并没有任何限制或者审核这个URL的任何措施,也就是说,如果两个App有着相同的URL Schemes,那么系统唤起的App可能并不是你想唤起的。如果这些回调的数据被截获,那么就等于说登录信息,用户信息甚至支付订单信息都会暴漏在他人眼下,对于截获者来说,他可以用你的信息进行登录,从而盗取登录后用户信息

修复方案

应确认被调用方是否为已验证的发送者,避免其他应用伪

装被调用方发送信息,构成中间人攻击


弱HASH算法风险

评估目的

评估是否使用了弱HASH算法

威胁描述

弱HASH 算法指安全级别低的HASH 算法,包括SHA1 和MD5。

程序中使用弱HASH 算法时,HASH 算法可能被黑客攻击导致

HASH 校验方法失效。HASH 校验方法失效可能造成客户端隐私数据泄露、文件被篡改、传输数据被获取等后果,导致用户敏感信息被窃取。

修复方案

使用SHA256、SHA51加密算法


日志数据泄露风险

评估目的

评估应用中是否存在日志数据泄露风险

威胁描述

调试信息函数NSLog 和printf 可能输出重要的调试信息,其中包含的信息可能导致用户信息泄露,泄露核心代码逻辑等,为发起攻击提供便利,例如:本地读写文件的路径,可能暴露关键数据的存储位置;通信交互的日志;跟踪的变量值,可能泄露输入账号、密码等。

修复方案

在发布正式应用时,移除通过NSLog 和printf 输出程序日志的代码,防止输出敏感日志信息暴露程序逻辑


缓冲区溢出漏洞

评估目的

是否存在缓冲区溢出漏洞

威胁描述

缓冲区溢出指系统对接收的输入数据长度没有进行有效检测,向缓冲区内填充数据超过了缓冲区本身的容量,导致数据溢出到被分配空间之外的内存空间,使得溢出的数据覆盖了其他内存空间的数据。利用缓冲区溢出漏洞发起攻击,可以导致程序运行失败、系统关机重新启动,或者执行攻击者的命令,比如非法提升权限等,窃取用户的敏感信息等。gets、memcpy、sprintf、strcat、strcpy、strlen 等C 标准库中的API 均存在缓冲区溢出漏洞。

修复方案

使用苹果推荐的替代函数,如strlcpy、strlcat

 

 






等保APP测评漏洞修复方案 - iOS篇

APP安全交流


原文始发于微信公众号(京数安APP安全实验室):等保APP测评漏洞修复方案 – iOS篇

版权声明:admin 发表于 2021年11月8日 下午3:32。
转载请注明:等保APP测评漏洞修复方案 – iOS篇 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...