Apple ve Google'ın eksik açıklamaları, 0 günlük avcılar için "büyük bir kör nokta" yaratıyor

 Milyonlarca uygulamada bulunan bir kütüphane olan libwebp'in 0 günlük bir kaynak olduğundan hiç kimse bahsetmedi.


Araştırmacılar Perşembe günü yaptığı açıklamada, Apple ve Google'ın ürünlerinde aktif olarak kullanılan kritik sıfır gün güvenlik açıklarını bildiren son açıklamalarda yer alan eksik bilgilerin, diğer geliştiricilerin çok sayıda teklifinin yamasız kalmasına neden olan "devasa bir kör nokta" yarattığını söyledi.

İki hafta önce Apple, tehdit aktörlerinin iOS'taki kritik bir güvenlik açığından aktif olarak yararlanarak Pegasus olarak bilinen casusluk casus yazılımını yüklediklerini bildirmişti. Saldırılarda sıfır tıklama yöntemi kullanıldı, yani hedeflerin herhangi bir etkileşimi gerekmiyordu. Dünyanın bilinen en gelişmiş kötü amaçlı yazılımlarından biri olan Pegasus'un bulaşması için iPhone'dan bir çağrı veya mesaj almak yeterliydi.

“Büyük kör nokta”“Büyük kör nokta”

Apple, CVE-2023-41064 olarak takip edilen güvenlik açığının, uygulamaların WebP olarak bilinen çoğu görüntü dosyası biçimini okumasına ve yazmasına olanak tanıyan özel bir çerçeve olan ImageIO'daki bir arabellek taşması hatasından kaynaklandığını söyledi. Apple, sıfır günün keşfini, Toronto Üniversitesi Munk Okulu'nda ulus devletlerin muhalifleri ve diğer risk altındaki grupları hedef alan saldırılarını takip eden bir araştırma grubu olan Citizen Lab'e atfetti.

Dört gün sonra Google, Chrome tarayıcısında kritik bir güvenlik açığı bildirdi. Şirket, güvenlik açığının WebP'de bulunan yığın arabellek taşması olarak bilinen şey olduğunu söyledi. Google, güvenlik açığına yönelik bir istismarın yaygın olarak mevcut olduğu konusunda uyarmaya devam etti. Google, CVE-2023-4863 olarak belirlenen güvenlik açığının Apple Güvenlik Mühendisliği ve Mimarisi ekibi ile Citizen Lab tarafından bildirildiğini söyledi.

Benim tarafımdan da dahil olmak üzere, çok sayıda benzerliğin, her iki güvenlik açığının altında yatan hatanın aynı olduğunu güçlü bir şekilde öne sürdüğü yönünde spekülasyonlar hızla ortaya çıktı. Perşembe günü, güvenlik firması Rezillion'dan araştırmacılar, her ikisinin de aslında aynı hatadan, özellikle de uygulamaların, işletim sistemlerinin ve diğer kod kitaplıklarının WebP görüntülerini işlemek için dahil ettiği kod kitaplığı olan libwebp'den kaynaklandığının "büyük olasılıkla" olduğunu söyledikleri kanıtları yayınladılar.
Araştırmacılar, Apple, Google ve Citizen Lab'ın güvenlik açığının ortak kaynağını koordine edip doğru bir şekilde raporlamak yerine ayrı bir CVE tanımı kullanmayı tercih ettiklerini söyledi. Araştırmacılar, libwebp düzeltmesini dahil edene kadar "milyonlarca farklı uygulamanın" savunmasız kalacağı sonucuna vardı. Bunun da, geliştiricilerin tekliflerindeki bilinen güvenlik açıklarını izlemek için kullandıkları otomatik sistemlerin, aktif olarak istismar edilen kritik bir güvenlik açığını tespit etmesini engellediğini söylediler.

Rezillion araştırmacıları Ofri Ouzan ve Yotam Perkal, "Güvenlik açığı, güvenlik açığı bağımlılığını içeren kapsamlı ürün kapsamına alındığından, güvenlik açığı yalnızca bu belirli ürünlere yönelik güvenlik açığı tarayıcıları tarafından işaretlenecektir" diye yazdı. "Bu, güvenlik açığı tarayıcılarının çıktılarına körü körüne güvenen kuruluşlar için BÜYÜK bir kör nokta yaratıyor."

Google, CVE-2023-4863'ün kapsamını libwebp yerine Chrome ile sınırlandırdığı için de eleştirilere maruz kaldı. Ayrıca resmi açıklama, güvenlik açığını Google Chrome'daki WebP'deki yığın arabellek taşması olarak tanımlıyor.

Bir Google temsilcisi bir e-postada şunları yazdı: "Birçok platform WebP'yi farklı şekilde uyguluyor. Hatanın diğer ürünleri nasıl etkilediğine dair herhangi bir ayrıntıya sahip değiliz. Odak noktamız Chromium topluluğuna bir çözüm bulmak ve Chromium kullanıcılarını mümkün olan en kısa sürede etkilemekti. Yazılım ürünlerinin, güvenlik düzeltmelerini ve iyileştirmelerini almak için bağımlı oldukları yukarı akış kitaplıklarını takip etmesi en iyi uygulamadır."

