Açık nasıl çalışıyor?

OpenSSH ile musl libc'nin crypt() fonksiyonu arasındaki etkileşim hatası, şifre doğrulamasında beklenmedik bir sonuç üretiyor. musl, hata durumunda normalde null dönmesi gerekirken "*" döndürüyor; OpenSSH ise bunu bir şifre hash'i gibi karşılaştırıyor. 256 karakterden uzun bir girdi bu zinciri tetikleyerek girişe izin veriyor.

Hangi sistemler etkileniyor?

Açığın etkin olması için OpenSSH kullanılması, musl libc, PAM'ın devre dışı olması, şifre kimlik doğrulamasının açık bırakılması ve SHA-512/256 hash'li bir kullanıcı hesabı bulunması gerekiyor. Alpine Linux bu koşulların çoğunu varsayılan olarak sağlıyor. Buildroot, Yocto ve Void Linux'ta da açık mevcut ancak her zaman etkin değil. OpenWRT varsayılan olarak Dropbear kullanıyor; yine de OpenSSH kurulursa risk oluşuyor.

Neden önemli?

Alpine, Docker, Kubernetes ve Proxmox konteynerlerinde yaygın olarak kullanılıyor. Çoğu kurulum internete açık olmasa da aynı ağdaki saldırganlar, geçerli bir kullanıcı hesabıyla ağa sızabiliyor. Tarama ve test oldukça kolay.

Ne yapmalı?

OpenSSH ve musl için yamalar yayımlandı. Sistemleri derhal güncellemek gerekiyor. Hızlı bir önlem olarak OpenSSH yapılandırmasında "PasswordAuthentication" ayarını "no" yapıp servisi yeniden başlatmak yeterli.