Un proxy web invers poate face ca un site să se încarce mai rapid, dar mărește și suprafața de atac a paginii. Acest lucru poate pune în pericol proprietarii site-ului și vizitatorii.
Când vizitați o pagină web, mai multe operațiuni au loc în fundal. Chiar dacă nu faceți clic pe nimic, site-ul prelucrează informații precum pagina pe care vă aflați, adresa dumneavoastră IP și dispozitivul pe care îl utilizați. Anumite reguli se aplică tranzacțiilor care au loc în acest middleware. Atacatorii care cunosc acest lucru și cum sunt implementate aceste restricții îl pot exploata pentru a vă fura informațiile. Pentru a înțelege mai bine problema, luați în considerare noțiunea de proxy web invers.
Ce este Reverse Web Proxy?
Reverse web proxy procesează și optimizează tranzacțiile dvs. accesând site-uri de internet înainte de a le transmite către serverul web backend. Datele procesate și optimizate sunt trimise către serverele web relevante de către proxy web invers. Acest proces oferă atât o măsură de securitate, cât și îmbunătățește performanța.
Este posibil să beneficiați de multe sisteme diferite pentru a utiliza capacitatea de proxy web invers. Puteți utilizați un paravan de protecție pentru aplicații web (WAF), echilibrator de încărcare, dispozitive pe care le puteți poziționa împotriva atacurilor DDoS sau platforme și sisteme precum Cloudflare pentru proxy web invers.
Ceea ce au în comun aceste sisteme este că asigură o formare între server și client. Când solicitați un site web, această solicitare nu ajunge direct la server. Proxy-ul web invers între server și site-ul web examinează și optimizează aceste solicitări. De exemplu, un sistem care suspectează că o solicitare HTTP non-stop poate fi un atac DDoS filtrează aceste solicitări și, dacă este necesar, pune pe lista neagră dispozitivul de la care provin solicitările, împiedicându-l să ajungă la site-ul. Pe scurt, scopul este de a oferi control între cerere și server.
Impactul Reverse Web Proxy asupra performanței
Să luăm în considerare modul în care un proxy web inversă îmbunătățește performanța printr-un exemplu, cum ar fi site-ul web al unei cafenele. Imaginați-vă un text care descrie cafeaua pe acest site și câteva imagini cu cafea din meniuri. Deoarece aceste imagini și texte nu se vor schimba continuu, este posibil să se facă unele îmbunătățiri de performanță. Dacă stocați adresele URL ale acestor imagini statice pe proxy-ul web invers, sunteți în cache pe proxy-ul web invers.
Cu alte cuvinte, prima dată când intrați pe site, proxy-ul web invers va salva toate imaginile în memoria cache și va oferi un serviciu mai rapid la a doua conectare. Ca urmare, tensiunea de pe site va fi redusă semnificativ, astfel încât site-ul se va încărca mai repede.
Beneficiile Reverse Web Proxy
Pentru a rezuma de ce ați putea dori să luați în considerare un proxy web invers, știți că se poate:
- Măriți viteza de acces la internet și crește viteza de transfer de date, făcând paginile web să se încarce mai rapid.
- Ascunde-ți datele personale. Un proxy web invers criptează toate datele pe care le trimiteți și le primiți de la computer și ascunde tiparele dvs. personale de utilizare.
- Utilizați diverse tehnologii de firewall pentru a vă proteja datele personale.
- Rezolvați interdicțiile pe care le întâlniți în timp ce accesați site-uri web și împiedicați blocarea.
Cum apare vulnerabilitatea înșelăciunii în cache proxy?
Toate datele salvate în memoria cache de către proxy-ul web invers sunt stocate cu extensiile lor de fișiere. De exemplu, imaginile au extensii precum „.jpg” și „.png”, în timp ce textele sunt „.txt”. Aceasta înseamnă că un atacator care deturnează această memorie cache își poate da seama ce ați văzut sau făcut pe site, vizualizând fișierele pe care le-ați accesat.
De exemplu, luați în considerare un site cu adresa example.com/login.php. Să presupunem că puteți accesa această adresă introducând numele de utilizator și parola și că pagina pe care o accesați aparține unui fișier PHP care rulează dinamic. Dacă vă amintiți, fișierele din cache erau doar fișiere statice. Deci, proxy-ul web invers nu va stoca în cache un astfel de fișier PHP.
Dar uneori lucrurile nu sunt atât de simple. În unele cazuri, atunci când solicitați o adresă care nu există, veți primi un Eroare pagina 404 nu a fost găsită. Dar, pe lângă această eroare, serverul web vă oferă și alte informații critice. Când solicitați o adresă URL nevalidă care nu există, partea validă a adresei URL pe care ați solicitat-o poate fi pe server. În acest caz, chiar dacă solicitați o adresă nevalidă, este posibil să primiți partea validă a acestei adrese nevalide ca răspuns. În astfel de cazuri, atacatorii bănuiesc că ar putea exista o vulnerabilitate de securitate aici și se pregătesc să atace.
Acum să luăm în considerare o altă adresă URL, cum ar fi example.com/login.php/muo.jpg. Să presupunem că serverul încă vă arată example.com/login.php deoarece nu există un astfel de fișier pe server.
Dacă ați observat, adresa pe care ați solicitat-o aparținea unui fișier JPG, ceea ce înseamnă că acesta este un fișier complet static. Rețineți că dezvoltatorii web ar putea stoca fișiere statice pe un proxy web invers, deoarece conținutul cu extensii de fișiere statice ca acesta nu trebuie să fie reîncărcat dinamic pe site. Scopul principal al dezvoltatorilor web este de a obține un site web mai eficient și mai performant. În acest caz, chiar dacă nu există o astfel de adresă, proxy-ul vă va păstra în cache. Acum, oricine introduce această adresă va vedea pagina la care v-ați autentificat cu numele de utilizator și parola.
Un atacator care dorește să exploateze o astfel de vulnerabilitate va încerca să vă determine să faceți clic pe acest link, scurtând acest link sau înșelându-vă în alt mod. Când dați clic pe acest link fals, vă dați seama că nu se întâmplă nimic, dar acum ați creat un cache pe proxy-ul web invers. Singurul lucru pe care îl va face atacatorul este să vă exploateze informațiile.
Căi de precauție
Cel mai bun mod de a evita o vulnerabilitate de proxy web inversă este de a predetermina modul în care serverul va trata fișierele inexistente. Un fișier care nu există nu ar trebui să creeze un cache. În plus, dacă sunteți un dezvoltator web, acum știți că puteți stoca anumite conținuturi și documente pe un proxy web invers. Este foarte important să verificați periodic datele pe care le stocați în reverse web proxy și să faceți aceste verificări cu atenție. Stăpânirea logicii de lucru a unui proxy web va crea o conștientizare de securitate foarte importantă atât pentru dvs., cât și pentru utilizatorii care vă vor folosi site-ul.
Amintește-ți că atacatorii vor fi întotdeauna cu un pas înaintea ta. De aceea este benefic pentru tine să iei toate măsurile de precauție și să ai o înțelegere mai profundă a tehnologiilor pe care le folosești. Pentru aceasta, în câțiva pași, îți poți crea proxy web și te poți testa.