Curl, libcurl ve bunlara dayalı projeleri etkileyen bir güvenlik açığı tespit ettiler

kıvırmak

cURL, dosya aktarımını amaçlayan bir kütüphane ve komut yorumlayıcısından oluşan bir yazılım projesidir.

Daniel Stenberg (cURL projesinin yazarı) yakın zamanda duyuruldu bir blog yazısı aracılığıyla, hakkında bilgi bir güvenlik açığı tespit edildi ağ üzerinden veri alma ve gönderme yardımcı programı curl ve libcurl kütüphanesi.

Güvenlik açığından bahsediliyor (zaten CVE-2023-38545 altında kataloglanmıştır) ana bilgisayar adı çözümleme kodundaki bir hatadan kaynaklanmaktadır SOCKS5 proxy'sine erişmeden önce.

SOCKS5 bir proxy protokolüdür. Özel bir "komisyoncu" aracılığıyla ağ iletişimini kurmak için oldukça basit bir protokoldür. Örneğin, protokol genellikle Tor aracılığıyla iletişim kurarken, aynı zamanda kuruluşlar ve şirketlerden İnternet'e erişmek için de kullanılır.

SOCKS5'in iki farklı ana bilgisayar adı çözümleme modu vardır. İstemci, ana bilgisayar adını yerel olarak çözer ve hedefi çözümlenmiş bir adres olarak iletir veya istemci, tam nitelikli ana bilgisayar adını proxy'ye iletir ve proxy'nin ana bilgisayarı uzaktan çözümlemesine izin verir.

Başarısızlık böyle arabellek taşmasına neden olabilir ve saldırgan tarafından curl yardımcı programı veya libcurl kullanan bir uygulama aracılığıyla kontrol edilen bir HTTPS sunucusuna erişirken, potansiyel olarak saldırganın istemci tarafı kodunun çalıştırılması. ama sorun yalnızca SOCKS5 proxy üzerinden erişim sağlanıyorsa mevcuttur curl'da etkindir. Proxy olmadan doğrudan erişim sağlandığında güvenlik açığı ortaya çıkmıyor.

SOCKS5 proxy'si aracılığıyla curl tarafından erişilen bir sitenin sahibinin şunları yapabildiği tanımlanmaktadır:

Bir istek yönlendirme kodu (HTTP 30x) döndürerek ve "Konum:" başlığını, boyutu 16 ila 64 KB (16 KB maksimum boyut) arasında değişen bir ana makine adına sahip bir URL'ye ayarlayarak istemci tarafı arabellek taşmasını tetikleyin. tahsis edilen arabelleğin taşması için kullanılır ve bir URL'de izin verilen maksimum ana bilgisayar adı uzunluğu 65 KB'dir).

Libcurl yapılandırmasında istek yeniden yönlendirme etkinleştirilmişse ve kullanılan SOCKS5 proxy'si yeterince yavaşsa, uzun ana bilgisayar adı, açıkçası daha küçük boyutlu, küçük bir arabelleğe yazılacaktır.

Blog yazısında, Daniel Stenberg, güvenlik açığının 1315 gün boyunca tespit edilmediğini belirtti. Ayrıca, curl'de daha önce tanımlanan güvenlik açıklarının %41'inin, eğer curl bellek açısından güvenli bir dilde yazılmış olsaydı muhtemelen önlenebileceğini, ancak öngörülebilir gelecekte curl'un başka bir dilde yeniden yazılmasına yönelik bir planın bulunmadığını da söylüyor.

Güvenlik açığı öncelikle libcurl tabanlı uygulamaları etkiliyor ve curl yardımcı programında yalnızca 65541'den küçük bir değerle “–limit-rate” seçeneği kullanıldığında görünür, çünkü libcurl varsayılan olarak 16 KB ve curl'de 100 KB arabellek ayırır, ancak bu boyut “ değerine bağlı olarak değişir. –sınır oranı” parametresi.

Ana bilgisayar adı 256 karaktere kadarsa curl'un çözümleme için adı hemen SOCKS5 proxy'ye aktardığı, ad 255 karakterden fazlaysa yerel çözümleyiciye geçerek önceden tanımlanmış adresi SOCKS5'e aktardığı belirtiliyor. . Koddaki bir hata nedeniyle, yerel çözümleme ihtiyacını belirten işaret, SOCKS5 üzerinden yavaş bir bağlantı anlaşması sırasında yanlış bir değere ayarlanabilir ve bu da IP'nin saklanması beklentisiyle atanmış bir ara belleğe uzun bir ana bilgisayar adının yazılmasına yol açabilir adres veya isim, 255 karakteri geçmeyecek şekilde.

Son olarak bahsediliyor güvenlik açığı curl 8.4.0 sürümünde düzeltildi Kod tabanının güvenliğini artırmaya yönelik önlemler olarak, kodu test etmeye yönelik araçların genişletilmesi ve bellekle güvenli çalışmayı garanti eden programlama dillerinde yazılan bağımlılıkların daha aktif olarak kullanılması önerildi. Ayrıca curl'un bazı kısımlarını yavaş yavaş Rust'ta uygulanan deneysel Hyper HTTP arka uç gibi güvenli dillerde yazılmış seçeneklerle değiştirmeyi düşünüyor.

Şekerleme onun hakkında daha fazla bilgi edinmekle ilgileniyorayrıntıları kontrol edebilirsiniz Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.