Zafiyet.live Keşfet. Değerlendir. Düzelt. Doğrula.
  • Yama var
  • Son 7 gün
  • CWE-409

CVE-2026-65627

jose kütüphanesinde jose_jwe_zip:uncompress/2 üzerinden sıkıştırma bombası (decompression bomb) açığı

potatosalad jose

Orta 6,9 CVSS 4.0
Yayımlandı
Güncellendi
26 Eki 2026
Açık yaşı
1 gün
Kaydı açan
EEF

ÖzetTürkçe

Potatosalad jose (erlang-jose) içinde, sıkıştırılmış veriyi işlemede sınırsız kaynak kullanımına yol açan bir zayıflık (Veri Amplifikasyonu) bulunmaktadır ve uzaktan bir saldırgan, küçük ve özel olarak hazırlanmış bir JWE belirteci ile bir düğümün belleğini tüketebilir. jose_jwe_zip:uncompress/2 fonksiyonu (src/jwe/jose_jwe_zip.erl), isteğe bağlı zip: DEF başlığı taşıyan bir JWE'nin DEFLATE ile sıkıştırılmış düz metnini, saldırgan kontrolündeki tüm akış üzerinde zlib:inflate/2 çağırarak açar; çıktı boyutu ya da açılma oranı üzerinde herhangi bir sınır yoktur. Ham DEFLATE, yüksek derecede tekrarlı girdilerde yaklaşık 1000:1 oranlara ulaşabildiğinden, birkaç kilobaytlık bir belirteç tek bir çağrıda yüzlerce megabayta veya gigabayta kadar açılabilir.

Sıkıştırma açma işlemi, alıcı yükü inceleyip reddedemeden önce, şifre çözme sırasında jose_jwe:block_decrypt/2 (Elixir'de JOSE.JWE.block_decrypt/2) üzerinden otomatik olarak çalışır. Yaygın asimetrik anahtar yönetimi algoritmalarında (RSA-OAEP, ECDH-ES) saldırganın böyle bir belirteç hazırlamak için yalnızca alıcının genel anahtarına ihtiyacı vardır; bu nedenle herhangi bir kimlik doğrulama veya gizli materyal gerekmez. Tek bir küçük belirteç, düğümün belleğini tüketip BEAM'i çökertebilir ve tüm kullanıcılara yönelik hizmet dışı bırakma (denial of service) durumuna yol açabilir.

Bu sorun, jose sürümleri 1.0.0 ile 1.11.13 öncesini etkilemektedir.

Kaynaktaki açıklama (İngilizce)

Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in potatosalad jose (erlang-jose) allows a remote attacker to exhaust a node's memory with a small crafted JWE token.

The jose_jwe_zip:uncompress/2 function in src/jwe/jose_jwe_zip.erl decompresses the DEFLATE-compressed plaintext of a JWE that carries the optional zip: DEF header by calling zlib:inflate/2 on the entire attacker-controlled stream, with no bound on the output size or the inflation ratio. Raw DEFLATE reaches ratios around 1000:1 on highly repetitive input, so a few-kilobyte token inflates to hundreds of megabytes or gigabytes in a single call.

Decompression runs automatically during decryption through jose_jwe:block_decrypt/2 (JOSE.JWE.block_decrypt/2 in Elixir), before the recipient can inspect or reject the payload. With the common asymmetric key-management algorithms (RSA-OAEP, ECDH-ES) an attacker needs only the recipient's public key to craft such a token, so no authentication or secret material is required. A single small token can exhaust the node's memory and crash the BEAM, denying service to all users.

This issue affects jose: from 1.0.0 before 1.11.13.

Üreticinin geçici önlemi (İngilizce)

Reject JWE tokens that carry a zip header before passing them to jose_jwe:block_decrypt/2. DEFLATE compression is rarely used in legitimate JWE traffic, so untrusted tokens whose protected header contains zip: DEF can be inspected and filtered out before decryption.

Bu açığın açıklamasını Türkçeye çevirdik. Adım adım çözüm önerilerini kritik ve yeni açıklar için hazırlıyoruz; düzeltilmiş sürüm aşağıdaki tabloda, ayrıntılar üreticinin duyurusunda.

Etkilenen sürümler1 yazılım

YazılımEtkilenenDüzeltildiği sürüm
potatosalad jose ≥ 1.0.0, < 1.11.13 1.11.13

Kaynaklar7 kaynak

Kayıt geçmişi

  1. Yayımlandı

İlgili açıklar

Türkçe metin, resmi kayıtlardaki bilgilerle yapay zekâ yardımıyla yazıldı ve yayından önce otomatik kontrollerden geçti. Bir değişikliği uygulamadan önce üreticinin duyurusuna mutlaka bakın.