
Fuzz delle pagine 401/403/404 per bypass
L'originale 403fuzzer.py :)
==Nota: Questo è stato deprecato a favore della mia nuova e brillante estensione Burp, che è 1000000% migliore. Grazie per aver utilizzato i miei strumenti!==
Puoi trovare l'estensione qui: https://github.com/intrudir/BypassFuzzer-Burp
Fuzzing di endpoint 401/403 per bypass
Esegue vari controlli tramite header, normalizzazione del percorso, verbi, ecc. per tentare di bypassare ACL o la validazione degli URL.
Se questo strumento ti ha aiutato a ottenere una bounty o semplicemente vuoi offrirmi una birra:
Seguimi su Twitter! @intrudir
# clone the repo (or download it as a zip!) then navigate to the directory
git clone https://github.com/NetSPI/BypassFuzzer.git
cd BypassFuzzer
# it is best practice to create a new virtual env.
python3 -m venv .venv
# activate the venv
source .venv/bin/activate
# install dependencies
python3 -m pip install -r requirements.txt
# clone the repo (or download it as a zip!) then navigate to the directory
# if you download the .zip, remember to extract it first
cd BypassFuzzer-main\
# it is best practice to create a new virtual env.
py -m venv .venv
# activate the venv
.venv\Scripts\activate
# install dependencies
# you need to use 'python' cmd in order to use the interpreter from this environment.
python -m pip install -r .\requirements.txt
Per Windows, per utilizzare lo script, assicurati di usare il comando python. Questo garantisce che tu stia usando l'ambiente virtuale.
Vedi il menu di aiuto
bypassfuzzer.py -h
Semplicemente incolla la richiesta in un file ed esegui lo script!
cookies e gli headers dalla richiesta.python3 bypassfuzzer.py -r request.txt

Specificare un URL
python3 bypassfuzzer.py -u http://example.com/test1/test2/test3/forbidden.html
Specificare i cookie da usare nelle richieste:
alcuni esempi:
--cookies "cookie1=blah"
-c "cookie1=blah; cookie2=blah"
Specificare un metodo/verbo e i dati del corpo da inviare
bypassfuzzer.py -u https://example.com/forbidden -m POST -d "param1=blah¶m2=blah2"
bypassfuzzer.py -u https://example.com/forbidden -m PUT -d "param1=blah¶m2=blah2"
Specificare header personalizzati da usare con ogni richiesta
Forse hai bisogno di aggiungere un qualche tipo di header di autenticazione come Authorization: bearer <token>
Specifica -H "header: value" per ogni header aggiuntivo che desideri aggiungere:
bypassfuzzer.py -u https://example.com/forbidden -H "Some-Header: blah" -H "Authorization: Bearer 1234567"
Basato su codice di risposta e lunghezza. Se vede una risposta 8 o più volte la silenzierà automaticamente.
Il numero di ripetizioni è modificabile nel codice finché non aggiungo un'opzione per specificarlo tramite flag
NOTA: Non può essere usato contemporaneamente con -hc o -hl (ancora)
# toggle smart filter on
bypassfuzzer.py -u https://example.com/forbidden --smart
Utile se vuoi usare un proxy attraverso Burp
bypassfuzzer.py -u https://example.com/forbidden --proxy http://127.0.0.1:8080
# skip sending header payloads
bypassfuzzer.py -u https://example.com/forbidden -sh
# or --skip-headers
# Skip sending path normailization payloads
bypassfuzzer.py -u https://example.com/forbidden -su
# or --skip-urls
Fornisci elenchi separati da virgole senza spazi. Esempi:
# Hide response codes
bypassfuzzer.py -u https://example.com/forbidden -hc 403,404,400
# Hide response lengths of 638
bypassfuzzer.py -u https://example.com/forbidden -hl 638
Ogni coppia richiesta/risposta con successo (200 OK) viene salvata in un database sqlite.
Ogni payload include un numero indice per una facile interrogazione.

Una volta terminato l'attacco, esamina i risultati e determina l'indice o il payload dei dati che desideri visualizzare.
Devi usare ENTRAMBI i seguenti flag:
--display-by index o payload--display-interactions numero indice o stringa payload tra virgolette# display by index number
bypassfuzzer.py --display-by index --display-interactions 49
# display by payload
bypassfuzzer.py --display-by payload --display-interactions "/%2e%2fAJAX/index.php"
Risultato:

Per semplicità, ogni volta che esegui lo strumento, viene creato un nuovo database.
Puoi interrogare un database specifico tramite il flag --idb.
NOTA:
interactions per essere utilizzabile.--idb, verrà usato il più recente per impostazione predefinita.bypassfuzzer.py --display-by index --display-interactions 49 --idb interactions_20240729_145149.db

Fornisci il flag --oob con il tuo dominio collaborator o ISH
Devi controllare tu stesso i pingback perché al momento non ho modo di farlo per te.
--oob abc123.oastify.com