iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ZipperDown漏洞怎么处理
  • 527
分享到

ZipperDown漏洞怎么处理

2023-06-19 11:06:05 527人浏览 安东尼
摘要

本篇内容介绍了“ZipperDown漏洞怎么处理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!出发点与基本策略我们谈的主要是防守,谈防守就要

本篇内容介绍了“ZipperDown漏洞怎么处理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

出发点与基本策略


我们谈的主要是防守,谈防守就要基于一定的信任基础,如果什么都不可信,那也就没法做防守了。再具体一点,我们现在谈的是 iOS App 的防守,我们信任的基础是 ioS,即:iOS 系统及服务是可信的,他们的安全性是完整的,没有被破坏的。对于 iOS 应用而言,操作系统提供的最基本、最重要的安全特性是:代码签名、沙盒。代码签名是指:iOS 上只能运行由苹果签名的代码。沙盒是一种限制程序行为的安全特性,其中包括对程序可以访问的文件的限制,如:App1 无法访问 App2 存储的数据文件。除了代码签名与沙盒,iOS 上还有其它的一些安全特性或者安全功能,比如:Keychain、用户数据加密等。我们做防守时一定要充分利用现有的安全功能与安全特性,换句话说就是:充分利用苹果提供的资源,这样可以大大降低我们的防守成本,这就是第一条防守策略:尽量基于现有的防御阵地来搭建我们自己的防线。

防守的第二条策略是:要搭建防线。搭建防线,换句话说就是:没有银弹,没有什么单一的防御点可以从整体上保证我们的 App 的安全。以本地存储为例,从 iOS 8.4 之后,没法导出单个应用的存储在设备上的文件,那我们还用不用对 App 存储到本地的数据进行加密?对于我们公司的产品,我们是要求加密的,原因是:如果不加密,我们就依赖于 Bundle 不可导出这个安全特性,但是 Bundle 真的不可导出吗?!有没有办法绕过?实际上是有办法绕过的,我们还可以通过备份手机进而获得应用的数据。所以,如果做了本地数据加密,可以将这个理解为增加了一条防线,那应用就可以抵御后一种攻击方式。

防守的第三条策略是:要持续的、牢牢的抓住主要“矛盾”。对于 iOS 应用而言,我们认为主要矛盾是:远程代码执行。远程代码执行的前提是攻击者可以远程的将攻击 Payload 投放到 iOS 应用中。对于投递恶意 Payload,首先想到的方式是中间人攻击(MitM)。为了避免 MitM,我们要求 App 与服务器的通信使用 https,并且需要正确的校验证书,这问题我们一直在抓,因为控制住了 HttpS 就可以大大的降低程序的远程攻击面。在 HTTPS 之后,我们会重点关注用户可以产生内容的 App,这样又可以将攻击面降低。

防守的第四条策略是:尽量避免因为业务功能而将安全降维。这里的典型例子就是脚本能力(或者说热补能力),前面我们提过 iOS 平台的一个重要安全特性就是代码签名,由于代码签名特性、地址随机化特性、iOS App 通信特点(由 App 通过 HTTP 的方式请求 Server 上的数据),远程的在 iOS App 上获得稳定的任意代码执行是非常困难的。而脚本能力恰恰破坏了系统中基本的、重要的代码签名安全特性,可以帮助攻击者获得稳定的远程代码执行能力,从而将 App 的防御能力降维。前面有点零散的谈了我们对 iOS App 防守的理解以及防守的一些基本策略,下面我们以具体功能点为维度谈谈如何做防守。

具体功能点的防守方法


数据库文件安全

安全场景描述

移动应用程序中通常会使用 sqlite 数据库来存储应用数据,而数据库本身一般存储在沙盒文件中。尽管在 iOS 8.4 之后,已经无法访问沙盒里面的用户数据,但是在 8.4 以前的设备或者是越狱设备上,数据库文件可以轻易地通过助手类工具导出。如果数据库里面存储的数据没有进行复杂的加密处理,会是应用程序有敏感信息泄漏的风险,同时也有助于攻击者进行逆向分析。

安全加固实施建议

使用较复杂的加密加盐算法对敏感数据加密后存储。

NSUserDefaults 安全

安全场景描叙

