Comitetul tehnic care ia decizii finale cu privire la problemele tehnice controversate din proiectul Debian a aprobat modificarea pachetului systemd, care schimbă comportamentul legat de directorul /var/lock. Managerul de sistem systemd, începând cu versiunea 258, a restricționat posibilitatea de scriere în directorul /var/lock doar pentru utilizatorii cu privilegii de root, în vreme ce comitetul tehnic Debian a aprobat menținerea vechiului comportament, care permite scrierea în /var/lock de către orice utilizator.
Regulile proiectului Debian prevăd păstrarea comportamentului inițial al aplicațiilor (setărilor stabilite în upstream) la crearea pachetelor. Pentru a face modificări specifice Debian în pachete, în condiții de ocolire a regulilor proiectului, este necesară obținerea unei permisiuni speciale din partea comitetului tehnic.
În cazul systemd, comitetul a susținut propunerea de a nu urma modificarea care schimba drepturile de acces la /var/lock în vederea îmbunătățirii securității, deoarece posibilitatea de scriere publică în directorul /var/lock este menționată în specificația FHS (Filesystem Hierarchy Standard) și este necesară pentru continuarea funcționării unor programe existente. De exemplu, aplicațiile pentru funcționarea pe porturi seriale, cum ar fi uucp, minicom, mgetty+sendfax și hylafax, utilizează directorul /var/lock pentru a separa accesul la dispozitivele /dev/ttyS* prin crearea de fișiere de blocare.
Necesitatea limitării accesului la directorul /var/lock este explicată de dezvoltatorii systemd prin protecția împotriva atacurilor DoS. Directorul /var/lock este un link simbolic către directorul /run/lock. Secțiunea cu directorul /run este, în general, montată separat prin tmpfs, iar posibilitatea de scriere necontrolată în el poate fi folosită pentru a umple secțiunea și a bloca crearea de noi fișiere în ierarhia /run.
Pentru a preveni astfel de atacuri în cazul unui acces nelimitat, în Debian, anterior a fost utilizat un patch care monta /run/lock într-o mică partiție tmpfs separată. Anul trecut, acest patch a fost înlocuit cu unitatea run-lock.mount, iar vara aceasta, această unitate a fost eliminată, după care /run/lock a ajuns în partiția /run. În comentariile de la decizia comitetului tehnic, fostul menținător al systemd a recomandat să nu se uite această modificare și să se revină la montarea separată a /run/lock, iar pe termen lung, să se reconfigureze toate aplicațiile legate de /run/lock pentru a folosi mecanismul de blocare flock.
Sursa: opennet.ro