Temsilci, açıklamasında ve resmi CVE sayfasında WebP görüntü formatından bahsedildiğini belirtti. Temsilci, resmi CVE ve Google'ın açıklamasında neden yaygın olarak kullanılan libwebp kütüphanesinden bahsetmediğini veya diğer yazılımların da muhtemelen savunmasız olduğunu açıklamadı.

Google temsilcisi, CVE-2023-4863 ve CVE-2023-41064'ün aynı güvenlik açığından kaynaklanıp kaynaklanmadığını soran soruyu yanıtlamadı. Citizen Lab ve Apple, bu hikaye yayınlanmadan önce e-postayla gönderilen sorulara yanıt vermedi.

Peki kim etkilendi?

Libwebp'yi içeren ve henüz yama almamış uygulamaların, çerçevelerin, kod kitaplıklarının ve diğer paketlerin sayısı bilinmiyor. Microsoft, Edge tarayıcısına CVE-2023-4863 yamasını eklerken, şirket perşembe günü bir e-postayla diğer savunmasız ürün ve kod paketlerinin henüz yamalanmadığını doğruladı. Temsilci, tahmini bir sürüm sunmadan, etkilenen tekliflere yönelik bir güncellemenin "yayınlama hattımızda" olduğunu söyledi. Güvenlik açığına maruz kaldığı bilinen Microsoft teklifleri, yaygın olarak kullanılan bir işbirliği platformu olan Teams ve geliştirici aracı Visual Studio Code'dur.

Her iki ürün de CVE-2023-4863'ten etkilenen Electron çerçevesi üzerine inşa edilmiştir. Electron'u kullanan çok sayıda başka uygulama da var. Wikipedia'da derlenen bir listeye göre bunlar şunları içeriyor:

  • 1Password
  • balenaEtcher
  • Basecamp 3
  • Beaker (web browser)
  • Bitwarden
  • CrashPlan
  • Cryptocat (discontinued)
  • Discord
  • Eclipse Theia
  • FreeTube
  • GitHub Desktop
  • GitKraken
  • Joplin
  • Keybase
  • Lbry
  • Light Table
  • Logitech Options +
  • LosslessCut
  • Mattermost
  • Microsoft Teams
  • MongoDB Compass
  • Mullvad
  • Notion
  • Obsidian
  • QQ (for macOS)
  • Quasar Framework
  • Shift
  • Signal
  • Skype
  • Slack
  • Symphony Chat
  • Tabby
  • Termius
  • TIDAL
  • Twitch
  • Visual Studio Code
  • WebTorrent
  • Wire
  • Yammer
Savunmasız uygulamalar listesine ek olarak, yaygın olarak kullanılan diğer çerçeveler, kod kitaplıkları ve işletim sistemleri de CVE-2023-4863'e karşı savunmasızdır çünkü bunlar aynı zamanda libwebp kullanan başka bir kod kitaplığı olan Electron'u da içerir veya libwebp'i doğrudan yerleşik olarak içerir. Neyse ki birçoğu bu güvenlik açığına karşı yamalı olarak uygulandı:

  • Google Chrome – Mac ve Linux 116.0.5845.187 ve Windows 116.0.5845.187/.188.
  • Mozilla – Firefox 117.0.1, Firefox ESR 115.2.1, Firefox ESR 102.15.1, Thunderbird 102.15.1 ve Thunderbird 115.2.2
  • Cesur Tarayıcı – sürüm 1.57.64 (Chromium: 116.0.5845.188).
  • Microsoft Edge – 109.0.1518.140, 116.0.1938.81 ve 117.0.2045.31 sürümleri.
  • Tor Tarayıcı – sürüm 12.5.4.
  • Opera – sürüm 102.0.4880.46.
  • Vivaldi – sürüm 6.2.3105.47.

İşletim sistemleri

  • Debian – chrome, firefox, firefox-esr, libwebp ve Thunderbird için kısmi güvenlik düzeltmeleri yayınladı; tüm dağıtımların bir düzeltmesi yoktur.
  • Ubuntu – krom tarayıcı, libwebp, firefox, Thunderbird ve mozjs için kısmi güvenlik düzeltmeleri yayınladı; tüm dağıtımların bir düzeltmesi yoktur.
  • Alpine – chromium, libwebp, qt5-qtimageformats ve firefox-esr için güvenlik düzeltmeleri yayınladı.
  • Gentoo – media-libs/libwebp sürüm 1.3.1_p20230908 için güvenlik düzeltmesi yayınlandı.
  • RedHat – Mozilla Thunderbird, Mozilla Firefox ve libwebp için güvenlik düzeltmeleri (RHSA) yayımlandı.
  • SUSE – Mozilla Firefox, Mozilla Thunderbird, libwebp ve chrome paketleri için güvenlik düzeltmeleri (SUSE-SU ve openSUSE-SU) yayınlandı.
  • Oracle – Mozilla Firefox ve Mozilla Thunderbird için güvenlik düzeltmeleri (ELSA) yayımlandı.
  • Amazon Linux – hala AMI görüntülerine düzeltmeler göndermedi.

