Acum, că știm cum să descoperim și să exploatăm Da vulnerabilitățile noastre.
Să vorbim despre cum să protejăm site-urile web de acestea.
Deci, dacă ne întoarcem acum la GVW 8 și ați spus că securitatea este prea ridicată, veți vedea că au o modalitate foarte simplă de a proteja
împotriva lui, dar acest lucru funcționează de fapt.
Și ce fac ei sunt că vă cer parola actuală.
Deci, chiar dacă obținem această formă și facem toate forjările și toate lucrurile pe care le-am făcut și
apoi le trimitem persoanei țintă, nu putem ascunde acest lucru și putem să ne transmitem automat, deoarece
nu știm actualul parola.
Deci, cere parola actuală și apoi vă permite să adăugați o nouă parolă.
Deci, aceasta este o soluție foarte bună pentru acest caz.
Deși pentru că, dacă formularul nu vă schimbă parola.
Dacă o să trimitem mesaje care pretind a fi acea persoană.
Dacă vom posta lucrurile pe zidul acelei persoane.
Dacă vom posta lucrurile în blogul persoanei respective.
Deoarece Aref poate fi exploatat pentru a face multe lucruri.
Așa cum am spus în videoclipurile anterioare și această metodă va proteja doar împotriva schimbării parolei.
Nu puteți să întrebați persoana cu privire la parola de fiecare dată când vor să posteze ceva sau să
facă ceva cu profilul lor.
Acum versiuni mai noi ale DVD-urilor atunci când aveți nevoie de faptul că nu vin cu protocolul meu de testare pentru a avea de fapt o
opțiune mai sigură, care va pune în aplicare metoda pe care o să vă vorbesc despre ea.
Acum este numit imposibil în loc de înălțime, dar nu contează că nu este exploatabil oricum,
așa că nu trebuie să avem instalat.
Deci, hai să vorbim despre cum ai putea împiedica aceste vulnerabilități să nu se
întâmple fără a cere utilizatorului să reintroducă informațiile sau să reintroducă parola.
Dacă vă gândiți la modul în care am reușit să exploatăm acest lucru, am reușit să copiem formularul
pe care îl utilizează site-ul web și să-l trimită persoanei vizate și să-l informăm pe acea persoană să o ruleze sau să ruleze
automat pe computerul persoanei vizate.
Deci, odată ce cererea este trimisă la server sau serverul nu a efectuat nici un fel de validare
pentru a se asigura că utilizatorul vrea să își schimbe parola.
Așadar, cel mai bun mod de a preveni s r f este să vă asigurați că utilizatorul transmite datele
printr-o pagină care i-a fost oferită de aplicația web și nu de nimeni altcineva.
O bună modalitate de a implementa acest lucru este utilizarea jetoanelor de sincronizare.
Știu că numele pare complicat, dar ideea este foarte simplă.
În principiu, dorim să generăm un jeton unic și aleator pe partea de server.
Atunci când pagina este încărcată atunci când formularul este încărcat Vom încorpora acest token deja generat
în acea pagină ca pe un formular ascuns.
Atunci când se trimite formularul, vom asigura că formularul a fost trimis împreună cu acel
simbol pe care l-am trimis utilizatorului respectiv.
Deci, în principiu, îi dăm utilizatorului un simbol și apoi așteptăm ca el să trimită formularul cu jetonul pe care
l-am dat.
În felul acesta, tokenul pe care îl primește hackerul va lucra numai pentru el.
Deci, chiar dacă generează o pagină și trimite-o la țintă, iar țintă aruncă pagina, formularul
va fi trimis, dar acesta va fi refuzat de server deoarece nu a dat acel simbol
aceluia pe care i-a dat acel token către hacker spunând de exemplu, avem acest utilizator aici și aici costă
Facebook dot com parola BHB.
Se duce la server.
Serverul va genera un răspuns pentru această solicitare.
Prin urmare, va reveni pagina de e-mail care reprezintă parolele ph din această pagină.
Va include un jeton unic.
Deci, atunci când pagina este încărcată pe partea clientului, va avea deja forma pe
care utilizatorul o caută plus un jeton unic generat de server.
Apoi, atunci când utilizatorul transmite orice vrea să trimită, serverul va accepta formularul și va accepta sau
va răspunde la ceea ce solicită utilizatorul.
Dacă utilizatorul returnează același simbol.
Acum, dacă acest lucru nu este implementat în mod corespunzător, acesta poate fi totuși exploatat.
Deci, dacă jetonul a fost predictibil sau dacă se folosea același simbol, atunci hackerul poate
descoperi ce este încorporat în codul HDMI și trimite-l utilizatorului.
Deci, tokenul trebuie să aibă anumite caracteristici, astfel încât să fie sigur.
Și, în principiu, principalul lucru pe care doriți să-l aveți în vedere este că tokenul trebuie să fie
imprevizibil și nu poate fi folosit indiferent de modul în care veți implementa acest lucru.
Acestea sunt cele două lucruri principale pe care doriți să le păstrați în minte, deoarece dacă
era predictibil, atunci hackerul va putea crea propriile jetoane și le va încorpora în cod și va executa atacul.
Același simbol poate fi folosit.
Apoi, hackerii pot folosi doar tokenul lor sau tokenul altcuiva pentru a-și viza ținta.
Deci, pentru a face dovada imprevizibilă și a face-o astfel încât ea să poată fi folosită, atunci
tokenul trebuie să fie o valoare mare, astfel încât hackerul să nu poată face un atac de forță brute și să descopere
ce înseamnă tokenul este tokenul astfel încât hackerul să nu poată crea propriile jetoane și trebuie să fie unic
pentru fiecare utilizator, deoarece dacă utilizatorii primesc aceleași jetoane sau token-uri similare, atunci pot să le transmită și
apoi tokenul care lucrează pentru hacker va funcționa pentru alti oameni.
Deci, asta va defini întregul punct.
De asemenea, puteți spori securitatea tokenului prin includerea în alți factori și algoritmul de generare
a jetoanelor.
Deci, puteți include, de exemplu, data și ora.
Apoi combinați-l cu un generator securizat și apoi criptați-l.
Toate acestea se întâmplă evident în partea de server.
Deci, hackerul nu va putea să știe ce algoritm utilizați, deoarece codul va fi executat pe
partea de server.
Nu trebuie neapărat să faceți acest lucru folosind un număr mare și unic securizat securizat.
Dar dacă doriți să creșteți securitatea, puteți adăuga alți factori și puteți cripta token-ul înainte de
al trimite utilizatorului.
Aceasta este de fapt implementată în ziua Matile.
Deci, permiteți-mi să vă arăt în acțiune.
Așa că o să mă duc la Matile.
Voi merge pe o viespe, atunci da sau ca o adaugare la blog.
Deci, acest lucru vă permite să adăugați o postare pe blog, astfel încât să nu vă permită să vă schimbați
parola sau tot ceea ce permite oamenilor anonimi la postările noastre de blog.
Deci, nu puteți să întrebați oamenii pentru o parolă.
De fapt, am de gând să merg și să protejez securitatea, astfel încât să fie cea mai mare pentru că e la zero chiar acum.
Deci acum este cel mai sigur.
Și dacă faceți clic dreapta pe acesta și continuați să inspectați elementul.
Acum mă duc să scot în sus și după cum puteți vedea că avem forumul aici și avem o intrare ascunsă cu o
valoare foarte lungă.
Și acesta este simbolul.
Deci, acest lucru a fost deja generat de server și serverul va refuza orice solicitări pe
care le trimitem dacă nu are acest token specific.
Și dacă folosesc acest formular și îl trimit altcuiva.
Apoi, din nou cererile pe care le vor trimite vor fi refuzate, deoarece vor obține un alt semn că acest
simbol a fost generat pentru mine și pentru mine numai.
Așadar, permiteți-mi să vă arăt dacă actualizăm acum că voi obține un alt simbol.
Și din nou, dacă o voi reîmprospăta, voi obține un alt simbol dacă modific acest lucru.
Deci, să spunem că, în loc de capitală, la sfârșitul anului voi pune un mic, dacă aș prezenta acest lucru,
acum îmi dă o eroare.
Dar permiteți-mi să nu schimb acest lucru din nou, am primit un alt semn acum și dacă am prezentat modul în care acesta
este de gând să funcționeze și acum avem o intrare pe blog numit de testare.
Deci asta este.
De fapt este foarte simplu.
Nu am vrut să intru în prea multe detalii despre cum să creez un jeton aleator și toate acestea pentru
că asta va fi dependent de limbajul de programare.
Aceasta este aplicația web programată.
Dar am fost doar vroiam să vă arăt conceptul sau ideea de a asigura securizarea aplicațiilor web împotriva
acestui tip de vulnerabilitate.
Întreaga idee este că doriți să vă asigurați că utilizatorul își transmite datele prin intermediul unei pagini pe care o
deserviți și nu printr-o pagină care le-a fost dată de altă persoană.
Deci, pentru a face acest lucru vom genera un token pe partea de server acest token trebuie să fie
lung, aleatoriu și unic trimite acest token cu pagina cu formularul și încorporat ca un formular ascuns.
Apoi, ori de câte ori un utilizator trimite răspunsul, asigurați-vă că trimit același jeton care le-a
fost dat.