fastapi-code-generator'da üç kritik açık: zararlı OpenAPI tanımı, üretilen uygulamada kod çalıştırıyor
OpenAPI tanımından FastAPI uygulaması üreten açık kaynak fastapi-code-generator'da üç kritik açık (CVE-2026-63469, CVE-2026-63470, CVE-2026-63471) duyuruldu. Saldırganın etkilediği bir tanımdan üretilen kod, uygulama açılırken ya da çağrıldığında komut çalıştırabiliyor; düzeltme 0.8.1'de.
CVE-2026-63469, CVE-2026-63470, CVE-2026-63471OpenAPI tanımından hazır bir FastAPI iskeleti üreten açık kaynak Python aracı fastapi-code-generator'da üç kritik açık duyuruldu. Kayıtlar 9 Kasım akşamı GitHub Security Advisories'e girdi; üçünün de CVSS 4.0 puanı 9,3. Ortak nokta şu: araç, tanımdaki bazı alanları üretilen main.py dosyasına kaçış işlemi (escaping) yapmadan yazıyor. Saldırganın hazırladığı ya da değiştirebildiği bir OpenAPI tanımı, üretilen uygulamaya çalışır Python kodu sokabiliyor.
Bildirimlere göre CVE-2026-63471 route yolu, CVE-2026-63469 yanıt durum kodu anahtarı üzerinden; bu iki açıkta kod, uygulama içe aktarılırken, yani ASGI sunucusu açılırken, istek gelmeden çalışıyor. CVE-2026-63470 ise operation summary alanını kullanıyor ve kod ilgili fonksiyon çağrıldığında çalışıyor. Açıklar CISA KEV kataloğunda yok ve aktif istismar bildirimi yok. Risk, dışarıdan gelen ya da üçüncü taraf API tanımlarını otomatik olarak koda çeviren CI/CD hatlarında yoğunlaşıyor: orada üretilen kod pipeline'ın kimlik bilgileriyle çalışıyor.
Etkilenen ve düzeltilmiş sürümler
| Ürün | Etkilenen | Düzeltilmiş sürüm |
|---|---|---|
| fastapi-code-generator (PyPI) | 0.8.1 öncesi tüm sürümler | 0.8.1 |
Daha önce etkilenen bir sürümle üretilmiş kod, araç güncellense de kendiliğinden düzelmez; o dosyaların yeniden üretilmesi ya da gözden geçirilmesi gerekir.
Beni etkiliyor mu?
Aracın kurulu sürümünü Python paket yöneticinizin kurulu paket listesinden ya da CI imajının bağımlılık dökümünden kontrol edin. Depolarınızda ve pipeline tanımlarınızda aracın kullanılıp kullanılmadığına bakmak için aşağıdaki komut yalnızca okuma yapar:
grep -rn "fastapi-code-generator" requirements*.txt pyproject.toml poetry.lock .github/Aracı yalnızca kendi ekibinizin yazdığı tanımlarla, elle çalıştırıyorsanız risk düşüktür. Müşteriden, iş ortağından ya da internetten gelen tanımları otomatik işliyorsanız etkileniyorsunuz.
Ne yapılmalı?
- fastapi-code-generator'ı 0.8.1 veya sonrasına güncelleyin; CI imajlarındaki ve lock dosyalarındaki sabitlenmiş sürümleri de değiştirin.
- Etkilenen sürümlerle üretilmiş
main.pydosyalarını yeni sürümle yeniden üretin ya da route tanımlarındaki dize ifadelerini gözle denetleyin. - Güncelleme yapılana kadar workaround olarak güvenilmeyen kaynaklardan gelen OpenAPI tanımlarını otomatik koda çevirmeyi durdurun; tanımları önce gözden geçirin.
- Kod üretimini yapan CI işlerini en az yetkili, kalıcı sırlara erişimi olmayan bir ortamda çalıştırın.
- Değişikliği change management sürecine alın; üretilen kodun gözden geçirilmesini iş adımı olarak kaydedin.