Diğer yazılım

  • Zulip Sunucusu – sürüm 7.4.
  • Elektron – sürüm 22.3.24, 24.8.3, 25.8.1, 26.2.1 ve 27.0.0-beta.2
  • Xplan – sürüm 23.9.289.
  • Signal-Masaüstü – sürüm 6.30.2.
  • Honeyview – sürüm 5.51.
Yamalandığı bilinen diğer yazılımlar şunlardır:

  • Slack
  • 1Password
  • Telegram
Etkilenen yazılım paketlerinin sayısı hepsini kontrol edemeyecek kadar fazla. Listelenmeyen belirli bir teklif hakkında bilgi edinmek isteyenler geliştiriciye danışmalıdır.

Yanlış negatiflere dikkat edin

Rezillion, Apple'ın ImageIO ikili dosyalarının taranmasının yalnızca libwebp kullandığını değil aynı zamanda vp8l_dec.c, vp8li_dec.h, huffman_utils.c ve huffman_utils.h'ye referans verdiğini de gösterdiğini söyledi. Bunlar, libwebp'de bulunan ve CVE-2023-4863'e neden olan dosyaların aynısıdır.

Citizen Lab ve Apple'ın yorumu olmadan, Google tarafından bildirilen CVE-2023-4863 ile Apple tarafından bildirilen CVE-2023-41064 arasındaki ilişkinin tam olarak ne olduğunu doğrulamak mümkün değil. (CVE, yaygın güvenlik açıkları ve risklere maruz kalmaların kısaltmasıdır.) CVE sisteminin tüm amacı, bir güvenlik açığının kaynağını tanımlamaktır, böylece kaynaktan yazılım üreten veya kullanan herhangi biri, güvenlik açığı olup olmadığını kolayca anlayabilir.

CVE'ler aynı temel güvenlik açığını kapsıyorsa, keşfine katılan ekiplerin koordineli olması ve bunu açıkça ortaya koyması gerekirdi. Google'ın bildirdiği CVE'de libwebp'yi ihmal etmesi, yalnızca eksiksizlik eksikliğini artırdı. Rezillion araştırmacıları, birçok geliştiricinin bakımını yaptıkları uygulamalardaki savunmasız bileşenleri izlemek için bir SBOM (yazılım malzeme listesi) derleyen otomatik tarayıcılar kullanması nedeniyle bu arızanın tüm ekosistemi riske attığını söyledi.

Araştırmacılar, eksik açıklamaların, ürünlerinin savunmasız olup olmadığını belirlemeye çalışan geliştiriciler için "zorlu bir girişim" sunduğunu söyledi. Netlik eksikliğinin, geliştiricileri güvenlik açıklarını ararken yanlış olumsuz sonuçlar alma riskiyle karşı karşıya bıraktığını da söylediler. Araştırmacılar şunları yazdı:

Güvenlik açığı başlangıçta Chromium tabanlı uygulamaları hedef alıyor gibi görünse de artık daha iyi bildiğimize göre, WebP codec işlevi için her yerde bulunan libwebp paketine dayanan çok daha geniş bir yazılım ve uygulama yelpazesini etkileme potansiyeline sahip olduğunu anlıyoruz. Bu paket, boyut ve hız açısından JPEG ve PNG'den daha iyi performans göstererek verimliliğiyle öne çıkıyor. Sonuç olarak, çok sayıda yazılım, uygulama ve paket bu kitaplığı benimsemiş, hatta libwebp'in kendilerine bağımlı olduğu paketleri benimsemiş, bu da savunmasız sistemleri tanımlamaya çalışırken karmaşık bir zorluk yaratmıştır. Libwebp'in yaygınlığı, saldırı yüzeyini önemli ölçüde genişleterek hem kullanıcılar hem de kuruluşlar için ciddi endişelere yol açıyor.

Ortamlarında SBOM çözümleri bulunan kuruluşların, bağımlılık olarak libwebp'nin savunmasız bir sürümünü kullanarak herhangi bir paket için SBOM'u sorgulamaları önerilir. Örneğin chromium gibi çeşitli uygulamalar sistem libwebp kitaplığına karşı oluşturulduğundan, sistem libwebp kitaplığının yamalı olduğundan emin olmak özellikle önemlidir.

Apple ve Google açıklamalarında kullanılan sade İngilizce ve bunun sonucunda ortaya çıkan resmi CVE'ler, okuyuculara sıfır günlerin farklı ve yalnızca bir avuç ürünle sınırlı olduğunu düşünmeleri için iyi bir neden verdi. Artık daha iyisini bildiğimize göre geliştiricilerin ve son kullanıcıların yazılımı dikkatle incelemesi gerekiyor. WebP görüntüleri ile herhangi bir şekilde etkileşime giriyorsa, kullanımının güvenli hale gelmesinden önce büyük ihtimalle yamanması gerekiyor.
Daha yeni Daha eski