XZ Utils yazılımının kaynak kodunda yetkisiz uzaktan erişime izin verebilecek kötü amaçlı kod tespit edilmiştir.
CVE NO: CVE-2024-3094
ÖNEM DERECESİ: 10
ETKİLENEN ÜRÜN:
XZ Utils
ETKİLENEN VERSİYON:
XZ Utils 5.6.0
XZ Utils 5.6.1
XZ Utils ve liblzma Nedir? Ne İçin Kullanılır?
XZ Utils, kullanıcıların komut satırı üzerinden dosyaları sıkıştırmalarını ve açmalarını sağlayan bir araç setidir.
liblzma bir yazılım kütüphanesidir ve XZ Utils’ın temel bileşenlerinden birini oluşturur. Bu kütüphane, LZMA (Lempel-Ziv-Markov chain algorithm) ve LZMA2 sıkıştırma algoritmalarını kullanarak verileri sıkıştırma ve açma işlevlerini sağlar.
CVE-2024-3094 Güvenlik Açığı Hakkında
XZ projesinin kaynak paketlerinde saklanmış kötü amaçlı kod tespit edilmiştir. Bu kötü amaçlı kod, projenin bir parçası olan ve geniş çapta kullanılan liblzma kütüphanesinin derleme işlemi sırasında etkinleşen gizli bir test dosyası yoluyla önceden derlenmiş bir nesne dosyasını çıkarmaktadır. Bu durum, liblzma içerisindeki belirli fonksiyonların değiştirilmesine neden olmaktadır ve liblzma’daki bu değişiklik, bu kütüphaneye bağlı herhangi bir uygulamanın bütünlüğünü tehlikeye atarak veri alışverişinin manipüle edilmesine olanak tanır.
Bu güvenlik açığının sonuçlarının, SSH arka plan programında (sshd) kimlik doğrulamanın atlanmasına izin verme potansiyeli olduğundan, SSH işlevleri için liblzma’yı kullanan Linux dağıtımları için özellikle endişe vericidir. Belirli koşullar altında bu arka kapı, etkilenen sistemlere yetkisiz uzaktan erişim sağlayarak önemli bir güvenlik riski oluşturabilir.
Etkilenen Dağıtımlar
İşletim Sistemi | Yorum | Etkilenen Versiyon |
Red Hat | Red Hat Enterprise Linux (RHEL) etkilenmez ancak Fedora 41 ve Fedora Rawhide etkilenir. | Fedora 41 ve Fedora Rawhide |
Debian | Hiçbir Debian kararlı sürümünün etkilendiği bilinmiyor | 5.5.1alpha-0.1’den (2024-02-01 tarihinde yüklendi), 5.6.1-1’e kadar ve 5.6.1-1 dahil |
Kali Linux | – | Kali kurulumları 26 Mart – 29 Mart tarihleri arasında güncellenenler |
OpenSUSE | OpenSUSE Maintainers, 28 Mart’ta Tumbleweed’deki xz sürümünü geri aldı ve güvenli bir yedeklemeden oluşturulan yeni bir Tumbleweed snapshot’ı (20240328 veya üstü) yayınladı. | Tumbleweed anlık görüntüsü 20240328 ve önceki sürümler |
Amazon Linux | Etkilenmedi | – |
Alpine | – | 5.6.0, 5.6.0-r0, 5.6.0-r1 5.6.1, 5.6.1-r0, 5.6.1-r1 |
Arch | – | – Kurulum ortamı 2024.03.01 – Sanal makine görüntüleri 20240301.218094 ve 20240315.221711 – 2024-02-24 ve 2024-03-28 tarihleri arasında ve bu tarihler dahil oluşturulan konteyner görüntüleri |
Çözüm
Hem geliştiricilerin hem de XZ Utils kullanıcılarının, XZ Utils’in 5.4.6 Stable gibi bilinen, etkilenmeyen sürümlerine geçmeleri önerilir.
‘xz -V‘ veya ‘xz –version‘ komutu çalıştırılarak kurulu sürüm kontrol edilebilir.
Backdoor içeren XZ paketlerinin tespiti için kullanılabilecek YARA kuralları:
rule BKDR_XZUtil_Script_CVE_2024_3094_Mar24_1 {
meta:
description = "Detects make file and script contents used by the backdoored XZ library (xzutil) CVE-2024-3094."
author = "Florian Roth"
reference = "https://www.openwall.com/lists/oss-security/2024/03/29/4"
date = "2024-03-30"
score = 80
hash = "d44d0425769fa2e0b6875e5ca25d45b251bbe98870c6b9bef34f7cea9f84c9c3"
strings:
$x1 = "/bad-3-corrupt_lzma2.xz | tr " ascii
$x2 = "/tests/files/good-large_compressed.lzma|eval $i|tail -c +31265|" ascii
$x3 = "eval $zrKcKQ" ascii
condition:
1 of them
}
rule BKDR_XZUtil_Binary_CVE_2024_3094_Mar24_1 {
meta:
description = "Detects injected code used by the backdoored XZ library (xzutil) CVE-2024-3094."
author = "Florian Roth"
reference = "https://www.openwall.com/lists/oss-security/2024/03/29/4"
date = "2024-03-30"
score = 75
hash1 = "319feb5a9cddd81955d915b5632b4a5f8f9080281fb46e2f6d69d53f693c23ae"
hash2 = "605861f833fc181c7cdcabd5577ddb8989bea332648a8f498b4eef89b8f85ad4"
hash3 = "8fa641c454c3e0f76de73b7cc3446096b9c8b9d33d406d38b8ac76090b0344fd"
hash4 = "b418bfd34aa246b2e7b5cb5d263a640e5d080810f767370c4d2c24662a274963"
hash5 = "cbeef92e67bf41ca9c015557d81f39adaba67ca9fb3574139754999030b83537"
hash6 = "5448850cdc3a7ae41ff53b433c2adbd0ff492515012412ee63a40d2685db3049"
strings:
$op1 = { 48 8d 7c 24 08 f3 ab 48 8d 44 24 08 48 89 d1 4c 89 c7 48 89 c2 e8 ?? ?? ?? ?? 89 c2 }
$op2 = { 31 c0 49 89 ff b9 16 00 00 00 4d 89 c5 48 8d 7c 24 48 4d 89 ce f3 ab 48 8d 44 24 48 }
$op3 = { 4d 8b 6c 24 08 45 8b 3c 24 4c 8b 63 10 89 85 78 f1 ff ff 31 c0 83 bd 78 f1 ff ff 00 f3 ab 79 07 }
/* function signature from detect.sh provided by Vegard Nossum */
$xc1 = { F3 0F 1E FA 55 48 89 F5 4C 89 CE 53 89 FB 81 E7 00 00 00 80 48 83 EC 28 48 89 54 24 18 48 89 4C 24 10 }
condition:
uint16(0) == 0x457f
and (
all of ($op*)
or $xc1
)
}
rule BKDR_XZUtil_KillSwitch_CVE_2024_3094_Mar24_1 {
meta:
description = "Detects kill switch used by the backdoored XZ library (xzutil) CVE-2024-3094."
author = "Florian Roth"
reference = "https://gist.github.com/q3k/af3d93b6a1f399de28fe194add452d01?permalink_comment_id=5006558#gistcomment-5006558"
date = "2024-03-30"
score = 85
strings:
$x1 = "yolAbejyiejuvnup=Evjtgvsh5okmkAvj"
condition:
$x1
}
Sonuç
Söz konusu zafiyet kullanılarak gerçekleştirilecek saldırılara maruz kalmamak adına kullanıcı ve sistem yöneticileri tarafından ilgili zafiyetlerin giderilmesi için gerekli çalışmaların yapılması gerekmektedir.
Referanslar
https://www.wiz.io/blog/cve-2024-3094-critical-rce-vulnerability-found-in-xz-utils
https://www.redhat.com/en/blog/urgent-security-alert-fedora-41-and-rawhide-users
https://www.darkreading.com/vulnerabilities-threats/are-you-affected-by-the-backdoor-in-xz-utils
https://nvd.nist.gov/vuln/detail/CVE-2024-3094
https://www.phoronix.com/news/XZ-CVE-2024-3094
https://sysdig.com/blog/cve-2024-3094-detecting-the-sshd-backdoor-in-xz-utils/
https://github.com/Neo23x0/signature-base/blob/master/yara/bkdr_xz_util_cve_2024_3094.yar