2

私のPhoneGap Androidアプリはユーザーログインを必要とし、ログイン後にユーザーに特定の情報を表示する必要があります.(アプリはAJAXを使用してPHPサーバーからXMLを取得します)

私は多くのブログ/フォーラムと多くのstackoverflowの投稿を検索し、最高のセキュリティオプション/機能を考え出そうとしました. 次のセキュリティ オプションを実装したいと考えています。

  • HTTPS (http +ssl) を使用してトラフィックを保護する
  • [サーバー側] ユーザーエージェントのチェック。
  • phonegap JS ファイルで CRC チェックを実行し、結果を情報要求とともに送信します。次に、サーバーに CRC の結果をあるべき結果と比較させます。(したがって、誰かがアプリを逆コンパイルし、コードを変更し、再度コンパイルした場合、それはわかります)
  • アプリはサーバーからのデータのみを要求できます。また、データを削除/更新しないでください。
  • JavaScriptファイルを難読化/暗号化します...解読を少し難しくするためだけに

そして、Phonegapで以下が可能であれば

  • Android UID/デバイス ID をデータベースに追加します。そのため、ホワイトリストに登録されたデバイスのみがアクセスできます。

より多くのセキュリティ機能を使用する必要がありますか?

4

1 に答える 1

2
  1. セッションの存続期間中は、HTTPS を使用する必要があります。OWASP A9
  2. ユーザーエージェントは、攻撃者が制御する変数です。なりすましは簡単なので、この変数をチェックしても意味がありません。
  3. CRC は安全なハッシュ関数ではありません。このチェックをバイパスして変更を加え、パディングを追加して同一の CRC を作成するのは簡単です。ユーザーがアプリを変更すると、でたらめな CRC チェックを削除できます。
  4. サーバーは、攻撃者が任意のリクエストを送信できると想定して、アクセス制御を実施する必要があります
  5. 目立たなくてもセキュリティに依存しないでください。
  6. ユーザーは任意のリクエストを送信できるため、この識別子を偽装できます。

攻撃者は、HTTP 要求を変更するために JavaScript を変更する必要はありません。攻撃者は、BURP プロキシまたは同様のツールを使用して、サーバーに到達する前にリクエストを傍受して変更することができます。OWASPのトップ 10 を読んで、バックエンド API に一般的な欠陥がないことを確認してください。

于 2013-04-05T15:42:33.833 に答える