Linux çekirdeğinin IPv6 yığınında uzaktan kod yürütülmesine izin veren güvenlik açığı

Linux çekirdeğinin ağ yığınındaki güvenlik açığı CVE-2023-6200) hakkında bilgi açıklandı; bu güvenlik açığı, belirli koşullar altında, yerel ağdaki bir saldırganın, özel olarak tasarlanmış bir ICMPv6 paketi göndererek kendi kodunun yürütülmesini sağlamasına olanak tanır. yönlendirici hakkındaki bilgilerin reklamını yapmayı amaçlayan bir RA (Yönlendirici Reklamı) mesajı.

Güvenlik açığından yalnızca yerel ağ üzerinden yararlanılabilir ve IPv6 desteği etkin olan ve “net.ipv6.conf.<network_interface_name>.accept_ra” sysctl parametresi etkin olan sistemlerde görünür (“sysctl net.ipv6.conf komutuyla kontrol edilebilir) | grep Accept_ra”), harici ağ arayüzleri için RHEL ve Ubuntu'da varsayılan olarak devre dışıdır, ancak aynı sistemden saldırıya izin veren geridöngü arayüzü için etkinleştirilmiştir.

Güvenlik açığı, çöp toplayıcının eski fib6_info kayıtlarını işlediği bir yarış durumundan kaynaklanır ve bu durum, zaten boş olan bir bellek alanına erişime yol açabilir (sonradan kullanım). Bir yönlendirici tanıtım mesajı (RA, Yönlendirici Reklamı) içeren bir ICMPv6 paketi alındığında, ağ yığını ndisc_router_discovery() işlevini çağırır; bu, RA mesajının rota ömrü hakkında bilgi içermesi durumunda fib6_set_expires() işlevini çağırır ve gc_link'i doldurur. yapı. Eski girişleri temizlemek için, gc_link'teki girişi ayıran ve fib6_info yapısı tarafından kullanılan belleği temizleyen fib6_clean_expires() işlevini kullanın. Bu durumda, fib6_info yapısına ilişkin belleğin zaten serbest bırakıldığı belirli bir an vardır, ancak ona olan bağlantı gc_link yapısında olmaya devam eder.

Güvenlik açığı, 6.6 şubesinden itibaren ortaya çıktı ve 6.6.9 ve 6.7 sürümlerinde giderildi. Dağıtımlardaki güvenlik açığının giderilmesi durumu şu sayfalardan değerlendirilebilir: Debian, Ubuntu, SUSE, RHEL, Fedora, Arch Linux, Gentoo, Slackware. 6.6 çekirdeğiyle paket gönderen dağıtımlar arasında Arch Linux, Gentoo, Fedora, Slackware, OpenMandriva ve Manjaro sayılabilir; diğer dağıtımlarda hatalı değişikliğin daha eski çekirdek dallarına sahip paketlere geri aktarılması mümkündür (örneğin, Örneğin, Debian'da 6.5.13 çekirdeğine sahip paketin savunmasız olduğu belirtilirken sorunlu değişiklik 6.6 dalında ortaya çıktı). Bir güvenlik çözümü olarak IPv6'yı devre dışı bırakabilir veya "net.ipv0.conf.*.accept_ra" parametrelerini 6'a ayarlayabilirsiniz.

Kaynak: opennet.ru

Yorum ekle