Protobuf.js’ye Yönelik Kritik Güvenlik Açıkları
Son dönemlerde, siber güvenlik araştırmacıları, Protobuf.js isimli JavaScript ve TypeScript uygulamasında altı adet kritik güvenlik açığı tespit etti. Bu açıklar, doğru şekilde istismar edildiğinde, uzaktan kod yürütme (RCE) ve hizmet reddi (DoS) saldırılarına yol açabilmektedir.
Açıkların Tanımı ve Etkileri
Protobuf, yapılandırılmış verileri serileştirmek için kullanılabilen, dil bağımsız ve açık kaynaklı bir mekanizmadır. 2008 yılında yayınlanmadan önce, Google tarafından iç kullanım için geliştirilmiştir. Tespit edilen bu açıklar, protobuf.js kullanan Node.js uygulamalarını, Google Cloud istemci kütüphanelerini, Baileys gibi mesajlaşma çerçevelerini ve CI/CD boru hatlarını etkilemektedir. Cyera’ya göre, Protobuf verilerini ayrıştıran veya protobuf.js ile şemalardan kod üreten her Node.js servisi de muhtemel etkileyenler arasındadır.
Saldırı Nasıl Çalışıyor?
Protobuf.js kütüphanesinin şemaları ve meta verileri varsayılan olarak güvenilir olarak ele almasından kaynaklanan açıklar, uygulama davranışını etkileyebilir ve kod yürütülmesine yol açabilir. Özellikle dikkat çekici senaryolar şu şekildedir:
- CVE-2026-44289 (CVSS puanı: 7.5): Sınırlandırılmamış protobuf yığın derinliği ile DoS
- CVE-2026-44290 (CVSS puanı: 7.5): Güvensiz seçenek yolları ile şemalar yüklenirken süreç çapında DoS
- CVE-2026-44291 (CVSS puanı: 8.1): Prototip kirlenmesi sonrasında kod üretimi
- CVE-2026-44292 (CVSS puanı: 5.3): Üretilen mesaj yapıcılarında prototip enjeksiyonu
- CVE-2026-44294 (CVSS puanı: 5.3): Üretilen kodda özelleştirilmiş alan adlarından DoS
- CVE-2026-44295 (CVSS puanı: 8.7): Özelleştirilmiş şemalardan kod enjeksiyonu
Bu açıkların en kritik olanı, CVE-2026-44291, saldırgan kontrolündeki bir girdinin kabul edildiği durumlarda kod yürütülmesine neden olmaktadır. Saldırgan, kirlilik etkisinin yarattığı güven açığı ile zararlı bir Protobuf şeması sunarak CI/CD iş akışlarını zehirleyebilir veya Baileys ile geliştirilmiş WhatsApp botlarını çökertebilir.
Etkilenen Sistemler
Aşağıdaki versiyonlar, bu güvenlik açıklarına karşı hassastır:
- protobuf.js: versiyonlar = 8.0.0
- protobufjs-cli: versiyonlar = 2.0.0
Cyera, bu açıkların tarayıcılarda, veri tabanlarında ve bulut SDK’larında geniş çapta kullanılmasından dolayı, kritik kurumsal ve yapay zeka iş yüklerinin etkilenme olasılığının yüksek olduğuna dikkat çekmektedir.
Çözüm ve Korunma
Güvenlik açıklarını gidermek için kullanılabilecek yamalar aşağıdaki gibidir:
- protobuf.js: 7.5.6 ve 8.0.2
- protobufjs-cli: 1.2.1 ve 2.0.2
Kullanıcıların, potansiyel tehditlere karşı öne geçmek için bu yamaları en kısa sürede uygulaması önerilmektedir. Ayrıca, sistemlerinizde bu bileşenlerin kullanımı söz konusu ise, portları kapatmak ve güncellemeleri sürekli kontrol etmek kritik bir önlem olarak değerlendirilebilir.
Güvenlik ekiplerinin, şemalar, meta veriler ve yapılandırma dosyalarının güvenilir girdiler olarak kabul edilmesinin tehlikelerinin farkında olması gerekmektedir. Bu güven ilişkisini kıran durumlar, yeni saldırı yüzeyleri yaratmakta ve bu durum siber tehditlerin artmasına zemin hazırlamaktadır.


