這裏有一個很好的報告,通過Android市場犯下最近的一個騙局。如何保護Android應用程序免遭盜竊和應用程序本身的修改?
http://www.theregister.co.uk/2011/12/12/android_market_malware/
有人複製了一些流行的遊戲的apk文件從一個根深蒂固的手機,與smali反編譯它們,添加代碼以使它們使用昂貴的付費短信服務,用自己的鑰匙重新簽了字,並把他們回到了Android市場。超過10K的用戶在Google從市場上引導應用程序之前的24小時內下載了這些應用程序。
應用程序開發人員如何防止他們的工作被盜用,修改以及以這種方式重新刻錄?我想你可以像應用程序的MD5散列一樣匹配應用程序的MD5散列,就像它在發佈時一樣(可能與您的應用程序在谷歌市場或其中一臺服務器上保存在一起)。但我們沒有用於檢查.apk文件的MD5哈希的工具,並且底層文件對於應用程序軟件不可見。
確保您運行的應用程序的身份完整性確實是一個解決的問題。最佳做法是什麼?
沒有任何東西可以阻止犯罪分子去除你假設的MD5檢查,或者改變它檢查的MD5(用他們的服務器替換你的服務器)。這與如何阻止海盜在應用程序中刪除真實性檢查的問題非常相似。這不是真的可以解決。最好你能做的就是讓它更難。最終,將惡意應用程序保留在應用程序商店是谷歌需要處理的事情。 – derobert