Scrieți un cod securizat pe php

Prima regulă: nu aveți încredere în utilizatorii dvs.

Această regulă a sunat din paginile site-ului meu de mai multe ori, dar rămâne totuși cea mai importantă și se va spune tot mai mult! Nu trebuie să aveți încredere în datele trimise de utilizatori. Lăsând la o parte faptul că hackerii în domeniul securității aplicațiilor dvs. pot fi utilizați de răufăcători, problemele pot apărea și din cauza comportamentului neintenționat al utilizatorilor.







Deci, principala regulă a oricărui dezvoltator de web: Nu aveți încredere în utilizatorii dvs.

Variabilele globale

Acest lucru poate fi evitat prin dezactivarea acestei opțiuni. Din fericire, pe multe gazde este dezactivată implicit. Cu toate acestea, dacă mai trebuie să utilizați variabile globale, trebuie să declarați în prealabil astfel de variabile importante:

Mesaje de eroare







Mesajele de eroare sunt utile când depanați aplicații web. Dezvoltatorii au nevoie de ele pentru a corecta erorile, iar hackerii le pot folosi pentru a obține diverse informații, cum ar fi structura programului, versiunile serverului de bază de date. Prin urmare, după depanarea aplicațiilor și rularea site-ului, trebuie să dezactivați mesajele de eroare. În .htaccess sau php.ini, trebuie să setați "error_reporting 0".

Injecții SQL

Unul dintre punctele forte ale limbajului PHP este interacțiunea ușoară și rapidă cu bazele de date, în primul rând cu MySQL. Acum majoritatea site-urilor sunt construite într-o grămadă de PHP + MySQL.

Cu toate acestea, după cum era de așteptat, aceasta a generat probleme de securitate potențiale pentru aplicațiile web. Cele mai frecvente vulnerabilități sunt injectările SQL - executarea neautorizată a interogărilor SQL către baza de date.

În detaliu despre injecția SQL și protecția împotriva acesteia, am scris în articolul Protecția împotriva injecțiilor SQL.

Manipularea fișierelor

Setările implicite

previzibilitate

În cele din urmă, asigurați-vă că mesajele de eroare de conectare nu conțin informații suplimentare pentru atacator. De exemplu, dacă afișați eroarea "Utilizator necunoscut", atunci atacatorul va ghici cu ușurință că a preluat datele de autentificare necesare atunci când nu vede această eroare.

În cele din urmă, fiți vigilenți







Articole similare

Trimiteți-le prietenilor: