Web 脆弱性の方法論

Tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする

すべての Web Pentest において、脆弱である可能性のあるいくつかの隠れた場所や明白な場所があります。この記事は、可能なすべての場所で脆弱性を探したことを確認するためのチェックリストです。

プロキシ

Tip

現在、ほとんどの web アプリケーションは何らかの仲介プロキシを使用しており、これらは脆弱性を悪用するために(誤用)されることがあります。これらの脆弱性は脆弱なプロキシが存在することを前提としますが、通常はバックエンド側の追加の脆弱性も必要とします。

ユーザー入力

Tip

ほとんどの web アプリケーションは、後で処理されるデータをユーザーに入力させることを許可します。
サーバーが期待するデータの構造によって、適用される脆弱性があるかどうかが変わる場合があります。

反映される値

入力したデータがレスポンスに何らかの形で反映される場合、そのページは複数の問題に対して脆弱である可能性があります。

いくつかの脆弱性は特別な条件を必要とし、他は単にコンテンツが反映されるだけで発生します。脆弱性を素早くテストするための興味深い polygloths は以下で見つけられます:

Reflecting Techniques - PoCs and Polygloths CheatSheet

検索機能

機能がバックエンド内のデータを検索するために使用される場合、任意のデータを検索するために(誤用)できる可能性があります。

Forms, WebSockets and PostMsgs

WebSocket がメッセージを送信したり、ユーザーが操作を実行できるフォームがある場合、脆弱性が発生する可能性があります。

HTTP Headers

Web サーバーが返す HTTP ヘッダーによっては、いくつかの脆弱性が存在する可能性があります。

バイパス

特定の機能では、それらを回避するためのワークアラウンドが有用な場合があります。

構造化オブジェクト / 特定の機能

一部の機能は、非常に特定の形式でデータが構造化されていることを要求します(言語のシリアライズオブジェクトや XML など)。したがって、アプリケーションがその種のデータを処理しているかどうかを特定するのは容易です。
また、特定の入力形式(Email Header Injections のような)を使用すると脆弱になる特定の機能もあります。

Files

ファイルのアップロードを許可する機能は、さまざまな問題に対して脆弱である可能性があります。
ユーザー入力を含むファイルを生成する機能は、予期しないコードを実行する可能性があります。
ユーザーが他のユーザーによってアップロードされたファイルや、ユーザー入力を含む自動生成ファイルを開くと、侵害される可能性があります。

External Identity Management

その他の有用な脆弱性

以下の脆弱性は、他の脆弱性を悪用するのに役立つ場合があります。

Web サーバー & ミドルウェア

エッジスタックのミスコンフィグレーションは、しばしばアプリケーション層でより影響の大きいバグを引き起こします。

アプリケーションフレームワーク & スタック

フレームワーク固有のプリミティブは、しばしばガジェット、危険なデフォルト、またはフレームワークが所有するエンドポイントを露呈します。

CMS, SaaS & 管理プラットフォーム

表面積の大きい製品は、既知のエクスプロイト、脆弱なプラグイン、または特権管理者向けエンドポイントを含んでいることがよくあります。

APIs, Buckets & 統合

サーバーサイドのヘルパーやサードパーティの統合は、ファイル解析やストレージ層の弱点を露呈する可能性があります。

サプライチェーン & 識別子の悪用

ビルドパイプラインや予測可能な識別子を狙う攻撃は、従来のバグを悪用する前の最初の足がかりになることがあります。

Web3、拡張機能 & ツーリング

現代のアプリケーションはブラウザ、ウォレット、オートメーションパイプラインへと拡張されます。これらのベクターも調査範囲に含めてください。

Tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする