AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

知名开源库 AFNetworking 曝 SSL 漏洞,2.5 万 iOS 应用受影响

  • 2015-05-06
  • 本文字数:967 字

    阅读完需:约 3 分钟

AFNetworking 是一个开源代码库,允许开发人员向 iOS 和 OS X 应用添加网络功能。2015 年 4 月 20 日,安全分析创业公司SourceDNA 曝光了AFNetworking 中一个影响了1500 多个iOS 应用的漏洞。不过很快, AFNetworking 2.5.2 就修复了该漏洞。然而三天之后,SourceDNA 又曝出了 AFNetworking 中一个更为严重的漏洞。该漏洞至少影响了苹果应用商店中 25000 个 iOS 应用。

据 Arstechnica报道,该漏洞是因为 AFNetworking 默认未检查证书中的域名与它所保护的 HTTPS 服务器的域名一致所导致的。攻击者使用任意合法的 SSL 证书搭配任意域名就可以利用该漏洞进行中间人攻击,即使这些数据是通过 SSL 协议传输。SourceDNA 公司创始人 Nate Lawson 告诉 Arstechnica:

如果一个应用使用了这个有缺陷的库,那么拥有任意合法证书的攻击者都可以窃取或修改由这个应用发起的会话。这个是因为,虽然证书经过验证,可以保证是由合法的证书颁发机构所颁发,但证书中的域名没有验证。比如,攻击者提供域名“sourcedna.com”的一个合法证书就可以伪装成“microsoft.com”。

SourceDNA 公司的 Ivan Leichtling 最早发现了该漏洞。但让他们觉得奇怪的是,AFNetworking 2.5.2 没有修复该 Bug,因为在 3 月底的时候,AFNetworking 维护者就号称已经通过更新代码修复了它。AFNetworking2.5.2 修复了攻击者可以使用自签名证书监听iOS 应用与其服务器之间加密通讯的问题,但没有认真校验可信签名证书是否是颁发给某个合法域名,从而导致了新的安全问题。目前任何使用 AFNetworking 2.5.3 以下版本的应用都可能将数据暴露给攻击者。SourceDNA 建议开发人员,如果使用了 AFNetworking,务必要升级到最新版本。并且还需启用公钥或者“证书锁定(certificate pinning)”。

SourceDNA 提供了一款免费在线检测工具,iOS 用户可以通过该服务检查他们使用的应用是否仍然处于易受攻击的状态。之所以没有提供一个易受攻击的应用的列表,是为了防止被攻击者滥用。但大量知名应用都面临这一漏洞的威胁,包括但不限于雅虎和微软的iOS 应用以及国内外众多金融类Apps,等。


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-05-06 07:272609
用户头像

发布了 1008 篇内容, 共 423.0 次阅读, 收获喜欢 346 次。

关注

评论

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

java并发之Condition图解与原理剖析,推荐

Java 程序员 后端

Java并发之Condition详解,springframework教程

Java 程序员 后端

Java岗开发者福利!Github热度飙升的多线程学习手册,已获31k+star

Java 程序员 后端

文本行随机打乱工具

入门小站

工具

Java并发关键字-final,java实战视频

Java 程序员 后端

Java是未来的第一编程语言吗?,3分钟告诉你为什么要用Java开发高频交易系统

Java 程序员 后端

Java常量池理解与总结,java线程池回收原理

Java 程序员 后端

Java架构师职位常见面试题,看完面试不再慌!

Java 程序员 后端

Java日常开发的21个坑,你踩过几个?,java基础程序代码编写

Java 程序员 后端

架构实战营毕业总结

VE

架构实战课

Java死锁的原因例子及解决方法,三年Java开发

Java 程序员 后端

自由职业者靠什么赚钱?

石云升

职场经验 10月月更

Java实现经典算法,阿里java技术专家面试

Java 程序员 后端

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day26

Java 程序员 后端

Java岗大厂面试百日冲刺【Day42】,java基础面试宝典

Java 程序员 后端

Java市场饱和了吗?现在转行学习Java会不会太晚了?

Java 程序员 后端

033云原生之云服务测评指标体系

穿过生命散发芬芳

云原生 10月月更

Java开发必备 Git 分支开发:规范指南及完全学会Git的24堂课笔记

Java 程序员 后端

Java注解-一文就懂,java程序设计与实践教程王薇

Java 程序员 后端

Java实现图的存储和创建,linux编程基础课后答案第二章

Java 程序员 后端

【架构设计模块九】:设计电商秒杀系统

Ryoma

linux去掉空行的几种方法

入门小站

Linux

Java开发工作4年还是只会“增删改查”,java技术栈太广

Java 程序员 后端

Java异常架构与异常关键字,海康威视java开发面经

Java 程序员 后端

Java架构师面试之Netty面试专题及答案(共10题,含详细解答

Java 程序员 后端

架构实战营第1期-毕业设计项目

Anyou Liu

「架构实战营」

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day14

Java 程序员 后端

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day16

Java 程序员 后端

java实现简单二叉树,深入分布式缓存从原理到实践技术分享

Java 程序员 后端

Java架构师面试问些什么?微服务之springcloud面试题(共22题

Java 程序员 后端

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

Java 程序员 后端

知名开源库AFNetworking曝SSL漏洞,2.5万iOS应用受影响_安全_谢丽_InfoQ精选文章