UnrealIRCd'nin dahili web sunucusu bileşeni, WebSocket veya JSON-RPC dinleyicisi etkinleştirildiğinde HTTP protokolü konuşan istemcilere hizmet verir. Bu bileşende bulunan CVE-2026-90668 kodlu açık, gelen bir HTTP isteğindeki başlık (header) sayısını sınırlamadığı için uzaktaki bir saldırganın tek bir istekte sınırsız sayıda başlık göndererek sunucuda artan bellek tüketimine ve yanıtsız kalmaya (hizmet dışı bırakma, DoS) yol açabildiğini gösteriyor.
Kimler etkileniyor?
Açık, UnrealIRCd 6.0.5 ile 6.2.6 arası tüm sürümleri (6.2.7 öncesi) etkiliyor. Önemli bir sınırlama var: açığın istismar edilebilmesi için sunucu yapılandırmasında bir websocket veya rpc dinleyicisinin etkin olması gerekiyor; bu dinleyiciler UnrealIRCd'de varsayılan olarak kapalıdır. Yani yalnızca klasik IRC portlarını (6667/6697 gibi) açan, web soketi veya JSON-RPC arayüzü tanımlamamış sunucular bu açıktan doğrudan etkilenmiyor. Zafiyet CWE-770 (kaynak tüketimi) sınıfında ve CVSS puanı 7,5 (YÜKSEK) olarak derecelendirilmiş. Güvenlik veritabanlarındaki EPSS (istismar olasılığı) tahmini düşük düzeyde; şu ana kadar aktif, sahada gerçekleşen bir istismar bildirilmemiştir — bu açık, teorik/kanıtlanmış bir DoS zafiyeti olarak değerlendirilmelidir, doğrulanmış bir saldırı dalgası değildir.
Çözüm: yama veya hot-patch
UnrealIRCd ekibi açığı 6.2.7 sürümünde kalıcı olarak kapattı. Sunucuyu hemen güncelleyemeyen yöneticiler için, servisi yeniden başlatmadan uygulanabilen bir hot-patch komutu da sunuluyor:
CODE TERMINAL
./unrealircd hot-patch webserver-header-dosBu komut çalışan süreci yeniden başlatmadan ilgili kod yolunu düzeltir; ancak kalıcı çözüm için sürümü 6.2.7 veya sonrasına yükseltmek önerilir, çünkü hot-patch bir sonraki yeniden başlatmada sıfırlanabilir.
Yükseltemiyorsanız: geçici azaltma
- Dinleyiciyi kapatın: WebSocket veya JSON-RPC'ye gerçekten ihtiyacınız yoksa ilgili listen bloğundaki websocket veya rpc seçeneklerini kaldırıp ./unrealircd rehash yapın.
- Erişimi sınırlayın: WebSocket/JSON-RPC dinleyicisi gerekiyorsa bunu yalnızca güvendiğiniz IP aralıklarından (ör. bir ters proxy veya dahili ağ) erişilebilir hale getirin; genel internete doğrudan açmayın.
- Ters proxy'de başlık sınırı koyun: Nginx veya benzeri bir ters proxy önündeyse, large_client_header_buffers gibi ayarlarla proxy seviyesinde de başlık sayısı/boyutu sınırlandırılabilir; bu, uygulama yaması yerine geçmez ama ek bir savunma katmanı sağlar.
- Kaynak kullanımını izleyin: Sunucu belleğinde ani ve açıklanamayan artışlar için izleme/alarm kurun; bu tür bir DoS girişiminin erken belirtisi olabilir.
Genel öneri: WebSocket ve JSON-RPC sertleştirmesi
Bu açıktan bağımsız olarak, WebSocket veya JSON-RPC dinleyicisi çalıştıran her UnrealIRCd 6 kurulumunda şu adımlar önerilir:
- JSON-RPC arayüzünü yalnızca yönetim amaçlı kullanıyorsanız dinleyiciyi genel internete değil, yalnızca güvenilir yönetim ağına açın.
- TLS'yi zorunlu kılın (require-modes z ve ilgili dinleyicide TLS sertifikası) ki hem kimlik doğrulama hem de veri hem de bu tür istekler şifreli kanaldan geçsin.
- UnrealIRCd sürümünü düzenli olarak resmi duyurular ve GitHub güvenlik danışmanlıklarından takip edin; hot-patch mekanizması hızlı geçici çözüm sağlasa da sürüm takibinin yerini tutmaz.
Sonuç
CVE-2026-90668, yalnızca WebSocket veya JSON-RPC özelliklerini etkinleştirmiş UnrealIRCd 6 sunucularını ilgilendiren, aktif istismarı bildirilmemiş ama CVSS 7,5 ile yüksek dereceli bir kaynak tüketimi açığı. 6.2.7'ye yükseltmek veya hot-patch komutunu çalıştırmak, dinleyiciyi tamamen internete kapatmaktan sonra en hızlı ve en güvenli çözüm.
Kaynaklar
- UnrealIRCd Resmi Site
- Strix: CVE-2026-90668 - UnrealIRCd Resource Exhaustion (CVSS 7.5)
- VulDB: CVE-2026-90668
- OpenCVE: CVE-2026-90668
TR Siber Ekibi