curl 8.4.0, aşırı derecede yüksek önem derecesine sahip bir güvenlik açığına (CVE-2023-38546) yama yapmak ve ayrıntıları yayınlamak için piyasaya sürüldü ve bu, kusurun ciddiyetine ilişkin hafta boyunca süren endişeleri hafifletti.
curl, genellikle web sitelerine bağlanmak için kullanılan çeşitli protokoller üzerinden veri aktarmanıza olanak tanıyan bir komut satırı yardımcı programıdır. İlişkili bir libcurl kitaplığı, geliştiricilerin kolay dosya aktarımı desteği için curl’u uygulamalarına dahil etmelerini sağlar.
4 Ekim’de curl geliştiricisi Daniel Stenberg, curl 8.4.0’ın geliştirme döngüsünün kısaltılacağı ve yeni sürümün bir güvenlik açığını gidermek için 11 Ekim’de yayınlanacağı konusunda uyardı ve bunun uzun zamandır görülen en kötü curl güvenlik kusuru olduğu konusunda uyardı. .
“Serbest bırakma döngüsünü kısa kesiyoruz ve curl 8.4.0’ı yayınlayacağız. 11 EkimYÜKSEK CVE önem derecesi ve DÜŞÜK önem derecesi için düzeltmeler dahil,” diye açıkladı Stenberg.
“YÜKSEK olarak derecelendirilen, muhtemelen uzun zamandır görülen en kötü kıvrılma güvenlik açığıdır.”
Curl ve libcurl birçok kitaplık ve uygulamada yaygın olarak kullanıldığından ve hemen hemen her işletim sistemiyle birlikte geldiğinden, bu duyuru, sosyal medyada bunun geniş bir etkiye sahip olacağı ve birçok cihazı riske atacağı endişesiyle ilgili birçok makale ve paylaşımın yapılmasına neden oldu. .
Korktuğumuz kadar kötü değil
Çarşamba günü Stenberg, iki güvenlik açığına yönelik düzeltmeler içeren curl 8.4.0’ı yayınladı: yüksek önemdeki yığın arabellek taşması hatası (CVE-2023-38545) ve düşük önemdeki çerez yerleştirme hatası (CVE-2023-38546).
Stenberg’in önceden uyarıda bulunduğu kusur, curl’un SOCKS5 proxy protokolü uygulamasındaki yüksek önem derecesine sahip yığın arabellek taşmasıydı.
Stenberg, “Curl 8.4.0’ın piyasaya sürülmesiyle birlikte, bir güvenlik tavsiyesi ve CVE-2023-38545’in tüm ayrıntılarını yayınlıyoruz” diye açıkladı.
“Bu sorun, curl’da uzun zamandır karşılaşılan en kötü güvenlik sorunudur. Ciddiyete ayarladık.” YÜKSEK“
Yığın arabellek taşması hatası, bir programın yanlışlıkla ayrılmış bir bellek bölgesine tutabileceğinden daha fazla veri yazılmasına izin vermesidir. Bu, girilen verilerin diğer bellek bölgelerinin üzerine yazılmasına ve verilerin bozulmasına neden olarak uygulama çökmelerine ve muhtemelen uzaktan kod yürütülmesine neden olur.
Kusur, curl kullanıcılarını etkileme potansiyeline sahip olsa da, bu güvenlik açığından yararlanma gereklilikleri, onu başlangıçta beklenenden çok daha az tehlikeli hale getiriyor; çünkü curl istemcisinin, uzak bir siteye bağlantı kurarken SOCKS5 proxy’sini kullanacak şekilde yapılandırılmasını gerektiriyor. otomatik yönlendirmelerin etkinleştirilmesi.
Ayrıca, kusurdan başarıyla yararlanmak için uzak siteye yavaş bir SOCKS5 bağlantısı gerektiren bir zamanlama gereksinimi de vardır.
RedHat’ın kusurla ilgili bir uyarısı şöyle açıklıyor: “Curl adresi kendisi çözemezse, ana bilgisayar adını SOCKS5 proxy’sine aktarır. Ancak aktarılabilecek ana bilgisayar adının maksimum uzunluğu 255 bayttır.”
“Ana bilgisayar adı daha uzunsa, Curl yerel ad çözümlemeye geçer ve çözümlenen adresi yalnızca proxy’ye iletir.”
“Curl’e ‘ana bilgisayarın adı çözümlemesine izin vermesi’ talimatını veren yerel değişken, yavaş bir SOCKS5 anlaşması sırasında yanlış değeri elde edebilir, bu da çok uzun ana bilgisayar adının çözümlenen adres yerine hedef arabelleğe kopyalanmasına neden olabilir. amaçlanan davranış.”
Bir saldırgan, bu kusurdan yararlanmak için, ziyaretçiyi çok uzun bir ana bilgisayar adına (binlerce karakter düşünün) yönlendiren bir web sitesi oluşturabilir; bu, girilen verilerin yığın arabellek taşması hatasını tetiklemesine ve programın çökmesine neden olur.
İstismar edilmesi oldukça kolay olsa da araştırmacılar BleepingComputer’a, mevcut kavram kanıtlama istismarlarının yalnızca curl’un çökmesine neden olduğunu ve kod yürütmek yerine hizmet reddi saldırısına yol açtığını söyledi.
Ayrıca, curl kullanan çoğu kişi SOCKS5 aracılığıyla bağlantı kurmadığı için hata onları etkilemeyecektir.
Hata için iyi hedefler
CVE-2023-38545 güvenlik açığının hedeflemede faydalı olabileceği bir grup insan da siber güvenlik araştırmacıları ve geliştiricileridir.
Hacker House kurucu ortağı ve güvenlik araştırmacısı Matthew Hickey (diğer adıyla hackerfantastik) BleepingComputer’a siber güvenlik araştırmacıları ve geliştiricilerinin API istemek için SOCKS5 proxy’lerini kullanmalarının yaygın olduğunu söyledi.
“Curl kullanıcısı tarafından etkinleştirilmesi için bir çorap5 proxy’sinin kullanılmasını gerektirir; bu aslında insanlar güvenlik testi, hata ayıklama veya diğer teknik işler için API talep ettiğinde oldukça yaygındır – ayrıca curl gibi araçları kullanarak Tor hizmetlerini incelerken de yaygındır. Hickey, BleepingComputer’a yaptığı bir konuşmada şöyle konuştu: “Genellikle isteği gerçekleştirmek için bir çorap5 proxy’si gerekir.”
“Aynı şekilde, güvenlik açığı bir HTTP 302 yanıtı tarafından tetiklenebileceğinden, kötü karakter gerekliliği pek de sorun değil; bu, saldırganın sağladığı karakterlerin tamamen kontrolünde olduğu ve saldırıyı gerçekleştirirken o kadar kurnaz veya akıllı olmasına gerek olmadığı anlamına geliyor.” diğerlerinin ima ettiği gibi teslimat.”
Hickey bunun, düzgün bir şekilde silah haline getirilmesi zaman ve çaba gerektirecek karmaşık bir hata olduğuna inansa da, kullanıcıların güvenlik açısından kusurları yamamak için yeni sürüme yükseltmelerini tavsiye ediyor.
Dahası, daha fazla araştırmacı hatayı dikkatli bir şekilde analiz ettikçe, kod yürütülmesine yol açan daha karmaşık istismarların geliştirilmesi mümkün olabilir.