Modalități de a ocoli verificarea domeniului și adresele IP

Verificarea apariției unui șir

Eroare în expresia regulată

Cealaltă este puțin mai complicată, dar se întâlnește și pe proiecte reale - verifică domeniul prin expresie regulată. Cu toate acestea, suntem cu toții oameni, iar oamenii tind să facă greșeli. Și au existat astfel de cazuri atunci când există o verificare că domeniul corespunde unei expresii regulate, să zicem

Și ce e în neregulă cu asta? Iar faptul că punctul în expresia regulată - este orice caracter, astfel încât trimiterea la mail-vulnsite.com (care pot fi înregistrate) - cec va fi trecut.

Nicio verificare de redirecționare

Se taie o parte a domeniului

Pentru unele mecanisme de verificare, numele de domeniu se va potrivi cu google.com, și de fapt - domeniul specificat prin simbolul @.

Unele caractere vă permit să "tăiați" coada domeniului și dacă parserul le transmite:

Simbolul este utilizat pentru navigarea prin hash sau transferul de informații fără participarea serverului. Prin deschiderea acestui link în browser, browserul trimite cererea GET numai la evil.com, iar prelucrarea informațiilor după ce simbolul apare pe partea clientului.

O situație similară, numai linia după semnul întrebării va merge la parametru, în același mod, dacă deschideți pagina evil.com/?vulnsite.com

În cea mai mare parte acest lucru se aplică site-urilor PHP, deoarece a lucrat cu nullbyte nu este întotdeauna bun.

  • Merită notat simbolul (U + 1F4A9)

Merry emoji "PILE OF POO" este o alternativă la nullbyte pentru astfel de DBMS ca MySQL cu utf8 codificare. Și această vulnerabilitate se regăsește în multe proiecte.

Acest lucru este valabil și pentru numele de domenii obișnuite.

Mai mult decât atât, aceste variante pot fi amestecate:

În mod similar, Long IP poate fi reprezentat în sisteme octale și hexazecimale:

După cum sa dovedit, acesta este un serviciu popular, dar mulți îl folosesc. După înregistrarea cu aplicația, mi-am creat formularul și am încercat să adaug domeniul DomainSwigger. Firește că eroarea a ieșit - "Acest nume de domeniu este deja în uz", totuși, aici mi-am amintit o caracteristică cu domenii.

Există un astfel de lucru ca un domeniu de nivel zero. Ar trebui să existe un punct la sfârșitul domeniului. dar este ratat.

De exemplu, un site Wikipedia funcționează bine cu un punct

Dar modul în care se va comporta logica aplicației nu este încă clară.

În funcție de setările serverului, site-ul poate reacționa diferit. Cineva va arăta 404, un nume de gazdă nevalid, o solicitare greșită. Dar, în orice caz, browserele consideră că o astfel de cerere este destul de valabilă.

Și cum ați ghicit deja, am adăugat domeniile surveys.portswigger.net. în cabinetul personal. Și din moment ce serviciul este destul de popular, am găsit alte zeci de companii care au venit în biroul meu:

Articole similare