Linus Torvalds har godkÀnt ett dokument som reglerar processerna för hantering av sÀkerhetsrelaterade fel, definierar hotmodellen och förklarar vilka fel i kÀrnan som tolkas som sÄrbarheter, samt behandlar ÄtgÀrder vid fel som upptÀckts med hjÀlp av AI. Dokumentet har utarbetats av Willy Tarreau, skaparen av HAProxy och en lÄngvarig utvecklare av Linux-kÀrnan, som ansvarat för underhÄllet av flera stabila kÀrnversioner. Som grund har man anvÀnt de överenskommelser som uppnÄtts under diskussioner kring nyligen identifierade kritiska sÄrbarheter i kÀrnan (1, 2, 3, 4), som avslöjades före publiceringen av korrigeringar och för vilka man tack vare AI kunde skapa fungerande exploateringsverktyg omedelbart.
Huvuddelen av sÀkerhetsrelaterade fel bör hanteras offentligt för att attrahera sÄ mÄnga som möjligt och finna den mest optimala lösningen. Endast akuta meddelanden om lÀtt utnyttjande sÄrbarheter som utgör ett hot mot mÄnga anvÀndare och som möjliggör utökade privilegier eller funktioner bör skickas till en separat privat e-postlista.
SĂ„rbarheter som identifierats med hjĂ€lp av AI-assistenter bör alltid diskuteras offentligt, eftersom sĂ„dana problem ofta upptĂ€ckts samtidigt av flera forskare. Det Ă€r dock inte nödvĂ€ndigt att avslöja exploatet i rapporten â det rĂ€cker att nĂ€mna att det finns och att överlĂ€mna det pĂ„ ett privat sĂ€tt som svar pĂ„ en begĂ€ran frĂ„n den som underhĂ„ller.
Det finns sÀrskilda regler för överföring av rapporter skapade med hjÀlp av AI-assistenter. Det skickas mycket sÄdana rapporter, och de kan ibland leda till att fel upptÀckts i dÄligt granskade kodavsnitt, men administratörer ignorerar ofta dem pÄ grund av lÄg kvalitet och felaktigheter. De viktigaste kraven för rapporter skapade med AI:deltagande Àr:
- Kortsiktig, utan överflöd, med en tydlig redogörelse för kÀrnan och viktiga detaljer i början.
- Bara ren text utan Markdown-taggar och dekoration.
- FörstÄelse av hotmodellen och specificering av verifierade fakta (till exempel, 'felet tillÄter vilken anvÀndare som helst att fÄ CAP_NET_ADMIN'), snarare Àn teoretiska spekulationer och antaganden om konsekvenserna av sÄrbarheten.
- Innan du skickar rapporten mÄste du noggrant testa funktionaliteten hos den exploiten som skapats via AI, och verifiera möjligheten att Äterge problemet.
- Att involvera AI för att utveckla och testa lösningen pÄ det identifierade problemet.
Enligt statistik frÄn följdsystemet, Àr de flesta felrapporter som skickas in som en ÄtgÀrd för sÄrbarheter inte sÄdana, och bör behandlas i vanlig ordning som vanliga fel. För att sÀrskilja sÄrbarheter frÄn vanliga fel har en hotmodell för Linux-kÀrnan beskrivits. Bland de möjligheter och garantier, vars övertrÀdelse kan betraktas som en sÄrbarhet:
- Isolering pÄ anvÀndarnivÄ: filÄtkomst endast för Àgaren, processminne Àr otillgÀngligt för andra anvÀndare, ptrace Àr förbjudet för andras processer, isolering av IPC och nÀtverkskommunikation.
- Skydd baserat pÄ möjligheter: utan CAP_SYS_ADMIN kan man inte Àndra kÀrnkonfigurationen, minne, systemets tillstÄnd, utan CAP_NET_ADMIN kan man inte Àndra nÀtverksinstÀllningar eller fÄnga trafik, utan CAP_SYS_PTRACE kan man inte spÄra andra anvÀndares processer.
- Namnrymd för anvÀndaridentifierare (CONFIG_USER_NS) möjliggör för oprivilegierade anvÀndare att skapa sina egna isolerade miljöer, som inte kan pÄverka det globala namnrymden, till exempel Àndra tiden, ladda moduler och montera blockenheter.
- AvlusningsgrÀnssnitt (\/proc\/kmsg, perf, debugfs), genom vilka man kan fÄ tillgÄng till konfidentiell information, Àr endast tillgÀngliga efter uttryckligt tillstÄnd frÄn administratören.
Möjligheter som inte betraktas som sÄrbarheter:
- AnvÀndning av förÄldrade kÀrngrenar.
- Kompatibelt byggande med aktiverade alternativ för utvecklare eller osÀkerhetsminskande alternativ (t.ex. CONFIG_NOMMU).
- InstÀllningar i sysctl, kommandoradsalternativ, filsystemtillgÄngar, möjligheter som Àr osÀkert instÀllda, eller att ge oprivilegierade anvÀndare Ätkomst till privilegierade grÀnssnitt (t.ex. skrivÄtkomst till procfs och debugfs).
- Problem i funktioner som Àr avsedda för utveckling och avlusning av kÀrnan, sÄsom LOCKDEP, KASAN och FAULT_INJECTION, som inte Àr avsedda att ingÄ i produktionskonfigurationer.
- Problem i drivrutiner, moduler och subsystem som finns i STAGING-sektionen eller som Àr mÀrkta som experimentella, osÀkra eller icke-fungerande.
- AnvÀndning av tredjeparts kÀrnmoduler eller oofficiella kÀrnversioner.
- Krav pÄ överdrivna behörigheter, sÄsom behovet av att utföra ÄtgÀrder med root-rÀttigheter eller av en anvÀndare som har rÀttigheter som CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_SYS_RAWIO och CAP_SYS_MODULE.
- Teoretiska attacker som krÀver laboratorieförhÄllanden, miljarder försök, emulering eller modifiering av hÄrdvara, oproportionerliga kostnader och orealistiska konfigurationer (t.ex. system med tiotusentals CPU-kÀrnor).
- OmvÀgar kring skyddsmekanismer (t.ex. ASLR) utan att visa ett exploitalternativ. Brist pÄ argumentkontroller och felkoder utan uppenbara konsekvenser.
- Oplanerade informationslÀckor som inte kontrolleras av angriparen, sÄsom restdata i felmeddelanden och lÀckor av kÀrnminnesadresser/pointer utan direkt möjlighet till utnyttjande.
- Fel vid montering av skadade diskavbilder om drivrutinen inte anges som lÀmplig för anvÀndning med osÀkra enheter. Problem med diskavbilder som upptÀcks och ÄtgÀrdas genom körning av verktyget fsck.
- Attacker som krÀver fysisk Ätkomst till hÄrdvaran, modifiering av hÄrdvara eller anslutning av hÄrdvaruenheter, sÄsom kort för DMA-attacker och logiska analyzatorer, om systemet inte specifikt Àr konfigurerat för att skydda mot sÄdana attacker (IOMMU).
- Regressioner med funktionalitet och prestanda som kan ÄtgÀrdas genom att justera rÀttigheter och grÀnser.
KĂ€lla: opennet.ru
