Android 调试器爆漏洞,可获取设备内存数据
本月中旬,谷歌推出了针对查找安卓系统漏洞的“安卓安全奖励”计划,发现一次漏洞最少可获500美元奖励。不过半月,真的有人发现了安卓系统漏洞。趋势科技(Trend Micro)近日发现了存在于Android调试器Debuggerd中的漏洞,该漏洞可以获取设备内存中的数据,包括Android 4.0 Ice Cream Sandwich(冰淇淋三明治)到Lollipop(棒棒糖)等系统均受到影响。
Debuggerd 是android的一个daemon进程,负责在进程异常出错时,将进程的运行时信息dump出来供分析。Debuggerd生成的coredump数据 是以文本形式呈现,被保存在 /data/tombstone/ 目录下,共可保存10个文件,当超过10个时,会覆盖重写最早生成的文件。从4.2版本开始,Debuggerd同时也是一个实用工具:可以在不中断进程 执行的情况下打印当前进程的native堆栈。这可以协助分析进程执行行为,但最最有用的地方是:它可以非常简单的定位到native进程中锁死或错误逻 辑引起的死循环的代码位置。
然而一个构造精巧的ELF(Executable and Linkable Format)文件可以导致调试器崩溃,然后通过tombstone文件和对应的logd日志文件暴露内存内容。此文件可用于拒绝服务攻击,以及帮助绕过 ASLR执行恶意代码。导致漏洞的原因是在执行字符串复制命令时,Debuggerd会使用sym->st_name作为offset,而不进行错 误检查。这个值可以轻易被恶意的ELF文件控制,它可以将offset值指向不可读取的内存,从而导致Debuggerd崩溃。如果反复崩溃就会造成拒绝 服务攻击,也无法再连接Debuggerd了。如果精心构造offset就会使Debuggerd暴露相应的内存内容,Debuggerd会将它们存入 dump和log文件中。不过仅仅利用该漏洞是无法进行代码执行的,而通过该漏洞暴漏的信息则可以和其他漏洞结合从而用于代码执行。
该 漏洞可被恶意或重新打包的应用程序利用。不过因为不能直接通过代码执行,能造成的影响会相对有限。目前受到漏洞影响的系统版本包括Android 4.0 (Ice Cream Sandwich)到Lollipop(5.x),而在最新版本Android M中该漏洞已经得到了修复。
据 悉,趋势科技已经在今年4月27日向谷歌提交了漏洞报告,谷歌承认了该问题的存在,并将其判定为低等级漏洞。在今年5月15日的Android Open Source Project (AOSP,Android 开放源代码项目) 大会上,谷歌更新了一个针对该漏洞的补丁。
文章转载自 开源中国社区 [http://www.oschina.net]
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
FireFox 开发方 Mozilla 裁员,Firefox OS 停摆
由浏览器引擎驱动的操作系统无法获得成功,共有 50 名员工被裁。 知名的 Firefox 火狐浏览器开发方,非营利机构 Mozilla 最近裁掉了设备工具组全部 50 名员工。这意味着,基于火狐浏览器引擎的操作系统 Firefox OS 彻底停摆了。 从 2013 年第一个商业化版本发布开始,Mozilla 就试图将 Firefox OS 安装到手机、平板和智能电视等产品中。 跟我们通常所理解的操作系统工作机制不太相同,Firefox OS 几乎全部使用 HTML 5、CSS 3、Javascript 和一部分 C++ 语言编写而成,内置了火狐浏览器的 Gecko 渲染引擎,利用开放的 web API 接口在手机上实现近似于本地软件的各种功能。 相比于另一个开源系统 Android 要求独立打包的本地 app,Firefox OS 上的应用在代码层面其实跟网站没什么区别,只不过展示样式更适合小尺寸触屏设备了。 受限于渲染引擎和 HTML 5 的性能,Firefox OS 很难提供媲美 Android 本地应用的流畅体验。在 Firefox OS 发展早期,只有少量硬件配置很差的低端入门...
- 下一篇
Swift 开源带来的思考
苹果全球开发者大会今年的“猛料”不如往期,但Swift开源的消息,却足以赚足开发者眼球。关于苹果为什么开源Swift的分析已是铺天盖地,就无需多言,在这里更想由此思考一下语言发展的趋势及伴随的现象。 苹果全球开发者大会总能掀起一股旋风,虽然今年大会的“猛料”不如往期,但Swift在今年晚些时候开源的消息,却足以赚足开发者眼球。 其实苹果的行事风格,我还是蛮喜欢的:“苹果把自家的事情做好,给用户最酷的体验,他的实力就是我行我素的资本,而用户也欣然接受这样的苹果。”不过,苹果有自己的平台、软硬件,Swift也才发布将近一年的时间,这么快就开源Swift? 关于苹果为什么开源Swift的分析已是铺天盖地,就无需多言,我觉得最重要的一点还是——通过吸引更多的开发者使用Swift,获得更多的支持以及创意,能够为苹果带来更大的商业利益。 在这里,我更想由此思考一下语言发展的趋势及伴随的现象。 一、语言/工具的封闭模式已经落伍了 十来年前的软件公司还有封闭资本,那时候的VB、Delphi足够好用,尽管盗版也很普遍,但光靠卖这些工具就能赚到盆满钵满。到了后 来,Delphi几经挣扎还是没落了。当年李维...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7设置SWAP分区,小内存服务器的救世主