Openpgp.js Güvenlik Açığı Saldırganlarının Parodi Mesaj İmzası Doğrulaması


Openpgp.js Güvenlik Açığı Saldırganlarının Parodi Mesaj İmzası Doğrulaması

Saldırganların dijital imzalar oluşturmasına ve kullanıcıları kötü niyetli içeriğe inanmaya aldıklarına izin veren yaygın olarak kullanılan OpenPGP.JS kütüphanesinde kritik bir güvenlik açığı keşfedilmiştir.

CVE-2025-47934 olarak adlandırılan kusur, OpenPGP standardının popüler JavaScript uygulamasına dayanan çok sayıda web tabanlı uygulamada ve e-posta istemcisi arasında güvenli iletişimi zayıflatabilecek bir şifreleme güven ihlalini temsil eder.

Güvenlik açığı, v5.11.3 ve v6.1.1’den önceki OpenPGP.JS sürümlerini etkiler, bu da güvenli iletişim için kütüphaneyi kullanan şifreli e -posta hizmetlerine ve diğer uygulamalara bağımlı milyonlarca kullanıcıyı etkiler.

Google Haberleri

Etkilenen önemli platformlar, Mailvelope ve potansiyel olarak diğer web tabanlı e-posta istemcilerini içerir, ancak Proton Mail’in bu özel konudan etkilenmediği doğrulanmıştır.

Bu güvenlik açığının şiddeti, dijital imza doğrulamasının temel ilkesini tamamen altleştirme yeteneğinden kaynaklanmakta ve saldırganların meşru bir kaynaktan geçerli bir şifreleme imzasının görünümünü korurken keyfi kötü niyetli içerik sunmasına izin vermektedir.

Codean Labs araştırmacıları, bu güvenlik açığını güvenlik araştırma programı aracılığıyla belirledi ve bir hedef kullanıcıdan geçerli herhangi bir imzaya erişimi olan bir saldırganın tamamen farklı içeriği doğrulamak için doğrulama sürecini nasıl değiştirebileceğini gösterdi.

Araştırma ekibi, “meşru” kelimesi hakkında meşru bir imzanın, şifreleme doğrulama başarısını korurken “kötü niyetli” kelimesinde geçerli bir imza olarak nasıl görünebileceğini göstererek saldırıyı başarıyla gösterdi.

Keşif, güvenlik açığını ele alan yamalar yayınlayan ve gelecekte benzer saldırıları önlemek için daha katı dilbilgisi doğrulaması uygulayan OpenPGP.JS geliştirme ekibinden derhal harekete geçti.

Koordineli açıklama süreci, Mayıs 2025’in başlarında, bakımcılar tarafından onaylandıktan sonra iki hafta içinde yayınlanan düzeltmeler ve danışmanlar ile başladı.

Teknik sömürü mekanizması

Güvenlik açığı, openpgp.js’nin mesaj doğrulaması sırasında paket listelerini nasıl işlediğinde kritik bir kusurdan yararlanır.

Saldırı, kütüphanenin sıkıştırılmış ve sıkıştırılmamış veri paketlerinin esnek işlenmesinden yararlanarak, aynı mesaj içindeki farklı paket dizileri üzerinde imza doğrulaması ve veri çıkarmanın çalıştığı bir senaryo oluşturuyor.

Bir saldırgan, meşru bir mesaj alarak ve keyfi içerik içeren kötü niyetli sıkıştırılmış bir veri paketi ekleyerek kötü biçimlendirilmiş bir paket listesi oluşturur.

Ortaya çıkan yapı, orijinal tek geçiş imzası paketini, meşru içeriğe sahip gerçek veri paketini, geçerli bir imza paketini ve ardından kötü niyetli yük yükü içeren saldırgan kontrollü sıkıştırılmış veri paketini içerir.

Doğrulama işlemi sırasında, openpgp.js, ilk olarak akışlı bir paket türüyle karşılaşana kadar paketleri okur ve başlangıçta yalnızca meşru imzalı içeriği işler.

. unwrapCompressed() Yöntem bu sınırlı paket listesini inceler ve sıkıştırılmış veri bulamaz, böylece meşru içeriğe karşı imzayı başarıyla doğrular.

Bununla birlikte, kütüphane daha sonra kullanıcıya geri dönmek için mesaj verilerini aldığında, şimdi tamamlanmış paket listesini yeniden inceler ve karşılaştığı ilk sıkıştırılmış veri paketinden içeriği, saldırganın kötü niyetli yükü içeren ilk sıkıştırılmış veri paketinden çıkarır.

const verificationResult = await openpgp.verify({ message, verificationKeys: publicKey });
console.log(`Signed message data: ${verificationResult.data}`); // Returns malicious content
const { verified } = verificationResult.signatures[0];
await verified; // Signature verification succeeds

Paket işlemedeki bu zamanlama tutarsızlığı, hangi içeriğin kriptografik olarak doğrulandığı ve kullanıcıya hangi içerik sunulduğu arasında tehlikeli bir kopukluk oluşturur ve temel olarak dijital imzaların sağladığı güvenlik garantisini bozar.

Herhangi biriyle tehdit tepkisini otomatikleştirin. -> Tam erişim isteyin



Source link