
Bypass 4xx HTTP response status codes and more. The tool is based on Python Requests, PycURL, and HTTP Client.
4xx HTTPレスポンスステータスコードなどをバイパスします。
このツールはPython Requests、PycURL、およびHTTP Clientに基づいています。
Kali Linux v2024.2 (64-bit)でテスト済みです。
教育目的で作成されました。お役に立てれば幸いです!
今後の計画:
silentオプションの追加。no colorオプションの追加。hop-by-hop HTTPリクエストヘッダーのテスト追加。User-Agent HTTPリクエストヘッダーのテスト追加。Kali Linuxでは、これは問題なく動作するはずです。そうでない場合は、以下を実行してください:
apt-get -y install libcurl4-gnutls-dev librtmp-dev
pip3 install --upgrade pycurl
PycURLはWindows OSではサポートされていません。
macOSでは、以下を実行してください:
brew uninstall curl
brew uninstall openssl
brew install curl
brew install openssl
echo 'export PATH="/opt/homebrew/opt/curl/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/openssl@3/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
export LDFLAGS="-L/opt/homebrew/opt/curl/lib"
export CPPFLAGS="-I/opt/homebrew/opt/curl/include"
export PYCURL_SSL_LIBRARY=openssl
pip3 install --no-cache-dir --compile --ignore-installed --config-setting="--with-openssl=" --config-setting="--openssl-dir=/opt/homebrew/opt/openssl@3" pycurl
または、Homebrewを使ってインストールします(私が管理しているわけではありません):
brew install forbidden
pip3 install --upgrade forbidden
git clone https://github.com/ivan-sincek/forbidden && cd forbidden
python3 -m pip install --upgrade build
python3 -m build
python3 -m pip install dist/forbidden-13.4-py3-none-any.whl
403 Forbidden HTTPレスポンスステータスコードをバイパス:
forbidden -u https://example.com/admin -t protocols,methods,uploads,overrides,headers,paths-ram,encodings -f GET -l initial,path -o forbidden_403_results.json
ストレステストを用いて403 Forbidden HTTPレスポンスステータスコードをバイパス:
mkdir stresser_403_results
stresser -u https://example.com/admin -r 1000 -th 200 -f GET -l initial -dir stresser_403_results -o stresser_403_results.json
401 Unauthorized HTTPレスポンスステータスコードをバイパス:
forbidden -u https://example.com/admin -t auths -f GET -l initial -o forbidden_401_results.json
オープンリダイレクトや壊れたURLパーサーをテストする、つまり、アウトオブバンド(OOB)インタラクションをテストする:
forbidden -u https://example.com/admin -t redirects,parsers -f GET -l initial -e xyz.interact.sh -o forbidden_oob_results.json
protocols
Host HTTPリクエストヘッダーなしでのHTTP/1.0プロトコルダウングレードをテストします。methods
Content-Length: 0 HTTPリクエストヘッダーも使用してテストします。uploads
overrides
Host HTTPリクエストヘッダーも使用)。headers
values
paths
encodings
auths
redirects
parsers
より詳細な情報に興味がある場合は、以下を参照してください:
注意:
ユニークフィルターが適用されます。ForbiddenとStresserの両方がPython Requestsエンジンを使用します。Host HTTPリクエストヘッダーなしでのHTTP/1.0プロトコルダウングレードのテストは、HTTP Clientエンジンに固定されています。さらに、提供されているcURLコマンドは正しく動作しません。cURLはHost HTTPリクエストヘッダーの削除を許可しないためです。Host HTTPリクエストヘッダーを使用したHTTPホストオーバーライドのテストは、Python Requestsエンジンに固定されています。さらに、提供されているcURLコマンドは正しく動作しません。cURLは2つのHost HTTPリクエストヘッダーの使用を許可しないためです。PycURLエンジンに固定されています。正規化したり(例:encodingsをテストする場合)、HTTPリクエストを変更したり、HTTPリクエストを完全にドロップする場合があります。User-Agent HTTPリクエストヘッダーが必要な場合があります。レート制限やその他の類似のアンチボット保護に注意してください。同じドメインでツールを再度実行する前に、少し時間を置いてください。これは、使用されているものの概要を示したものです。使用方法については説明していません。
ACL
ARBITRARY
BASELINE-CONTROL
BIND
CHECKIN
CHECKOUT
CONNECT
COPY
DELETE
GET
HEAD
INDEX
LABEL
LINK
LOCK
MERGE
MKACTIVITY
MKCALENDAR
MKCOL
MKREDIRECTREF
MKWORKSPACE
MOVE
OPTIONS
ORDERPATCH
PATCH
POST
PRI
PROPFIND
PROPPATCH
PUT
REBIND
REPORT
SEARCH
SHOWMETHOD
SPACEJUMP
TEXTSEARCH
TRACE
TRACK
UNBIND
UNCHECKOUT
UNLINK
UNLOCK
UPDATE
UPDATEREDIRECTREF
VERSION-CONTROL
これは、使用されているものの概要を示したものです。使用方法については説明していません。
19-Profile
Accept
Base-URL
CF-Connecting-IP
Client-IP
Cluster-Client-IP
Destination
Forwarded-For
Forwarded-For-IP
From
Front-End-HTTPS
Host
Incap-Client-IP
Origin
Profile
Proxy
Proxy-Client-IP
Redirect
Referer
Remote-Addr
Request-URI
True-Client-IP
URI
URL
WAP-Profile
WL-Proxy-Client-IP
X-Client-IP
X-Cluster-Client-IP
X-Forward
X-Forward-For
X-Forwarded
X-Forwarded-By
X-Forwarded-For
X-Forwarded-For-IP
X-Forwarded-For-Original
X-Forwarded-Host
X-Forwarded-Path
X-Forwarded-Port
X-Forwarded-Proto
X-Forwarded-Protocol
X-Forwarded-SSL
X-Forwarded-Scheme
X-Forwarded-Server
X-HTTP-DestinationURL
X-HTTP-Host-Override
X-HTTP-Method
X-HTTP-Method-Override
X-Host
X-Host-Override
X-Method
X-Method-Override
X-Original-Forwarded-For
X-Original-Remote-Addr
X-Original-URL
X-Originally-Forwarded-For
X-Originating-IP
X-Override-URL
X-Proxy-Host
X-Proxy-URL
X-ProxyUser-IP
X-Real-IP
X-Referer
X-Remote-Addr
X-Remote-IP
X-Rewrite-URL
X-Scheme
X-Server-IP
X-True-Client-IP
X-True-IP
X-URL-Scheme
X-Wap-Profile
注意:
昇順、HTTPレスポンス本文の長さの降順、テストIDの昇順で並べ替えられます。2xxおよび3xxのHTTPレスポンスステータスコードのみが結果に含まれ、コンソール出力に表示されます。length属性は、HTTPレスポンス本文の長さを指します。誤検出の結果を手動でフィルタリングするには、一意のHTTPレスポンスコンテンツ長ごとに、提供されているcURLコマンドを実行し、HTTPレスポンスがバイパスになるかどうかを確認します。そうでない場合は、同じコンテンツ長の結果をすべて無視してください。