Android平台上直接物理内存读写漏洞的那些事

/*

本文章由 莫灰灰 编写,转载请注明出处。

作者:莫灰灰    邮箱: [email protected]

*/

通过mmap直接操作物理内存的漏洞应该算是比较常见的一类漏洞了,在2012年、2013年的这段时间里,爆出了好几个物理内存读写相关的漏洞。主要是因为某些设备本身具有mmap物理内存的功能,但是其权限又是全局可读写的,最后,黑客通过精心构造的参数,patch相关函数或者数据结构达到权限提升的目的。

这样的设备主要有以下几个

/dev/exynos-mem CVE-2012-6422 http://blog.csdn.net/hu3167343/article/details/34425995

/dev/msm_camera/config0 CVE-2013-2595 http://blog.csdn.net/hu3167343/article/details/34434235

/dev/dhcp

/dev/graphics/fb0

(后面两个没有搜索到cve编号,但是利用代码网上都有)

此类漏洞的形成主要还是编写驱动设备的程序员在驱动中实现了mmap方法但是却没有校验参数,例如对调用者,map的地址做校验等等。

还有就是/dev/msm_camera/config0的设备,本身并不需要mmap的方法,程序员在编写驱动的时候套用模板,最后埋了个坑。

Android平台上直接物理内存读写漏洞的那些事

时间: 2024-08-24 16:39:47

Android平台上直接物理内存读写漏洞的那些事的相关文章

如何在android平台上使用js直接调用Java方法[转]

转载自:http://www.cocos.com/docs/html5/v3/reflection/zh.html #如何在android平台上使用js直接调用Java方法 在cocos2d-js 3.0beta中加入了一个新特性,在android平台上我们可以通过反射直接在js中调用java的静态方法.它的使用方法很简单: var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parame

【cocos2d-js官方文档】二十四、如何在android平台上使用js直接调用Java方法

在cocos2d-js 3.0beta中加入了一个新特性,在android平台上我们可以通过反射直接在js中调用java的静态方法.它的使用方法很简单: var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...) 在callStaticMethod方法中,我们通过传入Java的类名,方法名,方法签名,参数就可以直接调用Java的静态方法,并且可以获得Java方法的返回

Android平台上抓包

经常会有一些测试需求比如:测试手机上某个app的网络通信是否已经加密,或者测试某个app是否偷偷链接某些网站. 根据抓包的对象,主要有两种途径: 1. 在路由器端抓包:使用一台已经连入路由器的PC来抓取路由器上所有的数据传输信息. 2. 在终端抓包:在终端(手机,平板等)上抓取次终端设备的网络传输信息. 注意:可以很容易通过网络下载到很多可以用来抓包的apk,但是前提是android手机或者终端要root过,笔者试过其中的一.二款,感觉不够理想. 其实网上的这些工具也都是使用tcpdump这款命

Android平台上关于IM的实践总结

前言 IM通信在互联网发展到现在已经是码农的世界里人尽皆知的技术,特别在当下移动互联网迅猛发展的时代这种技术的开发也更加火热,其中老牌的代表作就有QQ和MSN,和最近新崛起的微信,默默,易信,来往等眼花缭乱的各种应用都把IM技术应用其中.我是Android开发人员,写这篇文章主要原因也是因为我自己从事开发以来主要做过的几款APP都是包含着IM通信,在不断的摸爬滚打的解决问题的过程中,积累了一些经验记录便将其记录到博客中作为自己一个阶段性的总结,也可以分享其他需要的开发者,作为一种参考实践的方案,

Freeline - Android平台上的秒级编译方案

FreeLine是什么? Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队15年10月在Android平台上的量身定做的一个基于动态替换的编译方案,5月阿里集团内部开源,稳定性方面:完善的基线对齐,进程级别异常隔离机制.性能方面:内部采用了类似Facebook的开源工具buck的多工程多任务并发思想:端口扫描,代码扫描,并发编译,并发dx,并发merge dex等策略,在多核机器上有明显加速效果,另外在class及dex,resources层面作了相应缓存策略,做到真正增量开发,另外引入

Android平台上最好的几款免费的代码编辑器

使用正确的开发工具能够快速有效地完成源代码的编写和测试,使编程事半功倍.在网络信息高速发展的今天,移动设备的方便快捷已经深入人心,越来越多的程序员会选择在任何感觉舒适的地方使用移动设备查看或者编辑源代码.于是,Android平台上大量基于代码编程的应运而生,谷歌应用商店里的代码编辑器.编译器和开发环境比比皆是.由于不同的工具特性和缺点不尽相同,因此如何选择一款最适合自己的开发工具便成了一件头疼的事情.在这里,我们列出了Android平台上5款最好的代码编辑器来帮助你作出选择. 1. Quoda

在Android平台上编译faad2

1.从官网下载源码 2.编辑一个config.h: /* config.h. Generated from config.h.in by configure. */ /* config.h.in. Generated from configure.in by autoheader. */ /* Define if you want to use libfaad together with Digital Radio Mondiale (DRM) */ /* #undef DRM */ /* De

cocos js js java互调 (如何在ANDROID平台上使用JS直接调用JAVA)

在cocos2d-js 3.0beta中加入了一个新特性,在android平台上我们可以通过反射直接在js中调用java的静态方法.它的使用方法很简单: var o = jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...) 在callStaticMethod方法中,我们通过传入Java的类名,方法名,方法签名,参数就可以直接调用Java的静态方法,并且可以获得Java方法的返回

(转) Android平台上关于IM的实践总结

前言 IM通信在互联网发展到现在已经是码农的世界里人尽皆知的技术,特别在当下移动互联网迅猛发展的时代这种技术的开发也更加火热,其中老牌的代表作就有QQ和MSN,和最近新崛起的微信,默默,易信,来往等眼花缭乱的各种应用都把IM技术应用其中.我是Android开发人员,写这篇文章主要原因也是因为我自己从事开发以来主要做过的几款APP都是包含着IM通信,在不断的摸爬滚打的解决问题的过程中,积累了一些经验记录便将其记录到博客中作为自己一个阶段性的总结,也可以分享其他需要的开发者,作为一种参考实践的方案,