以下の内容はhttps://cysec148.hatenablog.com/entry/2025/07/14/174144より取得しました。


第6回 AndroidアプリとWebのつながり:隠された情報の探し方

Hello there, ('ω')ノ

そもそもAndroidアプリは何をしている?

  • 表向きはスマホアプリ
  • 裏ではWebサーバーやAPIサーバーと通信中

つまり、中身はほぼWebアプリと同じ。 違いは「URLやデータが隠れて見えにくい」という点です。


見逃されやすい脆弱性パターン

✅ APIエンドポイントURLがアプリ内にハードコードされている

✅ デバッグ用のテストデータが残っている

✅ Webビュー(アプリ内ブラウザ)でXSSやクリックジャッキングのリスク

✅ ログイン認証が甘いAPIが裏で動いている

これらがそのまま公開されてしまっていることがよくあります。


チェック方法① 通信内容を観察する

  1. Android端末とPCを同じWi-Fiにつなぐ
  2. プロキシツール(Burp SuiteやOWASP ZAP)をPCで起動
  3. AndroidのWi-Fiプロキシ設定をPC側に切り替え
  4. アプリ操作 → Networkタブで通信内容を確認

Chromeの開発者ツールで見られるWebとは違い、アプリ側はこうした手順が必要です。

※テスト環境専用端末で行うのが基本です。


チェック方法② APKファイルを解析する

APK=Androidアプリのパッケージファイル

  1. apkファイルを入手
  2. apktoolやjadx-guiなどのツールを使って解析
  3. 中に含まれるURLや認証情報を探す

✅ 見つかることが多いもの:

  • APIサーバーのURL
  • 秘密鍵やトークン(やってはいけない!)
  • デバッグメッセージ

チェックポイント一覧

  • [ ] ハードコードされたURLや認証情報がないか?
  • [ ] 通信内容に平文のパスワードや個人情報が含まれていないか?
  • [ ] Webビュー機能が適切に制御されているか?
  • [ ] 認証なしでAPIが呼び出せてしまわないか?

具体的な社内向け例

社内で使っている経費申請アプリがある場合:

  • プロキシ経由で通信を観察 → API URLを控える
  • そのURLをPCブラウザから直接開いてみる → 認証なしでアクセスできないか?
  • apk解析 → 社内APIの秘密情報がハードコードされていないか?

まとめ:Androidアプリでも見るべきポイント

  • 通信内容はWebと同じ感覚で観察
  • apkファイル解析で裏側を確認
  • ハードコードされた情報・デバッグ情報に注意

Best regards, (^^ゞ




以上の内容はhttps://cysec148.hatenablog.com/entry/2025/07/14/174144より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14