iOS 的这5个零日漏洞链已被利用多年

2019 年 9 月 07 日

iOS 的这5个零日漏洞链已被利用多年

据谷歌威胁分析小组(TAG)工程师 Ian Beer 报道,有 14 漏洞几乎影响了从 iOS 10 到 12 的所有 iOS 版本。这些漏洞已经被黑客利用至少 2 年了。他们通过入侵的网站控制访客设备,窃取了大量私人数据。

其中 7 个漏洞影响了 iOS 浏览器,5 个是内核漏洞,2 个是沙箱逃逸。它们被用来创建了 5 个攻击链,从最初侵入设备(通常是利用浏览器漏洞),到通过攻击取得更高特权级别来访问私人数据。按照 Ian Beer 的说法,这些漏洞大多是由糟糕的质量或明显的错误造成的,它们本不应该出现在可交付的软件里。例如,有一个内核漏洞与嵌入式GPU 驱动程序中C++ 方法堆溢出相关。该方法解析用户提供的数据,而不执行必要的边界检查。另一个内核漏洞是由代码重构引起的,使用 !=替换了 <。在这段代码中,被检查的值是直接从 IPC 消息中读取的。在未经过滤的情况下使用用户数据,还有一个类似的情况,IOKit 公共方法中的另一个内核漏洞是罪魁祸首,该方法使用用户提供的 length 参数执行 memmove 。另有一个很难证明的漏洞与苹果在 2014 年添加的一些“未完成”的代码有关。这些代码是为了实现“优惠券”(vouchers)功能。如果在测试中或实际应用中使用预期的参数调用,就会导致内核错误。根据 Beer 的说法,这些漏洞中有许多应该在单元测试、代码评审或模糊检查时检测出来。

在分析这些漏洞时,Beer 甚至构建了自己的命令和控制服务器,以调查攻击者在获得非沙箱代码执行特权 root 后,可以访问哪些类型的数据。具体来说,他发现所有主要的应用,包括 Whatsapp、Telegram、iMessage、Gmail、Contacts 等,都会泄露未经加密的数据,攻击者几乎可以访问设备上所有可用的个人信息。Beer 指出,尽管谷歌识别出了一些被黑客攻击的网站,它们一直在利用这些漏洞链,但这并不意味着只有它们在这么做。

我们也要记住,对于攻击者来说,这是一次失败:我们发现了这些攻击活动,但几乎可以肯定,还有其他我们没有发现的攻击活动。

也许,我们能从这个故事得出的最重要的结论是,没有一种系统可以认为是安全的,即使是在这方面备受推崇的 iPhone,用户应该意识到这一点。

实际用户是根据公众对这些设备的安全性的看法来做风险决策的。现实是,如果你成为攻击目标,安全保护措施永远无法消除你被攻击的风险。

Beer 说,更糟糕的是,这些攻击不是以个体为目标。相反,攻击往往是针对大量目标展开的。在这种情况下,只要你属于某一目标群体,无论是按地理划分还是按种族划分,都会受到攻击。

要了解所有细节信息,请阅读 Ian Beer 的系列文章,其中深入探讨了所有漏洞的细节,以及如何将这些漏洞链接在一起实现攻击。

原文链接:

Five 0-Days iOS Vulnerability Chains Have Been Exploited For Years

2019 年 9 月 07 日 08:00 4649
用户头像

发布了 0 篇内容,共 1292566 次阅读,收获喜欢 559 次。

关注

评论

发布
暂无评论
发现更多内容

Hadoop集群搭建-02安装配置Zookeeper

虚拟世界的懒猫

hadoop zookeeper centos7

配置微软Azure大数据HDInsight云集群

虚拟世界的懒猫

microsoft 大数据 微软 azure hdinsght

让你写出来的代码像诗一样优美!《Java开发手册》PDF下载

Kareza

Java 阿里巴巴 Java规范 Java开发手册

如何无缝的将Flutter引入现有应用?

稻子

flutter ios android 开源 移动应用

Hadoop集群搭建-01前期准备

虚拟世界的懒猫

hadoop hdfs mapreduce zookeeper centos

Hadoop集群搭建-04安装配置HDFS

虚拟世界的懒猫

hadoop

安装VMware16兼容Hyper-v+WSL2+Docker+解决0x80370102报错

虚拟世界的懒猫

Docker vmware vm hyper-v WSL2

选赵敏还是选小昭,这可真是个问题 | Decision Tree

张利东

Python 机器学习 算法 决策树

你真的理解 Java 的基础数据类型吗

Rayjun

Java

消息队列Kafka - Kafka中的选举

Java收录阁

kafka

程序员,你最重要的选择是和谁结婚,你最重要的能力是赚钱,钱和女友两手抓

陆陆通通

程序员 赚钱 女朋友 找对象

机器学习中常用的处理手段

子夜

深度学习

【终于解决】ubuntu19安装nvidia驱动后屏幕亮度默认最亮不可调节

虚拟世界的懒猫

ubuntu 英伟达

当 Redis 发生高延迟时,到底发生了什么

程序员历小冰

redis Linux 延迟

centos6搭建NEXUSphp pt私人种子站

虚拟世界的懒猫

centos nexusphp pt bt

Zookeeper选举机制

tunsuy

zookeeper 开源 源码分析 分布式协同

idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD

虚拟世界的懒猫

spring mybatis ssm springmvc java8

Hadoop集群搭建-03编译安装hadoop

虚拟世界的懒猫

hadoop centos7

利用Translate ToolKit 2.5.0 API构建Flask web app

虚拟世界的懒猫

Python nginx flask uwgsi translate

跬步贴|5分钟搞定缓存击穿问题

架构师跬步营

管理信息系统课程基础知识

Sicolas Flamel

张小龙 的 22 年和微信的 8 年

池建强

微信 张小龙

思考如何节省时间,节省出时间进行思考

伯薇

思考 时间管理 思考力 工作效率 提升效率

程序员陪娃漫画系列——喂药

孙苏勇

程序员 生活 程序员人生 陪伴 漫画

做好仓储控制系统(WCS)的关键

阿喜伯

仓储控制系统 WCS

向 "忙忙碌碌泯然众人" say no

Sicolas Flamel

时间分配 时间管理

从“成为作者”到“立即创作”:开启你的“写作极客”生活

岛乾坤

写作

为什么开源是基础软件的未来

顾钧

开源 基础软件

容器日志采集利器:Filebeat深度剖析与实践

傅轶

Kubernetes 容器 云原生 日志 Filebeat

万字破解云原生可观测性

谭建

云原生 APM 可观测性 链路追踪 Skywalking

Hadoop集群搭建-05安装配置YARN

虚拟世界的懒猫

hadoop

iOS 的这5个零日漏洞链已被利用多年-InfoQ