CVE-2024-45293
Açıklama
PHPSpreadsheet, hesap tablosu dosyalarını okumak ve yazmak için kullanılan saf bir PHP kütüphanesidir. XLSX okuyucusunda XXE saldırılarını önlemekten sorumlu güvenlik tarayıcısı, boşluklar kullanılarak XML yapısının hafifçe değiştirilmesiyle atlatılabilir. Kullanıcıların kendi Excel (XLSX) tablolarını yüklemesine izin veren sunucularda, özel olarak hazırlanmış bir tablo sağlanarak sunucu dosyaları ve hassas bilgiler ifşa edilebilir. src/PhpSpreadsheet/Reader/Security/XmlScanner.php dosyasındaki güvenlik tarama fonksiyonu, toUtf8 fonksiyonu içinde giriş dosyasının XML kodlamasını almak için hatalı bir XML kodlama kontrolü içermektedir. Fonksiyon, XML kodlamasını `encoding="*"` ve/veya `encoding='*'` ifadelerini arayan tanımlanmış bir regex aracılığıyla arar; bulunamazsa varsayılan olarak UTF-8 kodlamasına geçer ve bu durum dönüştürme mantığını atlatır. Bu mantık, öznitelik tanımında = işaretinden önce veya sonra bir boşluk kullanılarak UTF-7 kodlu bir XXE yükünün iletilmesi için kullanılabilir. Kullanıcıların kendi excel tablolarını yüklemesine ve bunları PHPSpreadsheet'in Excel ayrıştırıcısını kullanarak analiz etmesine izin veren sitelerde, XXE yoluyla hassas bilgi ifşası gerçekleşebilir. Bu sorun 1.29.1, 2.1.1 ve 2.3.0 sürüm yayınlarında giderilmiştir. Tüm kullanıcıların yükseltme yapmaları önerilir. Bu zafiyet için bilinen bir geçici çözüm yoktur.
Nasıl düzeltilir
- phpoffice phpspreadsheet1.29.1, 2.1.1, 2.3.0 ya da sonraki bir sürüm
- phpoffice/phpspreadsheet2.3.0, 1.29.1, 2.1.1 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| phpoffice phpspreadsheet | v < 1.29.1, 2.0.0 ≤ v < 2.1.1, 2.2.0 ≤ v < 2.3.0 | 1.29.1, 2.1.1, 2.3.0 |
| phpoffice/phpspreadsheetPackagist | 2.2.0 ≤ v < 2.3.0, v < 1.29.1, 2.0.0 ≤ v < 2.1.1 | 2.3.0, 1.29.1, 2.1.1 |
| phpoffice/phpexcelPackagist | v ≤ 1.8.2 | — |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.