AndroidおよびLinuxカーネルの脆弱性CVE-2025-38352に対するPoCエクスプロイトが公開

Android端末に対して実際に悪用されていた、LinuxカーネルのPOSIX CPUタイマーサブシステムにおける重大なuse-after-free脆弱性CVE-2025-38352について、完全に動作するエクスプロイトが公開されました。

「Chronomaly」と名付けられたこのエクスプロイトは、脆弱なシステム上でroot権限までの完全な権限昇格を実証します。

CVE-2025-38352は、LinuxカーネルのCPUタイマー処理メカニズムで発見された競合状態(レースコンディション)の脆弱性です。

この脆弱性により、攻撃者はタイマー処理中にuse-after-free状態を引き起こし、最終的にシステム全体の侵害を可能にします。

セキュリティ研究者のFaraz Sthehdri(farazsth98)は、GitHub上で動作する概念実証(PoC)エクスプロイトとともに、包括的な技術ドキュメントを公開しました。

この脆弱性は、CPUタイマー割り込みを処理するカーネルの handle_posix_cpu_timers() 関数に存在します。

レースコンディションは、タイマー発火ロジックが実行されている最中に、ゾンビプロセスのタスクが回収されることで発生します。

精密なタイミング条件下では、攻撃者は処理対象として収集された後、実際に使用される前にカーネルのタイマーオブジェクトを削除でき、use-after-freeの状況を作り出します。

このエクスプロイトは高度な手法によりレースウィンドウをマイクロ秒からミリ秒へ拡張します。具体的には、シグナル配信の反復を強制するために11,000以上のブロッキングスレッドを作成し、signalfdディスクリプタ上に50,000のepoll待機者を確立して signalfd_notify() の実行時間を延長します。

これにより、信頼性の高い悪用に十分な24〜26ミリ秒のレースウィンドウが生まれます。

この脆弱性の成立には特定のカーネル設定条件が必要です。 CONFIG_POSIX_CPU_TIMERS_TASK_WORK が無効である必要があります(特に32ビットAndroidカーネルでは存在しない一方、x86-64では存在します)。

悪用には、ptrace、プロセス間通信パイプ、CPUアフィニティの固定を介して、親子プロセス間で精密なタイミング同期が必要です。

セキュリティ修正のコミットは、上流のLinuxカーネルリポジトリに統合されています。脆弱なAndroid端末、またはカーネルバージョン5.10.157以下を運用する組織は、カーネル更新を最優先すべきです。

過去に実際の環境で悪用されていた事実は、実用上の脅威の深刻さを裏付けています。

緩和策としては、(1) 修正済みバージョンへの即時カーネル更新、(2) 既定のカーネル設定により脆弱性をトリガーできない64ビットアーキテクチャでの運用、(3) ptraceベースの不審な活動パターンに対するプロセス監視の強化、が挙げられます。

包括的な技術分析とエクスプロイト開発は、カーネルセキュリティ研究に対する重要な貢献です。

3部構成のブログ記事シリーズでは、脆弱性分析、レースウィンドウ拡張手法、完全なエクスプロイト開発手法が記録されており、セキュリティコミュニティに教育的価値を提供すると同時に、防御側にとって実用的な脅威インテリジェンスとしても機能します。

CVE-2025-38352、Linuxカーネル、Androidセキュリティ、権限昇格、use-after-free、レースコンディション、カーネルエクスプロイト

翻訳元: https://cyberpress.org/poc-exploit-released-for-android-and-linux-kernel-vulnerability-cve-2025-38352/

ソース: cyberpress.org