
🚫 Fortschrittliches Tool für Sicherheitsforscher, um 403/40X-Beschränkungen durch intelligente Techniken und adaptive Anfragemanipulation zu umgehen. Schnell. Präzise. Effektiv.
nomore403 ist ein Kommandozeilenwerkzeug zum Testen von HTTP-Zugriffskontrollumgehungen und Parser-Inkonsistenzen im Zusammenhang mit 401, 403 und ähnlichen Antworten.
Das Werkzeug ist für die praktische Web-Sicherheitsarbeit konzipiert: Bug Bounty, Penetrationstests, Sicherheitsüberprüfungen und Regressionstests von Zugriffskontrollregeln. Es automatisiert einen breiten Satz von Request-Mutationen, erfasst eine Basislinie, filtert häufige Fehlalarme und hebt die Antworten hervor, die am ehesten eine sinnvolle Umgehung darstellen.
Bei einer Ziel-URL führt nomore403 Folgendes aus:
curl-Befehlen für interessante Funde.Dieses Werkzeug „bricht die Authentifizierung“ nicht von selbst. Es hilft dabei, Unterschiede zu finden, wie Frontends, Proxys, WAFs, CDNs, Anwendungsrouter und Backends dieselbe Anfrage interpretieren.
404- oder übergeordnete Pfadantwortennet/http normalisiertgit clone https://github.com/devploit/nomore403
cd nomore403
go build
go install github.com/devploit/nomore403@latest
Wenn Sie mit go install installieren, wird das Verzeichnis payloads/ nicht automatisch installiert. Klonen Sie das Repository und weisen Sie das Werkzeug bei Bedarf mit -f auf dieses Verzeichnis.
curl verfügbar in PATH für Techniken, die darauf angewiesen sind, z. B.:
http-versionshttp-parserabsolute-uriDie meisten Techniken funktionieren ohne curl.
Einfacher Scan:
./nomore403 -u https://target.tld/admin
Mit Proxy und ausführlicher Ausgabe:
./nomore403 -u https://target.tld/admin -x http://127.0.0.1:8080 -v
Nur ausgewählte Techniken ausführen:
./nomore403 -u https://target.tld/admin -k headers,absolute-uri,raw-desync
Ziele von stdin einlesen:
cat urls.txt | ./nomore403
Eine Burp-ähnliche Request-Datei verwenden:
./nomore403 --request-file request.txt
Maschinenlesbare Ausgabe schreiben:
./nomore403 -u https://target.tld/admin --jsonl -o findings.jsonl
target: https://target.tld/admin method: GET frontend: AWS ELB/ALB payloads: payloads
calib: 404 | 1245b | ±50 | frag 703b
BASELINE
default 403 520 bytes https://target.tld/admin
FINDINGS
hdr-ip 100! 200 2048 bytes X-Original-URL: /
abs-uri 26. 403 236 bytes request-target: https://target.tld/admin
http 18. 400 122 bytes HTTP/2
no visible results: 17 techniques
━━━━━━━━━━━━━━ LIKELY BYPASS ━━━━━━━━━━━━━━━━━
[!100 HIGH] Header injection (IP) 403=>200 2048b
why: status 403->200, len Δ1528, body changed, type changed
item: X-Original-URL: /
curl: curl -i -sS -k -H 'User-Agent: nomore403' -H 'X-Original-URL: /' 'https://target.tld/admin'
Jede sichtbare Zeile ist eine Antwort, die sich ausreichend von der Basislinie unterschieden hat, um die Filterung zu überstehen.
Typische Felder:
hdr-ip, abs-uri oder parser18., 61+ oder 100!Die abschließenden Zusammenfassungen zeigen Basislinie-zu-Ergebnis-Übergänge:
403=>200 verdient in der Regel sofortige Aufmerksamkeit403=>302 kann interessant sein, aber möglicherweise wieder in eine Authentifizierungssperre münden403->400 oder 403->404 deuten in der Regel eher auf Parser- oder Routing-Unterschiede als auf eine Umgehung hinAm Ende des Laufs gibt nomore403 aus:
LIKELY BYPASS
curl-BefehlINTERESTING VARIATIONS
no visible results
Die Bewertung ist heuristisch. Sie dient dazu, Ergebnisse zu priorisieren, nicht eine Ausnutzung zu beweisen.
Das Werkzeug belohnt im Allgemeinen:
2xx3xxLocation-ÄnderungenDas Werkzeug stuft in der Regel herab:
400- und 404-Fälle, es sei denn, die Antwort ändert sich ebenfalls erheblichEmpfohlene Interpretation:
HIGH: wahrscheinlich handlungsrelevant; zuerst prüfenMED: plausibler Kandidat; normalerweise manuelle Wiederholung wertLOW: Parser-Unterschied, Routing-Anomalie oder Verhalten mit geringerer VertrauenswürdigkeitDie automatische Kalibrierung ist standardmäßig im nicht-ausführlichen Modus aktiviert.
Sie sendet Anfragen an mehrere nicht existierende Pfade und erstellt eine Basislinie für das standardmäßige Fehlerverhalten des Ziels. Zusätzlich wird eine fragmentbasierte Kalibrierungsanfrage durchgeführt, um Fehlalarme zu reduzieren, die durch fragmententfernte Pfade verursacht werden.
Verwenden Sie diese Flags, um sie zu steuern: