Permisiunile fișierelor controlează cine poate citi, modifica sau rula fișiere într-un mediu de găzduire. Pe sistemele de găzduire bazate pe Linux, chmod este comanda utilizată pentru a modifica aceste permisiuni.
chmod 777 este uneori folosit ca o modalitate rapidă de a remedia erorile de permisiuni, dar creează un risc grav de securitate. Aceasta acordă fiecărui utilizator și proces acces complet la fișier sau folder, inclusiv posibilitatea de a-l modifica sau executa.
Cuprins
Ce înseamnă chmod 777
Permisiunile în Linux sunt de obicei atribuite celor trei grupuri:
- proprietarul fișierului
- grupul
- toți ceilalți
Fiecare grup poate avea permisiunea de a citi, scrie sau executa un fișier.
Numărul 777 înseamnă:
Proprietar: citire, scriere, executare
Grup: citire, scriere, executare
Alții: citire, scriere, executare
În practică, aceasta înseamnă că oricine poate citi, modifica și rula fișierul sau folderul.
De ce este nesigur
Principalul risc asociat cu chmod 777 este că elimină restricții importante de acces.
Dacă un folder este setat la 777, orice proces care poate ajunge la el ar putea crea, modifica sau șterge fișierele din interiorul acestuia. Dacă un fișier este setat la 777, este posibil ca acel fișier să fie modificat sau executat în moduri neintenționate.
Pe un cont de găzduire, acest lucru poate deveni periculos dacă un script al site-ului web, un plugin, o temă sau un fișier încărcat este compromis. În loc să fie limitat de permisiunile normale, procesul compromis ar putea scrie fișiere noi, modifica fișierele existente sau plasa cod rău intenționat în folderele cu drepturi de scriere.
Riscuri comune cauzate de chmod 777
Utilizarea chmod 777 poate crește riscul apariției mai multor probleme:
- modificarea fără autorizație a fișierelor site-ului web
- încărcarea sau executarea de fișiere rău intenționate
- modificarea fișierelor de configurare
- utilizarea scripturilor pentru a trimite spam
- răspândirea de malware prin directoare în care se poate scrie
- instrumentele de securitate care semnalează site-ul web ca fiind nesigur
- aplicațiile refuză să ruleze deoarece permisiunile sunt prea permisive
Problema nu constă doar în faptul că fișierul devine scriabil. Problema este că devine scriabil pentru prea mulți utilizatori și procese.
Valori de permisiuni mai sigure
Majoritatea site-urilor web nu au nevoie de permisiuni 777.
Setările implicite sigure obișnuite sunt:
Dosare: 755
Fișiere: 644
Cu aceste permisiuni, proprietarul poate gestiona fișierele, în timp ce alți utilizatori și procese au acces limitat.
Unele fișiere sensibile pot necesita permisiuni mai stricte. De exemplu, fișierele de configurare care conțin datele de autentificare pentru baza de date sau secretele aplicației pot utiliza permisiuni precum:
600
Permisiunea corectă depinde de aplicație, de configurarea serverului și de modul în care site-ul web trebuie să scrie fișiere.
chmod 777 nu rezolvă problema reală
Când un site web solicită chmod 777, aceasta înseamnă, de obicei, că există o problemă de permisiuni sau de proprietate la bază.
De exemplu, este posibil ca site-ul web să nu poată scrie într-un folder de încărcare deoarece proprietarul fișierului este incorect, permisiunile de grup nu sunt adecvate sau aplicația încearcă să scrie într-o locație greșită.
Modificarea permisiunilor la 777 poate face ca eroarea să dispară, dar acest lucru se realizează prin eliminarea restricțiilor de securitate. O abordare mai bună este identificarea motivului pentru care aplicația nu poate scrie în fișier sau folder și remedierea acelei probleme specifice.
Ce trebuie făcut în schimb
Utilizați setarea cu cele mai puține permisiuni care permite site-ului web să funcționeze corect.
Pentru majoritatea site-urilor web, începeți cu:
755 pentru foldere
644 pentru fișiere
Dacă un anumit folder trebuie să fie accesibil la scriere de către aplicație, modificați doar acel folder și doar atât cât este necesar. Evitați aplicarea unor modificări generale ale permisiunilor la nivelul întregului site web.
De exemplu, evitați comenzi precum:
chmod -R 777 public_html
Aceasta modifică permisiunile în mod recursiv pe întreg site-ul web și poate expune multe fișiere care ar trebui să rămână protejate.
Semnificația practică pentru utilizatori
Dacă vedeți instrucțiuni care recomandă chmod 777, tratați-le cu prudență. Poate fi un sfat vechi, un sfat incomplet sau o soluție de compromis pentru o configurație de găzduire diferită.
O eroare de permisiuni ar trebui rezolvată verificând calea fișierului, proprietarul, cerințele aplicației și folderul exact care necesită acces de scriere. Extinderea permiselor în mod general poate crea o problemă mai mare decât cea pe care pare să o rezolve.
Dacă nu sunteți sigur care sunt permisiunile corecte, utilizați mai întâi valorile standard și modificați doar fișierul sau folderul specific care necesită ajustare.
Rezumat
chmod 777 este periculos deoarece acordă tuturor permisiuni complete de citire, scriere și executare. Acest lucru poate permite modificarea, ștergerea sau executarea fișierelor de către utilizatori și procese care nu ar trebui să aibă acest nivel de acces.
Pentru majoritatea site-urilor web, valorile implicite mai sigure sunt 755 pentru foldere și 644 pentru fișiere. Problemele legate de permisiuni ar trebui rezolvate prin remedierea cauzei specifice, nu prin transformarea întregului site web într-unul în care se poate scrie.