2011-12-12 98 views
2

這裏有一個很好的報告,通過Android市場犯下最近的一個騙局。如何保護Android應用程序免遭盜竊和應用程序本身的修改?

http://www.theregister.co.uk/2011/12/12/android_market_malware/

有人複製了一些流行的遊戲的apk文件從一個根深蒂固的手機,與smali反編譯它們,添加代碼以使它們使用昂貴的付費短信服務,用自己的鑰匙重新簽了字,並把他們回到了Android市場。超過10K的用戶在Google從市場上引導應用程序之前的24小時內下載了這些應用程序。

應用程序開發人員如何防止他們的工作被盜用,修改以及以這種方式重新刻錄?我想你可以像應用程序的MD5散列一樣匹配應用程序的MD5散列,就像它在發佈時一樣(可能與您的應用程序在谷歌市場或其中一臺服務器上保存在一起)。但我們沒有用於檢查.apk文件的MD5哈希的工具,並且底層文件對於應用程序軟件不可見。

確保您運行的應用程序的身份完整性確實是一個解決的問題。最佳做法是什麼?

+1

沒有任何東西可以阻止犯罪分子去除你假設的MD5檢查,或者改變它檢查的MD5(用他們的服務器替換你的服務器)。這與如何阻止海盜在應用程序中刪除真實性檢查的問題非常相似。這不是真的可以解決。最好你能做的就是讓它更難。最終,將惡意應用程序保留在應用程序商店是谷歌需要處理的事情。 – derobert

回答

3

這種黑帽子的做法是不可能避免的。無論您發現什麼,幸運的,巧妙的,耐心的黑客都會撤消它。

儘管如此,你仍然希望能夠努力工作,使大多數黑客更難以輕鬆地打破你的保護。這就是人們通常稱的IT安全BTW :)

場調查是:

  • obfscation
  • CRC和MD5你mentionned它
  • 安全聯網覈查
  • 第二應用程序檢查第一個
  • 自定義檢查類加載器(你可以在android上做到這一點嗎?)
+0

不要以爲自定義類加載器是可能的,但md5和crc會讓它更難以製作餅乾。更難,但並非不可能。 –

3

不是BE-所有到終止全,但有ProGuard

ProGuard的工具壓縮,優化和 混淆代碼移除無用的代碼和重命名類,字段和方法與 語義晦澀的名字。結果是更小的.apk文件 ,這是更難以逆向工程。由於ProGuard使 難以逆向工程。