CVE-2026-45360 Apacheの脆弱性
この記事はAIがNVDのCVE情報をもとに要約・生成したものです。影響範囲や対策は、必ずNVDおよび各ベンダーの公式情報をご確認ください。
Apache Airflowのスケジューラー側で、DAG作成者が制御するシリアライズされた状態から任意のクラスパスをインポートする処理に脆弱性があります。DAG作成者のコードがスケジューラーに到達可能な環境(例:単一ホストデプロイ)では、悪意のあるモジュールパスを含むカスタム`DeadlineReference`を埋め込むことで、スケジューラーがSQLAlchemyセッションを介して悪意のあるコードを実行する可能性があります。影響を受けるのは、DAG作成者のコードがスケジューラー側よりも信頼性が低い環境です。対策として、`apache-airflow`を3.2.2以降にアップグレードし、DAGのソースコードが信頼できる範囲内であるかを確認することが重要です。確認時は、スケジューラーがDAGのコードを読み込む設定が存在するかを確認し、不要なアクセス権の拡張を避ける必要があります。
- NVD Detail (NVD) [日本語で表示]
ソクラテスの問い、プラトンの備え
プラトンよ、この脆弱性について考えてみよう。信頼の問題は、技術的対策以上に倫理的選択に依存するのではないだろうか?
確かに、しかし技術的対策は不可欠です。まず、DAGのソースコードが信頼できる範囲内かを確認すべきです。例えば、`airflow`の設定ファイルで`dags_folder`が正しいパスを指しているか、外部からのアクセスが許可されていないかを確認してください。
では、この脆弱性が発生する条件は?
CVEの説明によると、DAG作成者のコードがスケジューラー側に到達可能な環境、例えば単一ホストデプロイです。この場合、`DeadlineReference`のシリアライズされた状態に悪意のあるモジュールパスが含まれていると、スケジューラーがそれをインポートしてしまう可能性があります。
その場合、運用者は何をすべきだろう?
まず、`apache-airflow`を3.2.2以降にアップグレードすることが最も重要です。また、DAGのソースコードが信頼できる範囲内であるかを確認し、スケジューラーがDAGのコードを読み込む設定が存在するかを点検してください。例えば、`airflow.cfg`で`dags_are_paused_at_creation`や`dag_dir`の設定が適切かをチェックしましょう。
パッチ適用以外に、運用者が注意すべき点は?
変更管理の観点で、DAGのコード変更がスケジューラーに影響を与える可能性があるかを常に意識する必要があります。また、ベンダー情報確認として、Apache Airflowの公式ドキュメントで今回の修正内容を確認し、適用後の監視を徹底してください。例えば、`airflow`のログで`import_string`が異常なモジュールを呼び出しているかを監視する仕組みを検討しましょう。
では、この脆弱性の影響を最小限に抑えるためには、何が最も重要か?
信頼性の階層を明確にし、スケジューラー側がDAG作成者のコードより信頼性が高いことを前提に、アクセス権の制限と設定の見直しを同時に行うことが肝要です。また、ユーモアを交えれば、この脆弱性は「デッドラインがデッドリフトを引き起こす」ような、ちょっとした悪戯かもしれませんね。
関連キーワード: apache