Securitatea aplicațiilor web este o filozofie de securitate orientată spre protejarea aplicațiilor găzduite pe site-uri web și securizarea site-urilor web în sine. Entitatea protejată este atașată unui site web, așa că securitatea aplicației web ar trebui făcută într-un limbaj de programare pe care site-urile web îl pot înțelege. Mai multe tipuri de programe de securitate sunt utilizate în mod obișnuit pentru a oferi această protecție, inclusiv scanere de vulnerabilitate și testare de intrare. Există multe tipuri de atacuri care pot apărea asupra unui site web sau a unei aplicații web, dar scripturile și injectarea de cod sunt cele mai frecvente două amenințări de securitate online.
Protejarea unui site web sau a unei aplicații web este foarte diferită de crearea securității pentru un program care este instalat pe un desktop. Aplicația este online și poate fi accesată de obicei de oricine – sau, cel puțin, de un grup mare de utilizatori – astfel încât acest lucru crește șansa ca un utilizator rău intenționat să găsească aplicația web. De asemenea, tinde să fie mai ușor pentru un utilizator rău intenționat să injecteze cod într-un site web, așa că securitatea aplicației web trebuie să depășească aceste provocări.
Atunci când construiesc un program de securitate pentru aplicații web, dezvoltatorii de software trebuie să creeze programul într-un limbaj care poate fi utilizat pe un server sau un site web. Dacă un server sau un site web nu poate înțelege limbajul de programare, atunci există șanse mari ca programul să fie ineficient. Multe programe de securitate desktop sunt construite în aceste limbi, astfel încât acest lucru de obicei nu prezintă o problemă pentru majoritatea dezvoltatorilor de software.
Codarea este extrem de importantă pentru securitatea aplicației web, deoarece codarea defectuoasă a site-ului web sau a aplicației web poate face mai ușor pentru un hacker să intre în sistem. Din acest motiv, multe programe de securitate a aplicațiilor web sunt realizate pentru a analiza codificarea pentru vulnerabilități sau volatilitatea de penetrare. De asemenea, secțiunile de intrare pot ajuta un hacker să intre în sistem, astfel încât programele sunt de obicei utilizate pentru a verifica stabilitatea acestor zone de intrare. Firewall-urile și testele de parole sunt, de asemenea, utilizate în mod obișnuit pentru securitate suplimentară a site-ului web.
Un hacker poate ataca aplicația web sau site-ul web în multe moduri diferite, dar două atacuri principale sunt utilizate în mod obișnuit. Injecția de cod, de obicei din limbajul de interogare structurat (SQL), adaugă un cod în site-ul web sau în baza de date a acestuia. Acest lucru poate cauza probleme de la sine sau poate deschide găuri în securitate pentru atacuri mai severe. Scripturile sunt similare cu injectarea de cod, cu excepția faptului că rulează un program rău intenționat în loc să adauge programare rău intenționată în sistem.