Stagefright高危漏洞已經曝光一年,Google也早就通過月度安全更新來修復。然而由于原始設備制造商們的推送并不給力,當前仍有數億的Android設備面臨著巨大的風險。Stagefright利用了Android系統中媒體服務處理的一個漏洞,盡管其已經被封堵,但開發者們仍震驚于它為何有如此強大的破壞力。好消息是,為了消除Stagefright高危漏洞的后續影響,Google決定在Android N中作出重大的改進。
媒體服務(mediaserver)擁有太大的能量,意味著其一旦被攻擊者利用,就可以獲得與Android子系統相當的訪問權限。
媒體服務幾乎可以訪問任何與多媒體相關的內容,包括音頻、攝像頭、甚至無線網絡。顯然,用單個進程來承擔如此多的工作,是相當危險的(可能還有更多的漏洞)。
Stagefright利用了mediaserver在媒體解析代碼上的漏洞——要解析媒體,你得需要讀取文件,但肯定沒必要去調用攝像頭。
在Android N中,Google將媒體服務拆分成了不同的片塊,每個都只能訪問一個特定的子系統。
比如,音頻服務(AudioServer)只可訪問所有音頻內容,而攝像頭服務(CameraServer)只能調用攝像頭。
此外,Android N中還有拆分出來的提取服務(ExtractorService)、解碼器服務(MediaCodecService)、DRM服務(MediaDrmService)。
如果你的設備正運行著Android 6.0 Marshmallow,那么媒體服務就已經被拆解成了上述6小塊。