Android常见缺陷.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android常见缺陷

前言 Android作为最流行的移动平台 安全性非常重要,带来的影响不必多说 主要关注以下几个方面 1. Android本身的安全性 2. Linux内核 3. 设备制造商引入的问题 从init说起 init是第一个启动的程序 root权限运行 执行init.rc脚本 提供property服务 其中的存在的利用点 init.rc中存在的逻辑缺陷 根据property不同,某些服务的行为 init.rc中的逻辑缺陷 两个概念 1. 符号链接 ln -s source target 2. uevent 当发生硬件变化时,内核将产生uevent,默认配置编译的 内核,将以root权限,运行/sys/kernel/uevent_helper中设 置的程序 init.rc中的逻辑缺陷 4.1之前的init会follow符号链接 例子: 如果存在这样的东西 ls -l /data srwxrwxrwx ... abc - /some/where/xyz 恰好init.rc中有这样的语句 chmod 644 /data/abc shell shell 后果会怎么样? init.rc中的逻辑缺陷 bingo!有段时间确实有这样的好事。 mkdir /data/local/tmp shell shell chmod 771 /data/local/tmp 如果这么做: adb shell $ rm -r /data/local/tmp $ ln -s /sys/kernel/uevent_helper /data/local/tmp init.rc中的逻辑缺陷 某厂商H的例子 mkdir /data/drm 0775 system sdcard_rw chown system sdcard_rw /data/drm chmod 0775 /data/drm mkdir /data/drm/rights 0775 system sdcard_rw chown system sdcard_rw /data/drm/rights chmod 0775 /data/drm/rights init.rc中的逻辑缺陷 某厂商H的例子 如何利用? init.rc中的逻辑缺陷 某厂商H的例子 如何利用? 普通app声明WRITE_EXTERNAL_STORAGE权限 那么app就会被加入sdcard_rw组 结合上面的符号链接...... init.rc中的逻辑缺陷 persist类型的property的利用 property service是运行在init进程中的 在某个版本之前 setprop persist.sys.timezone Asia/Shanghai 的逻辑是这样的 write Asian/Shanghai /data/property/.temp mv /data/property/.temp /data/property/persist.sys.timezone 局限在于/data/property只有root才可读写 init.rc中的逻辑缺陷 persist类型的property的利用 如果从一开始就出现了 ls -l /data/property srwxrwxrwx ... .temp /sys/kernel/uevent_helper 然后 $ setprop persist.guheihei /data/local/tmp/mybackdoor 这并非不可能,如果哪天挂载在/data的设备是可拔插的 制造出这种场景是可能的 Linux内核缺陷 特点 影响范围广 后果一般都非常严重 不容易通用 最近多年才能得到一见 Linux内核缺陷 性能计数器数组下标越界 2013.04初公布 几乎所有市面上在此时间之前的未升级的手机收到影响 任何app都能利用这个缺陷获得root权限 利用起来不太方便 Linux内核缺陷 性能计数器数组下标越界 修复极其简单: Linux内核缺陷 性能计数器数组下标越界 几个关键点 Linux内核缺陷 性能计数器数组下标越界 漏洞的效果和局限性 可以控制一个内核数组的下标 令其内容+1 每利用一次,消耗掉一个文件描述符 速度慢 受限于内核资源限制 Linux内核缺陷 性能计数器数组下标越界 利用的思路 找到一个普通应用能访问的设备 其file_operation结构非const修饰从而可写 填写其中未实现的一个函数指针,由我们自己实现 然后触发它 符合条件的最好的设备:/dev/ptmx Linux内核缺陷 性能计数器数组下标越界 资料

文档评论(0)

tmd2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档