- Son 7 gün
- CWE-89
CVE-2026-119419
CakePHP StringExpression ve IdentifierExpression sınıflarında COLLATE üzerinden SQL enjeksiyonu
- Yayımlandı
- Güncellendi
- 30 Eki 2026
- Açık yaşı
- 2 gün
- Kaydı açan
- VulnCheck
Yönetici özeti
Bu açık, yaygın kullanılan bir web uygulama çatısında veritabanı güvenliğini zayıflatmaktadır. Başarılı bir saldırı, müşteri ve iş verilerinin sızmasına, değiştirilmesine ya da sistemlerin devre dışı kalmasına neden olabilir. Uygulamaların hızlı biçimde güncellenmesi önerilir.
ÖzetTürkçe
CakePHP 5.4.3 ve öncesi sürümlerde, StringExpression ve IdentifierExpression sınıflarına doğrulanmadan verilen harmanlama (collation) değerleri SQL sorgusuna eklenmektedir. Collation adını constructor ya da setCollation üzerinden kontrol edebilen bir saldırgan, COLLATE ifadesinden sonra tırnaksız biçimde ek SQL kodu ekleyebilir. Etkilenen, bu sınıfları kullanan CakePHP uygulamalarıdır.
Saldırgan ne yapabilir?
Saldırgan, veritabanı bağlantısının sahip olduğu yetkiler ölçüsünde sorgu çalıştırabilir; bu da veri okunmasına, değiştirilmesine veya silinmesine ve hizmetin aksamasına yol açabilir.
Kaynaktaki açıklama (İngilizce)
CakePHP through 5.4.3 contains an sql injection vulnerability that allows attackers to inject SQL by supplying unvalidated collation values to StringExpression and IdentifierExpression. Attackers controlling a collation name passed to the constructor or setCollation() can append SQL after the unquoted COLLATE clause, affecting every database driver within the connection's privileges.
Ne yapmalı?
- CakePHP'yi 5.4.3'ten daha yeni, düzeltilmiş bir sürüme güncelleyin. Güncelleme için tedarikçinin yayınladığı sürüm notlarını ve düzeltme bilgilerini kullanın. Genel öneri
- Güncelleme yapamıyorsanız, collation değerlerini kullanıcı girdisinden almayın; yalnızca sabit ve önceden tanımlanmış değerlerle çalışın. Genel öneri
- Collation değerlerini uygulamaya girmeden önce yalnızca izin verilen karakterlerden oluşup oluşmadığını doğrulayan bir kontrol ekleyin. Genel öneri
- Uygulamanın veritabanı bağlantısında en az yetkili hesabı kullanın ve gereksiz tabloya erişimi kaldırın. Genel öneri
Ek önlemler
- Uygulama günlüklerinde olağandışı veritabanı hatalarını ve beklenmeyen sorgu desenlerini izleyin. Genel öneri
- Kullanıcı girdisinin sorgu oluşturma katmanlarına doğrudan aktarılmadığından emin olmak için kod incelemesi yapın. Genel öneri
Bu açık kişisel verilerin sızmasına yol açabilir. Sistemlerinizde kullanıldığından şüpheleniyorsanız KVKK'daki ihlal bildirimi yükümlülüğünüzü (Kurul'a 72 saat içinde bildirim) hukuk danışmanınızla birlikte değerlendirin. Bu not hukuki tavsiye değildir.
Etkilenen sürümler1 yazılım
| Yazılım | Etkilenen | Düzeltildiği sürüm |
|---|---|---|
| cakephp | ≤ 5.4.3 | – |
Kaynaklar12 kaynak
- CVE.org kaydı
- NVD kaydı
- github.com/…ommit/ae8c354cf825aeb7090ea4b48ce98142446f3ac9 Yama
- github.com/…ommit/21951faea40060dcc5cc1da3159056df66816d3c Yama
- github.com/…ommit/d04d342c3d1e0bac7ce7661bc098902cc412e595 Yama
- github.com/…ommit/ac07372e6a3045ce2030701a5bc5ed71aa2b4b82 Yama
- github.com/cakephp/cakephp/pull/19726 Yama
- abraxaslabs.tech/research/cakephp-collate-sqli Üçüncü taraf
- vulncheck.com/…gexpression-and-identifierexpression-collation Üçüncü taraf
- github.com/…1/src/Database/Expression/StringExpression.php Diğer
- github.com/…c/Database/Expression/IdentifierExpression.php Diğer
- github.com/cakephp/cakephp Diğer
Kayıt geçmişi
- Yayımlandı
İlgili açıklar
Türkçe metin, resmi kayıtlardaki bilgilerle yapay zekâ yardımıyla yazıldı ve yayından önce otomatik kontrollerden geçti. Bir değişikliği uygulamadan önce üreticinin duyurusuna mutlaka bakın.