ApktoolによるAndroidマルウェアの解析
概要
APKファイルとして配布されるAndroidマルウェアは、サンプルを実行しなくても、パーミッション、アクティビティ、サービス、ブロードキャストレシーバー、疑わしいAPI呼び出しを静的に抽出して解析できます。このスキルでは、androguardを使用したプログラムによるAPK解析、危険なパーミッションの組み合わせ、難読化されたコードパターン、動的コードローディング、リフレクションベースのAPI呼び出し、ネットワーク通信の兆候を特定します。
使用するタイミング
- セキュリティインシデントを調査し、apktoolを使用してAndroidマルウェアを解析する必要がある場合
- このドメインの検出ルールや脅威ハンティングクエリを構築する場合
- SOCアナリストがこの解析タイプの構造化された手順を必要とする場合
- 関連する攻撃手法に対するセキュリティ監視のカバレッジを検証する場合
前提条件
- Python 3.9+ と
androguard - apktool (リソース逆コンパイル用)
- jadx (Javaソース復元用、オプション)
- 分離された解析環境 (VMまたはサンドボックス)
- 解析用のサンプルAPKファイル
手順
- androguardでAPKを解析し、マニフェストのメタデータを抽出する
- 要求されたパーミッションを列挙し、危険な組み合わせをフラグ付けする
- マニフェストからアクティビティ、サービス、レシーバー、プロバイダーをリストアップする
- 疑わしいAPI呼び出し(リフレクション、暗号化、SMS、テレフォニー)をスキャンする
- 動的コードローディングパターン(DexClassLoader、Runtime.exec)を検出する
- 文字列からハードコードされたURL、IP、C2インジケータを抽出する
- MITRE ATT&CK for Mobileマッピングを含むリスク評価レポートを生成する
期待される出力
- パーミッション分析、コンポーネント一覧、疑わしいAPI呼び出し、ネットワークインジケータ、リスクスコアを含むJSONレポート
- APKから抽出された文字列と潜在的なIOC