
動的テストは、アプリケーションの動作中に脆弱性を識別するために実施されます。 この記事では、Android用アプリケーションをテストするいくつかの方法を共有したいと思います。 また、機器の構成および構成方法も示します。 誰も気にしない、猫へようこそ。
動的テストには、アプリケーションログの分析、アプリケーショントラフィックの分析、操作中のバグの発見などが含まれます。テストを行うには、 ここで説明するように、Genimotionで仮想マシンを構成する必要があります。
動的解析に使用されるツール:
- BurpSuite;
- 注入;
- Pidcatまたはログを読み取る権限を持つ別のアプリケーション。
BurpSuiteでテストする方法
最初に、プロキシを構成し、証明書をインポートする必要があります。 BurpSuiteは、SSLピン接続に対するアプリケーションの脆弱性を示し、アプリケーションが接続しているサーバーに存在する脆弱性を見つけることができます。
1.プロキシのインストール
最初に、正しいプロキシ設定のインターフェイスに関する情報を表示する必要があります。

図 1.インターフェイスに関する情報。
BurpSuiteでプロキシを構成します。

図 2. BurpSuiteのプロキシ設定。
テストを実施するデバイスにプロキシをインストールします。

図 3.デバイスのプロキシ設定。
ブラウザでhttp [:] // burp /と入力します-これは証明書をダウンロードするために必要です。 動作するように証明書をダウンロードします。 次に、「ダウンロード」フォルダーを開く必要があります。ダウンロードされた証明書があります。 証明書を長押しすると、「名前の変更」を選択し、拡張子を.cerに変更して証明書をインポートするメニューが表示されます。

図 4.証明書をダウンロードする
2.証明書をインポートする
デバイス設定に入り、「セキュリティ」項目を見つけて、「SDからインストール」を選択します。 「ダウンロード」フォルダーから、ダウンロードして名前を変更した証明書を選択します。 証明書に名前を付ける必要がある場合。

図 5.証明書をインポートします。

図 6.証明書をインポートします。
3.証明書のインストールを確認し、BurpSuiteを介してトラフィックを表示します。

図 7.証明書のインポートの正確性をテストします。

図 8.デバイスからのリクエストを確認します。
これで、APIとの相互作用をテストできます。
Android 7から、この方法でBurp証明書を信頼できるものに追加する方法は、ほとんどのアプリケーションでは機能しません。デフォルトでは、ユーザー証明書は信頼されなくなりました。 そのため、ルート化して、証明書に正しい名前を付け、システムディレクトリに配置する必要があります(y4ppiefluによるコメント)。
Inspakageでテストする方法
Inspekageは、Androidアプリケーションの動的テストを可能にし、実行時にアプリケーションが何をしているかを理解するのに役立つツールです。 Inspekageは、アプリケーションの動作を次のように示します。
- ファイル
- データベース
- 暗号化
- HTTPリクエスト
- ひも
- ログなど

図 9.テスト用のアプリケーションを起動します。

図 10.テスト用のアプリケーションを起動します。
アプリケーションを起動した後、ブラウザーでhttps [:] // 192 [。] 168 [。] 100 [。] 198 [:] 8008と入力して、アプリケーションコンソールに移動します(図11)。

図 11.ブラウザでコンソールを実行します。
次に、コンソールのタブに移動します。
- 共有設定-図 12-アプリケーションとローカルリソースの相互作用を示します。
- シリアル化-図 13
- 暗号-図 14-暗号化の動作を示します(SSL / TLSはここには含まれていません)
- ハッシュ-図 14
- SQLite-図15
- HTTP-写真 16-BurpSuiteでは、このタブはより適切に開示されています
- FileSystems-図 17-アプリケーションはファイルを操作します
- IPC-図 18など

図 12.共有設定。

図 13.シリアル化。

図 14.暗号。

図 15.ハッシュ。

図 16. SQLite。

図 17. HTTP。

図 18.ファイルシステム。

図 19. IPC。
Pidcatを使用したテスト
Pidcatは、アプリケーションの操作ログを読み取るアプリケーションです。 テスト時には、アプリケーションの機能を実行し、作業ログに含まれるデータを確認する必要があります。 基本的には、サービス情報がそこに表示されます。たとえば、秘密鍵のバックアップコピーなどの重要な情報を取得できる場合があります。 デバイスにマルウェアが含まれている場合、この情報は攻撃者の手に渡ることがあります。

図 20.秘密鍵のバックアップ。

図 21.機密情報。
おわりに
実際には、 Hackenで使用しているAndroidアプリケーションの基本的な動的テスト方法が示されています。 MobSFフレームワークには自動テスト用のモジュールもありますが、これには別の記事が必要です。