保存用户信息和属性的一个非常普通方法就是使用 NSUserDefaults。保存在 NSUserDefaults 中的信息在应用关闭后再次打开依然存在。加之 NSUserDefaults 的使用接口非常方便,导致开发人员有可能不加以区别的把数据存放到 NSUserDefautls 中。事实上保存到 NSUserDefautls 中的数据是没有加密的,可以很轻易地从沙盒中找到。NSUserDefautls 被存储在一个以应用 Bundle ID 为名称的 Plist 文件中。

安全加固实施建议

重要的敏感数据存储在 Keychain 中。

Keychain 安全

安全场景描叙

iOS 设备中的 Keychain 是一个安全的存储容器,可以用来为不同的应用保存敏感信息比如用户名、密码、网络密码、认证令牌。苹果用 Keychain 来保存 Wi-Fi 网络密码、VPN 凭证等等。它是一个 SQLite 数据库,位于 /private/var/Keychains/keychain-2.db,其保存的所有数据都是加密过的。Keychain 在沙盒之外 App 会将部分重要数据存放在 Keychain 中使用进行读取,但若写入后未清楚就卸载 App 而下一位用户安全 App 时未清除数据,则可能到导致下次安全的时候直接从 Keychain 中读取密码登陆或手势密码无法解除等问题。

安全加固实施建议

首次安装应用程序启动后,进行删除 Keychain 数据操作。 后台快照

安全场景描叙

iOS 系统在程序退出的时候,会保存程序当前的快照到/Library/Caches/snapshots 中,如果退出的时候页面含有密码等关键信息未进行处理则会导致安全隐患。

安全加固实施建议

UIApplication 的委托方法 applicationDidEnterBackground: 可用于响应 App 进入后台并且修改敏感数据显示。例如,在进入后台的时候,把特殊字符用“hidder”属性隐藏。

Cookie 安全

安全场景描叙

Cookie 是 App 或者网站为了辨别用户身份,进行 Session 跟踪而存储在用户本地终端上的数据。如果 Cookie 以明文的形式存储,那是非常危险的。iOS 上的 Cookie 数据会被保存在 /Library/Cookies/Cookies.binarycookies 中。在越狱设备或者iOS 8.4版本之前的设备上,这个数据是可以被导出并且通过工具 Dump 数据出来的。

安全加固实施建议
1. Cookie 存放前进行较复杂的加密运算。2. 将一部分 Cookie 加密存放在 Keychain 中,增加逆向难度。

HTTPS 安全

安全场景描叙

在 iOS 应用程序中,使用 HTTPS 进行通信是一种更为安全的做法,也是官方所推荐的做法。但是即使使用了 HTTPS,也有可能因为没有校验服务器证书的原因导致被中间人劫持。如果交互请求数据处理不当,攻击者可以解密得到明文通信数据;甚至进一步伪造 App 的请求,这是极大的安全隐患。

安全加固实施建议
1. App 内要对 HTTPS 证书做校验。2. 避免使用有漏洞的第三网网络库(如 AFNetworking < 2.5.3 版本)。3. 关键数据(如登录密码、卡号、交易密码等)单独加密。

WebView 安全

安全场景描叙

在 iOS 应用程序中,WEBView 是经常使用到的一个控件,用来加载网页显示在终端上,因跨平台、动态等特性被广泛使用。但是与此同时,很多桌面浏览器前端漏洞在 iOS 终端上仍然存在。同时因为 iOS 终端上, WebView 可以注册一些敏感信息数据,比如发短信、付款、定位信息等等,也带来了一些新的安全风险。

安全加固实施建议
1. 对输入进行过滤和编码;2. 服务端对 App 发送的数据进行过滤和编码;3. 尽量减少敏感接口的注册、尽量不要加载第三方内容;如果加载,则必须在 WebView 的 Delegate 方法中,通过白名单机制实现对调用者的检验。

加密算法

安全场景描叙

在 iOS 应用程序中,经常存在敏感数据需要加密存储的场景。例如登陆密码、通讯录数据等,其加密算法被破解是相当危险的。一旦重要的算法被攻击者逆向,应用的一切数据就相当于毫无保留的展现在攻击者面前。

