În ultimii ani, popularitatea internetului și a aplicațiilor web a crescut drastic. Aplicațiile
web furnizate prin intermediul protocolului HTTP reprezintă modalitatea principală de a furniza servicii pe internet și aceste servicii joacă un rol semnificativ în viața noastră de zi cu zi într-o varietate de domenii, cum ar fi finanțe, educație, industrie, comerț, asistență medicală și chiar infrastructuri critice. În consecință, serverele web și aplicațiile web au devenit o țintă atractivă pentru atacatori și un vector important pentru atacurile reușite. Multe dintre aceste atacuri se bazează pe tehnici care vizează stratul aplicației (de exemplu: SQL injection, Cross Site Scripting, manipularea parametrilor etc.) și nu sunt detectate de mecanismele de detectare care operează pe straturile de transport sau de rețea ca firewall-uri de rețea sau sisteme de detectare a intruziunilor în rețea (IDS). Pentru a detecta și a preveni atacurile vizate de aplicații web, sunt folosite în mod obișnuit firewall-uri de aplicații Web (WAF). Deși sistemele IDS și WAF au fost studiate și utilizate de zeci de ani, au mari dificultăți în a ține pasul cu numărul de noi atacuri care apar în mod constant. Utilizarea exploit-urilor zero-day, Advanced Persistent Threats (APT) și alte forme de atacuri sunt în creștere și sunt capabile să ocolească stratul de protecție al sistemelor IDS și WAF care se bazează de obicei pe tehnici de semnătură sau anomalie de detectare. Deficiențele tehnicilor de detectare bazate pe semnături sunt bine cunoscute deoarece nu pot detecta noi atacuri necunoscute. Comunitatea de cercetare și-a concentrat atenția asupra tehnicilor de detectare bazate pe anomalii, care vizează detectarea unor noi atacuri necunoscute, dar eficacitatea acestor tehnici a fost, de asemenea, contestată. Unii cercetători afirmă chiar că detectarea anomaliilor este eronată în ipotezele sale de bază, deoarece tehnicile de învățare a mașinilor sunt bune pentru a găsi evenimente similare celor observate anterior, dar ele nu sunt eficiente pentru a găsi noi evenimente necunoscute care nu sunt prezente în formarea de seturi de date. Această situație sugerează necesitatea de a furniza straturi suplimentare de protecție utilizând tehnici suplimentare, deoarece mecanismele de protecție existente nu par a fi suficiente pentru a aborda amenințările actuale. Decepția oferă o abordare alternativă pentru securitate, care poate oferi un strat suplimentar util de protecție. Scopul deceptiei este de a înșela și de a manipula adversarii care îi determină să întreprindă acțiuni care să fie avantajoase și să ajute la apărarea securității informatice prin folosirea unor mecanisme diferite pentru fabricarea, modificarea sau ascunderea realității pe care o percep. Exemple bine cunoscute de instrumente de deceptie și momeală sunt honeypots și honeytokens. Honeypots sunt sisteme informatice false care arată și se comportă ca sisteme reale și pot fi folosite pentru a detecta atacatorii și pentru a-și analiza procedurile de atac. Honeytokens sunt entități digitale (de exemplu: fișiere false, conturi false de utilizator, înregistrări falsificate de baze de date, parole false, adrese false etc.) care nu ar trebui să fie accesate de nimeni și sunt create pentru a declanșa o alarmă de intruziune ori de câte ori cineva le folosește.
2. Securitatea aplicațiilor web
2.1 Ce este securitatea aplicațiilor web ? Securitatea aplicațiilor web este o ramură a securității informațiilor care se ocupă în special de securitatea site-urilor web, a aplicațiilor web și a serviciilor web. La un nivel înalt, securitatea aplicațiilor Web se bazează pe principiile securității aplicațiilor, însă le aplică în mod specific sistemelor Internet și Web. Evoluția tehnologiilor web asociate cu un mediu de afaceri în schimbare, înseamnă că aplicațiile web devin din ce în ce mai răspândite în corporație, public și serviciile guvernamentale de astăzi. Deși aplicațiile web pot oferi confort și eficiență, există și o serie de noi amenințări la adresa securității, care ar putea prezenta riscuri semnificative pentru infrastructura IT a unei organizații, dacă nu este tratată în mod corespunzător. De mai bine de un deceniu, organizațiile au depins de măsurile de securitate pe perimetrul rețelei pentru a-și proteja infrastructura IT. Cu toate acestea, măsurile tradiționale de securitate a rețelei și tehnologiile pot să nu fie suficiente pentru a proteja aplicațiile web de noile amenințări, deoarece atacurile vizează în prezent defectele de securitate în proiectarea aplicațiilor web. Noi măsuri de securitate, atât tehnice, cât și administrative, trebuie implementate alături de dezvoltarea aplicațiilor web. Creșterea rapidă a implementării aplicațiilor web a creat infrastructuri IT mai complexe și distribuite, care sunt mai greu de asigurat. De mai bine de un deceniu, organizațiile au fost dependente de măsurile de securitate la perimetrul rețelei, cum ar fi firewall-urile, pentru a proteja infrastructurile IT. Cu toate acestea, acum că tot mai multe atacuri vizează defectele de securitate în proiectarea aplicațiilor web, cum ar fi defectele de injecție, protecția tradițională a securității rețelei poate să nu fie suficientă pentru a proteja aplicațiile de astfel de amenințări. Aceste amenințări provin din punctele de acces ale clienților de neîncredere, protocoalele fără sesiune, complexitatea generală a tehnologiilor web și insecuritatea în stratul de rețea. În cazul aplicațiilor web, software-ul clientului nu poate fi întotdeauna controlat de proprietarul aplicației. Prin urmare, intrările de la un client care execută software-ul nu pot fi complet de încredere și prelucrate direct. Un atacator poate crea o identitate care să arate ca un client legitim, să reproducă identitatea utilizatorului sau să creeze mesaje frauduloase și cookie-uri. În plus, HTTP este un protocol fără sesiune și, prin urmare, este susceptibil de atacuri de replay și de injectare. Mesajele HTTP pot fi ușor modificate si falsificate.