Onderzoekers hebben een nieuwe lokale privilege-escalatie kwetsbaarheid ontdekt in de Linux-kernel, genaamd CIFSwitch. Deze kwetsbaarheid maakt het mogelijk voor aanvallers om CIFS-authenticatiesleutels te vervalsen, het key request mechanisme van de kernel te misbruiken en zo rootrechten te verkrijgen. De fout treft meerdere Linux-distributies die kwetsbare versies van de kernel CIFS-module en cifs-utils gebruiken (versies 6.14 en hoger, met enkele oudere varianten ook getroffen).
CIFS (Common Internet File System) is een netwerkprotocol dat toegang biedt tot bestanden, mappen en apparaten binnen een lokaal netwerk. Linux gebruikt dit protocol om data van externe systemen te mounten, lezen en schrijven. Wanneer een CIFS-netwerkshare Kerberos-authenticatie gebruikt, vraagt de Linux-kernel een hulpprogramma in de user space om de authenticatie uit te voeren, waarbij cifs-utils als tussenlaag fungeert. De kwetsbaarheid ontstaat doordat de kernel niet controleert of cifs.spnego key requests daadwerkelijk afkomstig zijn van de kernel CIFS-client. Hierdoor kan een niet-bevoegde gebruiker een vervalste cifs.spnego-aanvraag maken en de normale authenticatieworkflow activeren.
De root-geprivilegieerde cifs.upcall helper vertrouwt vervolgens op door de aanvaller gecontroleerde velden die het als legitiem beschouwt. Door misbruik van deze velden kan een aanvaller een namespace-switch forceren en een Name Service Switch (NSS) lookup uitvoeren voordat de privileges worden verlaagd. Dit stelt een lokale aanvaller in staat een kwaadaardige NSS-module te laden en rootcode-uitvoering te bereiken. De ontdekker, SpaceX security engineer Asim Viladi Oglu Manizada, heeft een uitgebreide technische analyse gepubliceerd waarin de oorzaak en exploitatie van de kwetsbaarheid worden toegelicht.
CIFSwitch werd geïntroduceerd in 2007, zoals terug te vinden is in de kernelcode. Exploitatie is niet universeel en hangt af van factoren zoals de kernelversie, cifs-utils versie, beschikbaarheid van user namespaces en de configuratie van SELinux of AppArmor. Distributies die met standaardinstellingen kwetsbaar zijn, zijn onder andere Linux Mint 21.3/22.3, CentOS Stream 9, Rocky Linux 9, AlmaLinux 9, Kali Linux 2021.4–2026.1 en SLES 15 SP7. Andere distributies zoals Ubuntu 26.04, Fedora 40-44 en CentOS Stream 10 hebben standaard beveiligingsinstellingen die misbruik voorkomen. Amazon Linux 2 en oudere Kali Linux versies zijn niet kwetsbaar omdat hun cifs-utils geen namespace-switch functionaliteit bevatten.
De kwetsbaarheid is verholpen met een kernelpatch die de oorsprong van cifs.spnego-aanvragen valideert, beschikbaar via commit 3da1fdf. De exacte kernelversies met deze patch verschillen per distributie. Gebruikers wordt geadviseerd de CIFS-module uit te schakelen of te blacklisten indien niet gebruikt, het cifs-utils pakket te verwijderen als het niet nodig is en onprivileged user namespaces uit te schakelen. Manizada heeft ook een proof-of-concept exploit vrijgegeven waarmee organisaties kunnen testen of hun systemen adequaat beschermd zijn.
Reacties
Geef een reactie
Vereiste velden zijn gemarkeerd met *