Apache Airflowは、3.1.6より前のバージョンに存在する2件の別個の認証情報露出の脆弱性を修正しました。
これらの欠陥により、攻撃者はログファイルやWeb UIを通じて、プロキシ設定やテンプレート化されたワークフローフィールドに埋め込まれた機密の認証データを抽出できる可能性があり、ネットワークインフラおよび機密データパイプラインが侵害されるおそれがあります。
最初の脆弱性はApache Airflow 3.1.6より前のバージョンに影響し、Connectionオブジェクト内の プロキシURL の不適切な取り扱いに起因します。
| 項目 | CVE-2025-68675 | CVE-2025-68438 |
| 影響を受けるバージョン | Apache Airflow < 3.1.6 | Apache Airflow 3.1.0–3.1.6 |
| 深刻度 | 低 | 低 |
| 露出するデータ | プロキシ認証情報 | APIキー、トークン、シークレット |
| コンポーネント | Connectionのプロキシフィールド | Rendered Templates UI |
| 修正バージョン | 3.1.6 | 3.1.6 |
プロキシ設定には、しばしば http://username:[email protected]:8080 の形式で埋め込みの認証情報が含まれます。
これらのフィールドは機密として指定されていなかったため、接続がレンダリングまたは表示されるたびに、プロキシ認証情報が平文でログに記録されていました。
Airflowのログ 基盤では、ユーザーが接続詳細を表示したり、パイプラインの問題をトラブルシュートしたり、監査ログにアクセスしたりすると、ログにアクセスできる者であれば誰でもプロキシ認証情報を閲覧できる状態になります。
複数のチームがAirflowインスタンスにアクセスする共有環境では特に危険で、敵対者や不満を持つ内部関係者がこれらの認証情報を抽出し、ネットワークトラフィックを傍受したり、プロキシ基盤を足掛かりに横展開したりする可能性があります。
2つ目の脆弱性はAirflow 3.1.0から3.1.6に影響し、Rendered Templates UIにおけるシークレットのマスキング不備に関するものです。
しかし、シリアライズ処理では、ユーザーが登録した mask_secret() パターンを認識しないシークレットマスカーのインスタンスが使用されており、その結果、機密値が切り詰め前にマスクされないまま表示されていました。
この欠陥により、Web UIにアクセスできる攻撃者は、レンダリングされたテンプレート内のAPIキー、データベース認証情報、トークンなどの機密データを閲覧できてしまいます。
切り詰めはシリアライズ後に行われるため(事前ではなく)、マスキング層が機能せず、切り詰め対象部分に含まれない限り、シークレットが完全な形で露出します。
どちらの脆弱性も、ログファイルへの直接アクセス、または AirflowのWebインターフェース への認証済みアクセスを必要とするため、深刻度評価は抑えられています。
しかしクラウド環境では、ログが集約されチーム横断でアクセス可能になっていることが多く、Webインターフェースへのアクセス権も広く付与されがちです。
Apache は、バージョン3.1.6で両方の問題を修正しました。これらの欠陥は認証シークレットを直接危険にさらすため、組織は直ちにアップグレードを最優先すべきです。
さらに、管理者はログ保持ポリシーを見直し、集中ログシステムにシークレットのリダクション(秘匿化)ルールを実装して、偶発的な認証情報露出を防ぐべきです。
一時的な緩和策として、組織はAirflowのログおよびWeb UIへのアクセスを制限し、IP許可リストを実装し、露出した可能性のある認証情報をローテーションできます。
セキュリティチームは、 不審な認証 の試行や、無許可のプロキシアクセスがないか、最近のログを監査すべきです。
これらの脆弱性はlwlkrおよびWilliam Asheによって発見され、修正はそれぞれAnkit ChaurasiaとAmogh Desaiによって開発されました。
データパイプラインのオーケストレーションにAirflowを利用しているユーザーは、ワークフロー基盤と下流システムを保護するため、このアップグレードを重要事項として扱うべきです。
翻訳元: https://gbhackers.com/apache-airflow-flaws-expose-sensitive-workflow-data/