安全加固实施建议
1. 对称加密算法要使用 AES、DES 或 3DES,避免使用 RC4 等目前可能被爆破的算法;2. 对于数据安全性要求较高的场景并且条件允许的情况下,使用非对称加密算法如 RSA 等;3. 对称加密算法的 KEY 和 IV,应避免硬编码。若加密数据仅是本地存储,可基于设备相关的信息来生成 KEY 和 IV。

开发环境安全

安全场景描叙

开发人员可能会从非官方渠道下载开发环境或者开发工具。被修改过的恶意开发工具可能会在打包 IPA 文件时,插入恶意代码。另外,由于配置不当,打包 IPA 文件时,可能会把源码或者开发文档打包进入 IPA。

安全加固实施建议
1. 从官方下载开发工具 Xcode;2. 打包 IPA 文件时,管理好 Xcode 的 Build Phases、Copy Bundle Resources。

系统日志输出安全

安全场景描叙

开发过程中通常会使用 NSLog 来输出日志,用于调试 Bug 和测试功能。因此在打印出来的 Log 中很容易会泄漏程序的关键逻辑和用户敏感数据,降低了逆向破解的难度,增加了敏感信息泄漏的风险。如果 Release 包里面没有关闭系统日志,通过 Xcode Device 等工具,可以很容易地看到应用程序 Log 的打印。

安全加固实施建议
1. 使用宏来控制测试版和发布版本的日志输出;2. 安全测试和对外发布时使用 Release 版本,关闭日志输出。

“ZipperDown漏洞怎么处理”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: ZipperDown漏洞怎么处理

