CVE-2022-3918
Açıklama
swift-corelibs-foundation içindeki FoundationNetworking kullanan bir program, URLRequest başlıklarında potansiyel olarak CRLF ( ) enjeksiyonuna karşı savunmasızdır. Bu güvenlik açığında, bir istemci bir URLRequest başlık değerine bir veya birkaç CRLF dizisi ekleyebilir. Bu istek URLSession aracılığıyla bir HTTP sunucusuna gönderildiğinde, sunucu CRLF'den sonra gelen içeriği ek başlıklar ve hatta ikinci bir istek olarak yorumlayabilir. Örneğin, GET yöntemiyle http://example.com/ adresine yapılan bir URLRequest düşünün. URLRequest "Foo" başlığının "Bar Extra-Header: Added GET /other HTTP/1.1" değeriyle ayarlandığını varsayalım. Bu istek gönderildiğinde, sunucuya iki istek olarak görünecektir: GET / HTTP/1.1 Foo: Bar Extra-Header: Added GET /other HTTP/1.1. Bu şekilde istemci, URLSession üzerinden yalnızca tek bir API çağrısı yapmasına rağmen, ek başlıklar enjekte edebilir ve ayrı bir yola tamamen yeni bir istek oluşturabilir. Eğer geliştirici istek ve başlıkları üzerinde tam kontrole sahipse, bu güvenlik açığı bir tehdit oluşturmayabilir. Ancak, temizlenmemiş kullanıcı girdileri başlık değerlerine yerleştirilirse bu güvenlik açığı kritikleşir. Bu durumda kötü niyetli bir kullanıcı, ara sunucuya veya arka uç sunucusuna yeni başlıklar veya istekler enjekte edebilir. Geliştiriciler bu durumda kullanıcı girdilerini temizleme konusunda özellikle dikkatli olmalı veya aşağıdaki yamayı içerecek şekilde swift-corelibs-foundation sürümlerini yükseltmelidir.
Nasıl düzeltilir
- apple swift_foundation5.7.3 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| apple swift_foundation | v < 5.7.3 | 5.7.3 |
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.