CVE-2023-35169
Açıklama
PHP-IMAP, php-imap modülünün yüklü veya etkin olması gerekmeden yaygın IMAP iletişimi için kullanılan bir sarmalayıcıdır. Versiyon 5.3.0 öncesinde, temizlenmemiş bir ek dosya adı, kimliği doğrulanmamış herhangi bir kullanıcının dizin gezginliği (directory traversal) zafiyetinden yararlanmasına olanak tanır ve bu durum uzaktan kod çalıştırma zafiyeti ile sonuçlanır. Ekleri, bir `$filename` sağlamadan veya temizlenmemiş kullanıcı girdisi geçirerek `Attachment::save()` ile saklayan her uygulama bu saldırıdan etkilenir. Bir saldırgan, `webklex/php-imap` veya `webklex/laravel-imap` ile taranan gelen kutusuna kötü amaçlı bir ek içeren bir e-posta gönderebilir. Zafiyet için ön koşul, betiğin `src/Attachment::save(string $path, string $filename = null)` fonksiyonunda ekleri bir `$filename` sağlamadan veya temizlenmemiş bir `$filename` sağlayarak saklamasıdır. `Attachment::save()` metoduna hiçbir `$filename` geçirilmediği durumda paket, yedek olarak e-postadan gelen bir dizi temizlenmemiş ve güvensiz girdi değerini kullanır. Bir geliştirici, örneğin e-posta başlıklarından alınan ek adını veya dosya adını geçirerek `Attachment::save()` metoduna bir `$filename` sağlasa bile, girdi değerleri paket tarafından asla temizlenmez. Ayrıca dosya uzantısı (örneğin ".php") veya dosya içeriği hakkında herhangi bir kısıtlama yoktur. Bu durum, bir saldırganın alt kullanıcının yazma izinlerine sahip olduğu herhangi bir konuma her türde ve içerikte kötü amaçlı kod yüklemesine olanak tanır. Saldırgan ayrıca mevcut dosyaların üzerine yazabilir ve örneğin sistem tarafından cron veya istekler aracılığıyla çalıştırılan dosyalara kötü amaçlı kod enjekte edebilir. Versiyon 5.3.0, bu sorun için bir yama içermektedir.
Nasıl düzeltilir
- webklex php-imap5.3.0 ya da sonraki bir sürüm
- webklex/php-imap5.3.0 ya da sonraki bir sürüm
- webklex/laravel-imap5.3.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| webklex php-imap | v < 5.3.0 | 5.3.0 |
| webklex/php-imapPackagist | v < 5.3.0 | 5.3.0 |
| webklex/laravel-imapPackagist | v < 5.3.0 | 5.3.0 |
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.