本文链接: https://www.lsjlt.com/news/295916.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ZipperDown漏洞怎么处理
    本篇内容介绍了“ZipperDown漏洞怎么处理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!出发点与基本策略我们谈的主要是防守,谈防守就要...
    99+
    2023-06-19
  • iOS曝ZipperDown漏洞 快手、陌陌等均受影响!
      智能手机作为大家日常生活中越来越不可分割的一部分,往往储存有用户的大量个人信息,一旦手机出现漏洞被黑客利用,那对于受害用户来讲将造成相当大的影响。  有些用户可能正是考虑到了安全问题,所以选择了较为安全的搭载iOS系统的苹果手机,大家普...
    99+
    2023-06-04
  • 云服务器漏洞怎么处理
    云服务器漏洞的处理方法:登录云服务器提供商平台。打开云服务器管理控制台,进入安全中心界面。点击“待处理漏洞”功能,进入管理界面。选择要修复的漏洞,点击右侧的“修复”。在弹出来页面中,点击“一键修复”,等待任务修复成功即可。...
    99+
    2024-04-02
  • 网站黑链漏洞怎么处理
    网站黑链漏洞的处理方法:先备份网站程序数据,将网站文件放进杀毒软件里面进行全部扫描。对扫描出问题的文件进行检查,查看是否有被修改过。将可疑代码清理后,对网站目录权限如:“读”、“写”、“执行”、“是否允许脚本”等进行分配即可。...
    99+
    2024-04-02
  • 云服务器漏洞怎么处理的
    立即通知用户:如果发现云服务器漏洞,CSP应该立即通知用户,并尽快采取措施防止漏洞被利用。可以通过在云服务器控制面板中设置自动更新和警报,以及在用户登录云服务器账户时进行安全验证等方式来通知用户。 限制权限:CSP应该限制用户对云服务器的...
    99+
    2023-10-28
    怎么处理 漏洞 服务器
  • 网站存在系统漏洞怎么处理
    网站存在系统漏洞的处理方法:打开控制面板功能。点击“系统和安全”。找到相关的防火墙设置,点击进入。再对防火墙进行更新即可。或者借助腾讯电脑管家来进行检测修复。...
    99+
    2024-04-02
  • 网站明文传输漏洞怎么处理
    网站明文传输漏洞的处理方法:可以在前端对信息进行加密,就算被拦截也只能看到加密后的信息,代码示例如下:package com.owen..util;import java.io.BufferedOutputStream;import jav...
    99+
    2024-04-02
  • apache网站漏洞如何处理
    apache网站漏洞的处理方法:将apache版本更新到最新版。对apache配置文件进行修改,将solrconfig.xml配置文件里的datainport值都注释掉,关闭数据收集功能。更新网站文件,覆盖掉被修改的文件。...
    99+
    2024-04-02
  • 怎么理解CVE安全漏洞
    这篇文章主要讲解了“怎么理解CVE安全漏洞”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么理解CVE安全漏洞”吧!几乎oracle的每个季度发布的数据库补...
    99+
    2024-04-02
  • phpmyadmin漏洞属于什么漏洞
    phpmyadmin 易受多种漏洞影响,包括:1. sql 注入漏洞;2. 跨站点脚本 (xss) 漏洞;3. 远程代码执行 (rce) 漏洞;4. 本地文件包含 (lfi) 漏洞;5....
    99+
    2024-04-08
    mysql phpmyadmin
  • 发现高危漏洞如何处理
    计算机出现高危漏洞的解决方法首先,在计算机中下载并安装好360安全卫士;安装好360安全卫士后,进入360安全卫士主页,并在主页面中点击左下角的“查杀病毒”选项;进入到查杀病毒页面后,在页面中点击“漏洞修复”选项;在弹出的漏洞修复页面中,对...
    99+
    2024-04-02
  • intel处理器漏洞如何修复
    修复intel处理器漏洞的方法首先,在计算机中安装好电脑管家;电脑管家安装好后,进入电脑管家应用程序界面,并在界面中选择“修复漏洞”选项;在弹出的漏洞修复界面中,对cpu漏洞进行扫描;最后,cpu漏洞扫描出来后,点击右上角的“一键修复”按钮...
    99+
    2024-04-02
  • redis未授权漏洞如何处理
    redis未授权漏洞的处理方法:1.禁用远程修改DB文件地址。2.添加requirepass mypassword。3.禁止外网访问Redis。4.将配置文件中”Port 6379“改成其他端口。5.设置iptables策略仅允许指定的IP...
    99+
    2024-04-02
  • 漏洞原理——ssrf
    一、什么是SSRF 1、简单了解 SSRF (Server-Side Request Forgery,服务器端请求伪造) 是一种由攻击者构造请求,由服务端发起请求的安全漏洞,一般情况下,SSRF攻击的...
    99+
    2023-09-09
    安全
  • 怎样处理Java程序中的内存漏洞
    本篇文章为大家展示了怎样处理Java程序中的内存漏洞,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 Java 程序中也有内存漏洞?当然有。与流行的观念相反,在 Java 编程中,内存管理仍然是需要考...
    99+
    2023-06-03
  • 阿里云服务器手动修复漏洞怎么处理
    阿里云服务器是一种云计算服务,它提供了强大的计算、存储和网络功能,为企业和个人提供了灵活的云计算解决方案。然而,在使用阿里云服务器时,可能会出现各种漏洞,这些漏洞可能会给服务器的安全带来威胁。为了确保服务器的安全性,及时修复漏洞是非常重要...
    99+
    2024-01-16
    阿里 怎么处理 漏洞
  • nginx漏洞怎么修复
    修复nginx漏洞的方法首先,在计算机中卸载nginx;yum remove nginxnginx卸载好后,重新下载nginx包;wget http://nginx.org/packages/centos/7/noarch/RPMS/ngi...
    99+
    2024-04-02
  • redis漏洞怎么预防
    redis漏洞的预防方法:禁止外网访问Redis,例如修改redis.conf 文件中”bind 127.0.0.1“,使得Redis服务仅当前主机可用。2将配置文件redis.conf中的”Port 6379“,改成其他端口。设置ipta...
    99+
    2024-04-02
  • ewebeditor漏洞怎么修复
    修复ewebeditor漏洞的步骤如下:1. 确定漏洞的具体细节和影响范围:通过对漏洞的分析和测试,了解漏洞的具体原因和可能造成的危...
    99+
    2023-09-21
    ewebeditor
  • rce漏洞怎么修复
    使用电脑管家修复rce漏洞,具体方法如下:首先,在计算机中下载并安装好电脑管家;电脑管家安装好后,并进入;进入到电脑管家页面后,在页面左侧菜单栏中点击“工具箱”选项;在弹出的工具箱页面中,点击“修复漏洞”选项;进入到修复漏洞页面后,在页面中...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作