美文网首页
【IOS】苹果APP风险项笔记-需修订

【IOS】苹果APP风险项笔记-需修订

作者: 是Jonathan | 来源:发表于2017-01-15 00:14 被阅读58次

    敏感信息-文件存储
    威胁:
    APP需要存储的数据可能包含

    敏感信息-日志输出
    威胁

    敏感信息-后台快照
    威胁:
    APP被切换至后台时会保存当前界面的快照,若界面上包含敏感信息可能导致数据泄露
    审计方法:
    Library/Caches/snapshots中的快照图片
    解决方案:
    程序被切换至后台时,通过UIApplicationDelegate

    数据加密-加密算法
    威胁:
    加密算法自身安全性问题(自定义简单加密算法或RC4等)
    审计方法:
    对APP进行逆向,分析对加密功能的类或方法的调用
    解决方案:
    尽量避免使用自定义加密算法;
    使用AES、DES等较安全算法;
    对于数据安全性要求较高的情况,使用非对称加密(网络传输)。

    数据加密-算法关键数据
    威胁:
    算法KEY生成或存储方式不当,攻击者可轻易获取;
    对称加密的KEY硬编码于程序中。若使用这样的KEY对数据进行加密,攻击者可通过在自己的客户端中获取KEY,就可以对其他用户加密数据进行解密。
    审计方法:
    逆向分析、审计本地文件是否存放相关数据。
    解决方案:
    以设备相关的信息作为基础生成KEY(identity)

    网络交互-HTTP&HTTPS
    威胁:
    敏感数据使用HTTP,存在被中间人攻击获取的风险
    使用HTTPS传输,但未进行服务器根证书校验,同样可被中间人拦截修改
    审计方法:
    Burpsuite、Charles等
    解决方案:
    使用HTTPS应对数据安全性较高的场景,在客户端进行证书进行校验
    对于HTTP,避免明文传输数据,在必要的情况下使用非对称加密

    网络交互-WebView& JS
    来源:
    UIWebView& WKWebView & WebViewJavascriptBridge
    威胁:
    WebView注册获取(GPS等)接口,恶意网页通过JS调用获取信息
    WebView注册的Native接口的实现由缺陷,调用恶意JS代码导致APP崩溃
    审计方法:
    逆向APP,分析相关的类的方法调用,测试注册的接口。
    解决方案:
    使用Safari来打开连接
    尽量不要为JS注册涉及敏感信息的接口,如获取定位信息等
    使用WebView加载页面并涉及JS调用时,对相关调用接口进行检查设置调用黑名单。

    第三方库安全性
    AFNetworking
    低于2.5.3版本存在安全隐患
    通过加载dylib对AFNetworking进行测试
    FFmpeg
    低于2.8.5版本存在文件读取漏洞

    IOS应用安全问题归纳-Bug
    拒绝服务
    扫描畸形二维码,导致APP崩溃

    相关文章

      网友评论

          本文标题:【IOS】苹果APP风险项笔记-需修订

          本文链接:https://www.haomeiwen.com/subject/exdybttx.html