中國黑客組織發(fā)現(xiàn)第二個Android萬能密鑰漏洞
一個中國的安全組織Android Security Squad稱他們發(fā)現(xiàn)了第二個萬能密鑰,能夠在不破壞應用簽名的情況下修改應用本身。
一個文件或者文檔的數(shù)字簽名的關鍵作用就是為了證明該文件或文檔沒有被修改過。這個過程使用了一個公鑰加密算法。在這個中國版本的攻擊中,惡意代碼可以添加在文件的頭部。但是由于目標文件需要小于64K,因此這段惡意代碼的功能被限制了。
APK 文件使用了一種流行的ZIP壓縮算法進行了壓縮。多數(shù)的壓縮行為不會把兩個文件名相同的文件放到同一個歸檔中。但是其實算法本身并沒有禁止這種可能性。所以兩個版本的classes.dex文件會被放在包裹中,一個原始的和一個被惡意修改過的。
當檢查應用的數(shù)字簽名的時候,安卓系統(tǒng)會匹配第一個符合特征的文件,但是當真正執(zhí)行并啟動文件時,會使用第二個被修改過的。為了把一個應用變得像木馬一樣,你需要做的僅僅是把你的惡意代碼改成一個在應用中已經存在的名字。
這個漏洞和由國外移動安全公司Bluebox Security發(fā)現(xiàn)的第一個萬能密鑰的漏洞非常相似。根據(jù)BlueBox的說法,有99%的移動設備受到該漏洞的影響。谷歌已經修復了這個問題并提交到了安卓源碼開放項目中(AOSP)
你也可以使用ReKey ,一個免費的移動應用用來修復安卓萬能密鑰漏洞。
安卓安全小分隊技術分析:http://blog.sina.com.cn/s/blog_be6dacae0101bksm.html