1. 程式人生 > >Android平臺上直接實體記憶體讀寫漏洞的那些事

Android平臺上直接實體記憶體讀寫漏洞的那些事

/*

本文章由 莫灰灰 編寫,轉載請註明出處。  

*/

通過mmap直接操作實體記憶體的漏洞應該算是比較常見的一類漏洞了,在2012年、2013年的這段時間裡,爆出了好幾個實體記憶體讀寫相關的漏洞。主要是因為某些裝置本身具有mmap實體記憶體的功能,但是其許可權又是全域性可讀寫的,最後,黑客通過精心構造的引數,patch相關函式或者資料結構達到許可權提升的目的。

這樣的裝置主要有以下幾個

/dev/dhcp 

/dev/graphics/fb0

(後面兩個沒有搜尋到cve編號,但是利用程式碼網上都有)

此類漏洞的形成主要還是編寫驅動裝置的程式設計師在驅動中實現了mmap方法但是卻沒有校驗引數,例如對呼叫者,map的地址做校驗等等。

還有就是/dev/msm_camera/config0的裝置,本身並不需要mmap的方法,程式設計師在編寫驅動的時候套用模板,最後埋了個坑。