Apache Airflow: DAG author RCE on webserver via unrestricted import_string() in BaseSerialization.deserialize()
A bug in `BaseSerialization.deserialize()` allowed unrestricted `import_string()` of attacker-controlled class paths when the Scheduler / API Server loaded a serialized DAG: a DAG author could embed a malicious trigger into a DAG to gain remote code execution on the API Server / Scheduler process, crossing the Airflow security boundary that DAG-author code must never execute in those processes. Users are advised to upgrade to `apache-airflow` 3.3.0 or later. As a defense-in-depth mitigation, deployments where DAG-author trust is limited can restrict the `[core] allowed_deserialization_classes` config to a narrow allowlist.
- Yayın
- 7 Tem 2026
- Güncelleme
- 8 Tem 2026
- EPSS
- %1,6 · 76. yüzdelik
- CWE
- CWE-502
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
39
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 39 / 40 · 9.8 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %1,6
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- evet
- Teknik etki
- tam
Vulnrichment: CISA'nın karar ağacı girdileri.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| apache | airflow | cpe:2.3:a:apache:airflow |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- apache airflow3.3.0 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (apache) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
Apache Software Foundation Apache Airflow
- 3.3.0 öncesietkilenir · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| PyPI | apache-airflow | 3.3.0 öncesi | 3.3.0 |
| PyPI | apache-airflow | 3.3.0 öncesi | 3.3.0 |
Aynı üründe
apache: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2020-13927The previous default setting for Airflow's Experimental API was to allow all API requests without authentication, but this poses security riKEV99Hemen
- CVE-2020-11978An issue was found in Apache Airflow versions 1.10.10 and below.KEV95Hemen
- CVE-2021-38540Apache Airflow: Variable Import endpoint missed authentication check63Bu hafta
- CVE-2022-40127Apache Airflow <2.4.0 has an RCE in a bash example61Bu hafta
- CVE-2022-24288Apache Airflow: RCE in example DAGs58Planlayın
- CVE-2020-11981An issue was found in Apache Airflow versions 1.10.10 and below.50Planlayın
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| Apache Software Foundation Apache Airflow | 3.3.0 | Üretici (CNA) |
| PyPI:apache-airflow | 3.3.0 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
- Amogh Desai (@amoghrajesh)düzeltme geliştirici
- intadd (GitHub handle: @intadd)bulan
- Ziyu Linbulan
- Jarek Potiukdüzeltme geliştirici
- bugbunny.aiaraç
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
- CVE-2026-4235936 gün araylaApache Airflow: Authenticated RCE via XCom PATCH endpoint — XComUpdateBody missing FORBIDDEN_XCOM_KEYS validator35İzleyin
- CVE-2026-5807636 gün araylaApache Airflow: Unguarded import_string() of airflow_exc_ser / base_exc_ser exception nodes in BaseSerialization.deserialize enables DAG-author RCE on Scheduler35İzleyin
- CVE-2026-6758736 gün araylaApache Airflow: DAG-author remote code execution on the Scheduler via a Serde `Callback` deserialization gadget35İzleyin
- CVE-2026-3385885 gün araylaApache Airflow: Unsafe Deserialization via Legacy Serialization Keys (__type/__var) Bypass in XCom API35İzleyin
- CVE-2026-4536036 gün araylaApache Airflow: Arbitrary import in custom deadline-reference deserialization29İzleyin
- CVE-2026-6726036 gün araylaApache Airflow: DAG-author remote code execution on the Scheduler via awaiting_input next_kwargs deserialization29İzleyin
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- İnternetten erişebilen herkes tetikleyebilir.
- Hesap ya da parola gerekmez.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yüksek · veriler okunabilir
- Bütünlük
- yüksek · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Ağ
- Karmaşıklık
- Düşük
- Gereken yetki
- Yok
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Yüksek
- Bütünlük etkisi
- Yüksek
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-502 · Deserialization of Untrusted DataCVSS vektörü
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvd-secondary
Kök neden
Ağdan gelen veri, kaynağı doğrulanmadan dilin yerel nesne biçimine çözümleniyor. Çözümleme sırasında nesnenin içindeki kod yolları tetiklenebilir.
Hatanın kod karşılığı
CWE-502 sınıfının tamamıBu zafiyet sınıfının temsili örneği. Üreticinin kaynak kodu değildir; hatalı kalıbı ve düzeltmesini gösterir.
Hatalı
payload = sock.recv(65536)job = pickle.loads(payload)Düzeltilmiş
payload = sock.recv(65536)if not hmac.compare_digest(sign(payload), header_sig): raise PermissionError("imza geçersiz")job = JobSchema.validate(json.loads(payload))Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
—
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
385 binden fazla zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinDeğişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- github.com/apache/airflow/pull/66002
- github.com/apache/airflow/pull/68528
- lists.apache.org/thread/otvdw8qt2y7xy2n5nq9xby9ky4rf5ltj
- www.openwall.com/lists/oss-security/2026/07/07/1
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.