Netfilter'da 15 yıldan uzun bir süre önce meydana gelen bir güvenlik açığı, ayrıcalıkların yükselmesine izin verdi

Birkaç gün önce şöyle bir haber çıktı. Netfilter'da bir güvenlik açığı tespit edildi (ağ paketlerini filtrelemek ve değiştirmek için kullanılan bir Linux çekirdek alt sistemi), yerel bir kullanıcının kök ayrıcalıkları kazanmasına izin verir bir sistemdeYalıtılmış bir kaptayken bile.

CVE-2021-22555 güvenlik açığı 2.6.19 çekirdeğinden beri var olan bir problem., 15 yıl önce piyasaya sürüldü ve sürücülerdeki bir hatadan kaynaklanan IPT_SO_SET_REPLACE ve IP6T_SO_SET_REPLACE, bu, uyumluluk modunda setockopt çağrısı aracılığıyla özel olarak dekore edilmiş parametreler gönderilirken arabellek taşmasına neden olur.

Belki de bu noktada pek çok kişi, Linux çekirdeğindeki bir kusurun bu kadar uzun süre fark edilmemesinin nasıl mümkün olduğunu merak edecektir ve bunun cevabı, Linux 2.6.19'dan beri mevcut olan kusura rağmen, güvenlik açığının kod aracılığıyla bulunmasıdır. denetim, C kodu tekrarlanabilir olmasa da, ayrıcalıkları yükseltmek için gerekli kaynaklar o sırada bulunamadığından istismar edilemedi.

Örneğin, ayrıcalıksız kullanıcı ad alanları için destek, çekirdek 3.8'dedir. Ayrıca, bazı dağıtımlarda ayrıcalığı olmayan kullanıcı ad alanlarını devre dışı bırakmak için sysctl ekleyen bir düzeltme eki vardır.

Normal koşullar altında, yalnızca kök kullanıcı compat_setsockopt () öğesini çağırabilir.Ancak gerekli izinler bir saldırı gerçekleştirmek ayrıca imtiyazsız bir kullanıcı tarafından da elde edilebilirler. kullanıcı ad alanlarının etkin olduğu sistemlerde.

CVE-2021-22555, Linux Netfilter'da tüm modern güvenlik azaltmalarını atlayacak ve çekirdek kodu yürütmesini sağlayacak kadar güçlü, 15 yıllık bir yığın dışı yazma güvenlik açığıdır.

Böyle anlatılır ki yerel bir kullanıcı, ayrı bir kök kullanıcıya sahip bir kapsayıcı oluşturabilir ve buradan güvenlik açığından yararlanabilir.ben. Örneğin, "kullanıcı ad alanları" varsayılan olarak Ubuntu ve Fedora'da bulunur, ancak Debian ve RHEL'de bulunmaz.

Bu güvenlik açığı, güvenlik açığının üzerine kısmen yazılarak kullanılabilir. m_list->nextIşaretçi msg_msgyapı ve kullanımdan sonra ücretsiz elde. Bu, çekirdek kodunuzun KASLR, SMAP ve SMEP'i atlayarak çalışmasını sağlayacak kadar güçlüdür.

Ayrıca xt_compat_target_from_user() işlevinde, 32-bit gösterimden 64-bit gösterime dönüştürüldükten sonra çekirdek yapılarını kaydederken hatalı bellek boyutu hesaplaması nedeniyle sorun ortaya çıkıyor.

Gibi bahsedilir ki hata, arabellek dışındaki herhangi bir konuma dört "sıfır" bayt yazılmasına izin verir atanmış, ofset 0x4C ile sınırlandırılmıştır. Bundan dolayı bahsedildiği bu özelliğin bir istismar oluşturmak için yeterli olduğu ortaya çıktı kök haklarının elde edilmesini sağlar: msg_msg yapısındaki m_list-> sonraki işaretçisi silinerek, hafızayı boşalttıktan sonra verilere erişim koşulları yaratıldı (ücretsiz kullanım), daha sonra adresler ve değişiklikler hakkında bilgi almak için kullanıldı. msgsnd () sistem çağrısını değiştirerek diğer yapılara.

Hata raporu ile ilgili olarak, tespit edilen herhangi bir güvenlik açığı gibi, bu da bir süreci ve Nisan ayında çekirdek geliştiricilerine yapılan raporu ve ardından birkaç gün içinde düzeltilen raporu ve desteklenen tüm dağıtımlara dahil edilen yama ile ilgilidir. hata hakkında bilgi daha sonra serbest bırakılabilir.

Debian, Arch Linux ve Fedora projeleri zaten paket güncellemeleri oluşturdu. Ubuntu'dan başlayarak, RHEL ve SUSE güncellemeleri devam ediyor. Hata ciddi olduğundan, pratikte istismar edilebilir ve konteynerden kaçmayı sağlar, Google, keşfini 10,000 dolar olarak tahmin etti ve ödülü ikiye katladı güvenlik açığını tespit eden araştırmacıya ve kCTF kümesinde Kubernetes kapsayıcılarının yalıtılmasını önlemek için bir yöntem belirlemeye yöneliktir.

Test için, bir istismarın çalışan bir prototipi hazırlandı KASLR, SMAP ve SMEP koruma mekanizmalarını atlar.

Nihayet hakkında daha fazla bilgi edinmek istiyorsanız, detayları kontrol edebilirsin Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.