Shikata Ga Nai

Private? There is no such things.

第14回:静的解析ツール:MobSF(Mobile Security Framework)入門

Hello there, ('ω')ノ

🧰 MobSFってどんなツール?

MobSFは、以下の特徴を持つオープンソースのモバイルアプリ解析フレームワークです。

  • APKファイルをアップロードするだけで、セキュリティ診断レポートを自動生成
  • パーミッション・コード内のキーワード・ハードコーディングされた秘密情報などを検出
  • WebブラウザからGUIで利用でき、非エンジニアでも使いやすい

🖥 MobSFの導入方法(ローカルで簡単に動かせます)

MobSFはDockerでも使えますが、ここでは初心者向けに手動インストールの方法を紹介します(LinuxまたはMac前提)。

✅ 事前準備:

  • Python 3.8以上
  • Git
  • Java JDK(apktoolが内部で使用)
  • unzip、sqliteなどの基本ユーティリティ

✅ インストール手順:

# GitHubからクローン
git clone https://github.com/MobSF/Mobile-Security-Framework-MobSF.git
cd Mobile-Security-Framework-MobSF

# 必要なPythonパッケージをインストール
pip install -r requirements.txt

# サーバー起動
python manage.py runserver

→ 起動後、ブラウザで http://127.0.0.1:8000 にアクセスすれば、MobSFの画面が表示されます!


📦 APKファイルを読み込ませてみよう

MobSFを起動したら、中央の画面で「ファイルを選択」して、APKファイルをアップロードするだけ。

アップロード後、1分程度で以下のような情報が出力されます:


🔍 MobSFでわかること(主な解析ポイント)

チェック項目 内容
パーミッション分析 危険な権限(SMS、通話、位置情報など)の確認
マニフェスト設定 ExportされたActivityやServiceの有無
ハードコードされた秘密情報 APIキー、パスワード、暗号鍵などの検出
通信先ドメイン/IP アプリがアクセスする外部サーバー一覧
使用ライブラリ 脆弱性のある外部ライブラリの特定
ソースコード分析 特定キーワード(例:execSystem.loadLibrary)の検出
バイナリ保護の有無 デバッガ検出、暗号化、難読化などのセキュリティ対策確認

📝 診断レポートを読むコツ

MobSFのレポートでは、それぞれの項目についてリスクレベル(High/Medium/Low)が表示されます。

✅ 初心者が注目すべきポイント:

  • Highリスクのパーミッション(例:READ_SMS, WRITE_EXTERNAL_STORAGE
  • exported=true のActivityやService
  • コード内に埋め込まれた秘密情報(Base64形式でも出ることあり)
  • 通信先にあるIPアドレスが中国・ロシアなど不審な国にある場合

これらを総合的に見て、「このアプリ、危ないかも」と判断する材料にできます。


✅ MobSFは“入口”として最強のツール!

  • コマンドやシェル操作が不要
  • GUIで視覚的にリスクが見える
  • PDF形式のレポート出力も可能(報告書作成に便利)
  • 開発者や非エンジニアにも共有しやすい

⚠ 注意点

  • MobSFは静的解析が中心なので、実際の動作は別途動的解析で確認する必要あり
  • APKの中身に難読化処理(Obfuscation)があると、コード解析の精度が落ちる場合があります

✅ まとめ

  • MobSFは、APKファイルをアップロードするだけで使える超便利な静的解析ツール
  • 権限、設定、コード中の情報など、幅広い項目を自動でチェックしてくれる
  • 診断初心者の第一歩として最適!GUIで扱いやすく、レポートもそのまま使える
  • 静的解析では見えない挙動は、後の「動的解析」で補完しよう

Best regards, (^^ゞ