Linux kodola atbrīvošana no uzvedības maiņas koda procesiem, kas sākas ar X

Džeisons A. Donenfelds, VPN WireGuard autors, vērsa izstrādātāju uzmanību uz netīro uzlaušanu Linux kodola kodā, kas maina to procesu uzvedību, kuru nosaukumi sākas ar rakstzīmi “X”. No pirmā acu uzmetiena šādi labojumi parasti tiek izmantoti sakņu komplektos, lai procesa saistīšanā atstātu slēptas aizmugures durvis, taču analīze atklāja, ka izmaiņas tika pievienotas 2019. gadā, lai uz laiku novērstu uznirstošās lietotāja telpas saderības pārkāpumu saskaņā ar principu, kas tiek mainīts kodolam nevajadzētu izjaukt saderību ar lietojumprogrammām.

Problēmas radās, mēģinot izmantot X.Org serverī izmantoto DDX draivera xf86-video režīma iestatīšanas video režīma atomu maiņas mehānismu, kas bija saistīts ar piesaisti procesiem, kas sākas ar rakstzīmi “X” (tā tika pieņemts). ka risinājums tika piemērots procesam “ Xorg”). Gandrīz uzreiz tika novērsta X.Org problēma (pēc noklusējuma atomu API izmantošana bija atspējota), taču viņi aizmirsa noņemt pagaidu labojumu no kodola un mēģinājumu nosūtīt ioctl, lai atomiski mainītu režīmu visiem procesiem, sākot ar rakstzīme “X” joprojām rada kļūdu, lai atgrieztu kļūdu. if (current->comm[0] == 'X' && req->value == 1) { pr_info("konstatēta bojāta atomu modeset lietotāja telpa, atspējota atomu\n"); atgriešanās -EOPNOTSUPP; }

Avots: opennet.ru

Pievieno komentāru