Cinci pa?i pentru o aplica?ie web mai sigur?

Average: 5 (3 votes)

Cu to?ii am avut probabil de-a face cu numeroase aplica?ii web care con?in diverse formulare de c?utare, autentificare, editare, etc. Marea majoritate dintre noi s-a confruntat cu problema creerii unei astfel de aplica?ii... Întrebarea este: "C??i dintre noi au reu?it s? creeze o astfel de aplica?ie cu adev?rat sigur??". Nu sunt statistician, dar probabil c? doar jum?tate dintre noi. Pentru cealalt? jum?tate am câteva sfaturi demne (cred eu) de luat în seam?.

Cel mai important lucru pe care trebuie s? îl ai în minte când te apuci s? scrii o astfel de aplica?ie este urm?torul: "Niciodat? s? nu te încrezi în inputul utilizatorului!". Exist? foarte mul?i utilizatori r?u-inten?ionat care vor încerca s? î?i fac? via?a grea. A?adar, iat? cele 5 sfaturi promise:

  • Încearc? s? validezi întregul input al utilizatorului
    Pentru aceasta este necesar? o bun? în?elegere a tuturor parametrilor care vin de la client (câmpuri ascunse, cookie-uri, etc).
    Atentie: Validarea datelor trebuie s? precead? orice alt? opera?ie!
  • Creaz? ?i utilizeaz? func?ii de validare
    Un exemplu clasic ar fi metodele isValidEmail() care returneaz? o valoare logic? (adev?rat sau fals) în fun?ie de datele introduse de c?tre utilizator.
  • Verific? întotdeauna formatul ?i domeniul datelor
    Domeniul se refer? în special la datele de tip numeric. De exemplu, în cazul unui magazin virtual, pre?ul unui produs nu poate fi negativ.
  • Nu te baza niciodat? DOAR pe validarea datelor f?cut? pe partea de client (cu ajutorul Javascript)
    Dup? cum se bine ?tie, navigatoarele actuale permit dezactivarea execut?rii codului Javascript. Dac? partea de cod de pe server se bazeaz? doar pe validarea care s-a f?cut pe partea de client, aplica?ia ta este una total nesigur?.
  • Ai mare grij? la datele pe care le trimi?i prin intermediul câmpurilor de tip "hidden"
    Nu te baza pe faptul c? dac? aceste câmpuri nu se v?d în pagina afi?at? utilizatorului ele sunt sigure. Dimpotriv?, un câmp ascuns este la fel de u?or de modificat ca ?i unul vizibil. De exemplu, nu trimite date sensibile de la o pagin? la alta prin intermediul acestui tip de câmpuri. O metod? mult mai sigur? este folosirea sesiunilor, deoarece acestea sunt stocate pe server, clien?ii neavând acces la ele.


Bibliografie:

Tags: