Pagkahuyang sa Linux Netfilter kernel subsystem

Usa ka pagkahuyang (CVE-2021-22555) ang giila sa Netfilter, usa ka subsystem sa Linux kernel nga gigamit sa pagsala ug pag-usab sa mga pakete sa network, nga nagtugot sa usa ka lokal nga tiggamit nga makakuha og mga pribilehiyo sa gamut sa sistema, lakip na samtang anaa sa usa ka hilit nga sudlanan. Usa ka nagtrabaho nga prototype sa usa ka pagpahimulos nga nag-bypass sa KASLR, SMAP ug SMEP nga mekanismo sa pagpanalipod giandam alang sa pagsulay. Ang tigdukiduki nga nakadiskubre sa pagkahuyang nakadawat ug $20 nga ganti gikan sa Google tungod sa pag-ila sa usa ka pamaagi sa paglaktaw sa pag-inusara sa mga sudlanan sa Kubernetes sa usa ka kCTF cluster.

Ang problema anaa na sukad sa kernel 2.6.19, gipagawas 15 ka tuig na ang milabay, ug gipahinabo sa usa ka bug sa IPT_SO_SET_REPLACE ug IP6T_SO_SET_REPLACE nga mga tigdumala nga maoy hinungdan sa usa ka buffer overflow sa dihang nagpadala ug espesyal nga pormat nga mga parameter pinaagi sa setsockopt nga tawag sa compat mode. Ubos sa normal nga mga kahimtang, ang gamut nga tiggamit lamang ang makahimo sa pagtawag sa compat_setsockopt(), apan ang mga pribilihiyo nga gikinahanglan aron mahimo ang pag-atake mahimo usab nga makuha sa usa ka dili pribilihiyo nga tiggamit sa mga sistema nga adunay suporta alang sa mga namespace sa user nga gipagana.

Ang usa ka tiggamit makahimo og usa ka sudlanan nga adunay usa ka bulag nga tiggamit sa gamut ug pahimuslan ang pagkahuyang gikan didto. Pananglitan, ang "user namespaces" gi-enable pinaagi sa default sa Ubuntu ug Fedora, apan wala gi-enable sa Debian ug RHEL. Ang patch nga nag-ayo sa pagkahuyang gisagop sa Linux kernel kaniadtong Abril 13. Ang mga update sa package nahimo na sa mga proyekto sa Debian, Arch Linux ug Fedora. Sa Ubuntu, RHEL ug SUSE, ang mga update anaa sa pagpangandam.

Ang problema mahitabo sa xt_compat_target_from_user() function tungod sa sayop nga kalkulasyon sa gidak-on sa panumduman sa dihang nagtipig sa mga istruktura sa kernel human sa pagkakabig gikan sa 32-bit ngadto sa 64-bit nga representasyon. Gitugotan sa bug ang upat ka null bytes nga isulat sa bisan unsang posisyon lapas sa gigahin nga buffer nga gilimitahan sa offset 0x4C. Kini nga bahin nahimo nga igo na aron makahimo usa ka pagpahimulos nga nagtugot sa usa nga makakuha mga katungod sa gamut - pinaagi sa pagtangtang sa m_list-> sunod nga pointer sa istruktura sa msg_msg, gihimo ang mga kondisyon alang sa pag-access sa data pagkahuman sa pagpalingkawas sa memorya (paggamit-human-libre), nga gigamit dayon aron makakuha og impormasyon bahin sa mga adres ug mga kausaban sa ubang mga istruktura pinaagi sa pagmaniobra sa msgsnd() system call.

Source: opennet.ru

Idugang sa usa ka comment