/*
本文章由 莫灰灰 编写,转载请注明出处。
作者:莫灰灰 邮箱: minzhenfei@163.com
*/
通过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的方法,程序猿在编写驱动的时候套用模板,最后埋了个坑。