CVE-2023-45803
Açıklama
urllib3, Python için kullanıcı dostu bir HTTP istemci kütüphanesidir. urllib3 daha önce, HTTP RFC'leri tarafından gerektirildiği üzere istek yöntemi gövde kabul edebilen bir yöntemden (`POST` gibi) `GET` yöntemine değiştirildikten sonra; 301, 302 veya 303 durum kodlarını kullanan bir HTTP yönlendirme yanıtı geldiğinde HTTP istek gövdesini kaldırmıyordu. Bu davranış yönlendirmelerle ilgili bölümde açıkça belirtilmemiş olsa da farklı bölümlerdeki bilgiler birleştirilerek çıkarılabilir ve curl ile web tarayıcıları gibi diğer büyük HTTP istemci uygulamalarında bu davranış gözlemlenmiştir. Gizlilik üzerinde etki yaratabilmesi için önceden güvenilen bir servisin ele geçirilmiş olmasını gerektirdiğinden, bu zafiyetin sömürülebilirliğinin düşük olduğu düşünülmektedir. Ek olarak, birçok kullanıcı HTTP istek gövdelerine hassas veri yerleştirmemektedir; eğer durum böyleyse bu zafiyet sömürülemez. Bu zafiyetten etkilenmek için aşağıdaki iki koşulun da karşılanması gerekir: 1. urllib3 kullanılması ve HTTP istek gövdesinde (form verileri veya JSON gibi) hassas bilgilerin gönderilmesi ve 2. Kaynak servisin ele geçirilip kötü niyetli bir eşe 301, 302 veya 303 kullanarak yönlendirmeye başlaması veya yönlendirilen servisin ele geçirilmesi. Bu sorun 1.26.18 ve 2.0.7 sürümlerinde giderilmiştir ve kullanıcıların sorunu çözmek için güncellemeleri yapmaları önerilir. Güncelleme yapamayan kullanıcılar, yönlendirme yanıtı vermesi beklenmeyen servisler için yönlendirmeleri `redirects=False` ile devre dışı bırakmalı, otomatik yönlendirmeleri `redirects=False` ile kapatmalı ve 301, 302 ve 303 yönlendirmelerini HTTP istek gövdesini temizleyerek manuel olarak yönetmelidir.
Nasıl düzeltilir
- python urllib31.26.18, 2.0.7 ya da sonraki bir sürüm
- urllib32.0.7, 1.26.18 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| python urllib3 | v < 1.26.18, 2.0.0 ≤ v < 2.0.7 | 1.26.18, 2.0.7 |
| fedoraproject fedora | 38 | — |
| urllib3PyPI | 2.0.0 ≤ v < 2.0.7, v < 1.26.18 | 2.0.7, 1.26.18 |
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.