2012-10-08 14 views
14

.apkが抽出、変更、再梱包、辞退された場合、Androidアプリのセキュリティを向上させるために探しています。ここにZdnetの記事には、link1と書かれています。Android APKが再パッケージされていないことを確認しますか?

アプリがハッカーの標的になっている場合、悪意のあるコードを追加して別のアプリストアにアップロードし、ユーザーにダウンロードさせてもらうことができますか?

私はapkまたは署名証明書のチェックサムを確認するコードを考えていますか?

私はアプリコードを再梱包してセキュリティコードを削除できたことを感謝しますが、再パックの難しさが増し、おそらく他のアプリを試してみることができます。

[更新] Google Playストアライセンスモジュールは類似のものを提供していますが、私は有料のアプリや他の/非市場向けのものを探しています。

+0

これまでの質問はまだありませんが、それ以来私は調査して、最近署名確認を含むブログ記事を書いています。https://www.airpair.com/android/posts/adding-tampering-detection-to-your- android-app – scottyab

+0

関連https://android.stackexchange.com/questions/9312/how-can-i-verify-the-authenticity-of-an-apk-file-i-downloaded –

答えて

3

私はDexgaurd(Android用支払わ難読化ツール)を使用して終了APK検証をプリフォームモジュールを提供しています。主に実装が簡単で、平均的な保護機能が優れています。それは交換することができたことを考えるとに対して検証するAPKのチェックサムを格納する場所を

dexguard.util.TamperDetection.checkApk(context) 

主な問題は次のとおりです。

はここでチェックを行うためのコードです。 dexguardの方法は、ローカルでチェックすることですが、クラス/文字列の暗号化やapiの隠蔽などの他の機能を使用することで、この呼び出しが不明瞭になります。

0

Googleライセンスサービスを使用するプレイストアに接続して、数日おきに購入したことを確認します。 (あなたは金額を設定することができます)また、ProGuardでloook。これは、すべてのクラス、メソッド、および変数名をコードから取り除いて、逆コンパイルしたら理解することは本当に難しいものです。

+0

ありがとう、私は知っているライセンス供与サービスだが、それは有料でないアプリにはいいことではない。質問を更新した。また、難読化は良いスタートですが、逆コンパイルを防ぎません、合意はそれをもっと難しくします。 – scottyab

+0

有料アプリでは十分ではありません。 Aptoideにアップロードされたいくつかのアプリが、Googleのライセンスを侵害している。 – beetree

1

ここにあなたを助けることができるいくつかの記事があります。

Retrieving APK signature during runtime
Self checking an APK signature.
How to check APK signature.

+0

ありがとう、これらの記事では、PackageManagerからアプリケーションの署名を取得する方法を指しています。しかし、正しいものを確認する方法ではない(私は何かが本当に明白でないかもしれない)。 – scottyab

関連する問題