Critical “10-out-of-10” Linux kernel SMB hole – should you worry? PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Kritikus „10-ből 10” Linux kernel SMB-lyuk – aggódnia kell?

Közvetlenül a karácsonyi hétvége előtt – valójában nagyjából ugyanabban az időben, amikor a LastPass jelszókezelő szolgáltatás elismerte, hogy igen, az Ön jelszótárolói bűnözők lopták el végül is – egy komolynak tűnő Linux kernel sebezhetőségre lettünk figyelmesek, ami a hírekben jelent meg.

A riasztások a Trend Micro Zero Day Initiative (ZDI) kezdeményezésétől származtak, amely valószínűleg a legismertebb a nulladik napi biztonsági hibák felvásárlásáról. Pwn2Own versenyek, ahol a bug-bounty vadászcsapatok élőben versenyeznek a színpadon a potenciálisan nagy pénzdíjakért.

A pénznyeremény szponzorálásáért cserébe az operációs rendszerektől a böngészőktől a hálózati nyomtatókig és az internetes útválasztókig terjedő termékek forgalmazói abban reménykednek, hogy vadonatúj biztonsági hibákat vásárolhatnak, így felelősségteljesen kijavíthatják a lyukakat. (A nyeremény átvételéhez a résztvevőknek megfelelő leírást kell adniuk, és vállalniuk kell, hogy nem osztanak meg semmilyen információt a hibáról, amíg az eladónak nem volt tisztességes esélye a javításra.)

Ám a ZDI nem csak a kompetitív hibavadászattal foglalkozik az évente kétszer megrendezett versenyein, hanem rendszeresen ad ki nulla napokra vonatkozó sebezhetőségi figyelmeztetéseket is, amelyeket hagyományosabb módokon hoztak nyilvánosságra, mint ez a cím. A Linux Kernel ksmbd használat utáni ingyenes távoli kódfuttatási biztonsági rése.

Windows számítógépek kiszolgálása Linuxon keresztül

Az SMB az s rövidítéseerver üzenetblokk, és ez az a protokoll, amely a Windows-hálózatok alapját képezi, így szinte minden Linux-kiszolgálón, amely hálózati szolgáltatásokat nyújt a Windows-számítógépeknek, az SMB-t támogató szoftver fut.

Így elképzelhető, hogy az SMB-vel kapcsolatos biztonsági hibák, különösen azok, amelyek kihasználhatók a hálózaton keresztül anélkül, hogy a támadónak először be kellene jelentkeznie, mint ahogyan ez itt is történik, potenciálisan komoly problémákat jelenthetnek a legtöbb nagy vállalati hálózatban.

Az SMB támogatásra általában szükség van az otthoni és kisvállalati NAS-ban is (Hálózati adattároló).

Nincs szükség arra, hogy saját maga tanulja meg a Linuxot, egy teljes értékű szervert állítson be, vagy hogyan konfigurálja a Linux hálózatot – elég a plug-and-play a NAS-eszközzel, amely beépített SMB-támogatással rendelkezik, és készen áll az Ön számára. .

Miért az ünnepi időzítés?

Ebben az esetben a hibát szándékosan nem hozták nyilvánosságra a karácsony előtti éjszaka előtti éjszakán, nem túl ho-ho-ho-ajánlattal, hogy elrontsák az ünnepi időszakot azzal, hogy kiborítanak.

És nem arról számoltak be közvetlenül a hétvége előtt, hogy eltemessék a rossz PR-t, abban a reményben, hogy elég nyaralni akarsz ahhoz, hogy teljesen lemaradj a sztoriról, vagy pedig vállat vonsz az újévig.

A jó hír az, hogy ahogy ez általában a felelősségteljes nyilvánosságra hozatal égisze alatt megtörténik, a ZDI jelentésének időpontját előre egyeztették, feltehetően a hiba feltárásakor, így elegendő időt hagyva a Linux kernel csapatának a probléma megfelelő kijavítására, de ennek ellenére nem lehetővé téve számukra, hogy határozatlan időre elhalasszák a kérdést.

Ebben az esetben a hibajelentés 2022-07-26-án történt, és amit a ZDI úgy emleget, „[a] tanácsadó koordinált nyilvános közzététele” 2022-12-22-re volt beállítva, ami pontosan 150 napos kihagyásnak bizonyul, ha old-school stílust számolunk, és mindkét végén beleszámítjuk a teljes napot.

Tehát annak ellenére, hogy ez a hiba drámai módon terjedt el az ünnepi hétvégén, tekintve, hogy a távoli kódfuttatás (RCE) lyukat magában a Linux kernelben, és 10/10-es úgynevezett CVSS-pontszámmal érkezett. Kritikai...

…a nyilvánosságra hozatalt követő két napon belül befoltozták a Linux forráskódjába, a javítást pedig elfogadták és a hivatalos Linux kernel forráskódba csomagolták a Linux 5.15.61 kiadásához, még 2022-08-17-én. 23 nappal a jelentés első beérkezése után.

Más szóval, ha azóta bármikor frissítette a Linux kernelt, már biztonságban van, függetlenül attól, hogy Ön vagy disztribúciója milyen kernelkonfigurációs beállításokat használt a kernel fordítása során.

Ez az időszak magában foglalja az 24-ös kernel sorozat 5.15 későbbi frissítését, jelenleg 5.15.85-nél, valamint a 6.0-s, 6.1-es kernel és a még jelölt stádiumú 6.2-es kernel bármely verziójával, amelyek mindegyike 2022 augusztusa után jelent meg első kiadásában. .

Valószínűleg nem az az SMB szoftver, amelyre gyanakszik

Továbbá, bár első pillantásra úgy tűnik, hogy ez a hiba elkerülhetetlenül hatással lesz minden Windows-hálózatot támogató Linux szerverre vagy eszközre, ez sem igaz.

A legtöbb rendszeradminisztrátor és tapasztalatunk szerint a legtöbb NAS-programozó Windows SMB-támogatást nyújt egy régóta működő és köztiszteletben álló nyílt forráskódú eszközkészleten, az úgynevezett. Samba, ahol a név Samba egyszerűen az eredeti fejlesztő, nyílt forráskódú világító legközelebbi kiejthető szó Andrew "Tridge" Tridgell OAM, találhatja az SMB rövidítést.

Bárki, aki használta a Sambát, tudja, hogy a szoftver normál alkalmazásként fut, ún felhasználói terület – más szóval, anélkül, hogy saját kódra lenne szüksége a kernelen belül, ahol még a szerény hibák is veszélyes következményekkel járhatnak.

Valójában a fő Samba programfájlt hívják smbd, ahol a záró -D egy tipikus unixizmus jelentése démon, vagy háttérfolyamat – amit a Windows rendszergazdák a szolgáltatás.

De ez a hiba, amint a ZDI jelentésből is látható, a kernel modul hívott ksmbd, Ahol a -D háttérszolgáltatást jelöl, a -SMB- a Windows hálózati támogatást jelöli, és a K- eszközök kernel térben fut, azaz közvetlenül a kernelen belül.

Ezen a ponton valószínűleg azt kérdezed magadtól: „Miért kellene az SMB támogatásának bonyolultságát közvetlenül a kernelbe temetni, tekintve, hogy már van egy megbízható és köztiszteletben álló felhasználói terület termékünk a Samba formájában, és tekintettel arra, hogy sokkal nagyobbak a kockázatok?”

Valóban miért?

Mint oly sokszor, úgy tűnik, két fő oka van: [A] mert megtehetjük! és [B] a teljesítmény miatt.

A tipikusan magas szintű szoftverfunkciókat a kernelbe tolva gyakran javíthatja a teljesítményt, bár szinte mindig meg kell fizetnie a biztonság megfelelő, esetleg jelentős csökkenésének árát.

Mit kell tenni?

  • Ellenőrizze, hogy van-e Linux kernel az 5.15.61 (2022-08-17 dátumú) vagy az utáni kiadás alapján. Ha igen, ez a hiba javítva van a forráskódban. Függetlenül attól, hogy milyen kernelfordítási beállításokat választasz (vagy a disztribúciókészítőd), a hiba nem jelenik meg a kernel összeállításában.
  • Ellenőrizze, hogy a Linux kernel build tartalmazza-e ksmbd. A legtöbb népszerű disztribúció nem fordítja le és nem építi modulként, így még véletlenül sem tudja betölteni vagy aktiválni.
  • Forduljon a szállítóhoz, ha olyan alkalmazást, például NAS-dobozt vagy más eszközt használ, amely támogatja a Windows-számítógépek csatlakozását. Valószínű, hogy a NAS-eszköz nem fogja használni ksmbd, még akkor is, ha van benne elméletileg sebezhető kernelverzió. (Megjegyzés a Sophos ügyfeleinek: tudomásunk szerint egyetlen Sophos készülék sem használ ksmbd.)
  • Ha használsz ksmbd nem választható, fontolja meg kockázatának újraértékelését. Győződjön meg róla, hogy méri az elért teljesítmény valódi növekedését, és döntse el, hogy a nyereség valóban megéri-e.

AZ EXPOZÍCIÓ ELLENŐRZÉSÉRE HASZNÁLT PARANCSOK

Any Linux from 5.15.61 on, or any 6.x, is already patched. 
To check your Linux version:

  $ uname -o -r
  6.1.1 GNU/Linux     
To see if this kernel feature is compiled in, you can dump the 
compile-time configuration of the running kernel:

  $ zcat /proc/config.gz | grep SMB_SERVER
  # CONFIG_SMB_SERVER is not set

If this compile-time configuration setting is unset, or set to 
"n" for no, the feature wasn't built at all.

If it says "y" for yes, then the kernel SMB server is compiled 
right into your kernel, so ensure you have a patched version.

If it says "m" for module, then the kernel build probably 
includes a run-time module that can be loaded on demand.
To see if your kernel has a loadable module available:

  $ /sbin/modprobe --show ksmbd
  modprobe: FATAL: Module ksmbd not found in directory /lib/modules/6.1.1

Note that "--show" means "never actually do it, just show 
if loading it would work or not".
To see if your system has the ksmbd module already active:

  $ lsmod | grep ksmbd

If you see no output, the module wasn't matched in the list.
To stop the module loading inadvertnatly in case it ever shows 
up, add a file with a name such as ksmbd.conf to the directory 
/lib/modules.d or /etc/modules.d with these lines in it:

  blacklist ksmbd
  install ksmbd /bin/false

Időbélyeg:

Még több Meztelen biztonság