web-dev-qa-db-ja.com

IPS \ IDSはどのようにしてSQLi \ XSS(または他のアプリケーション層)攻撃を検出できますか?

私はIPSがどのように機能するか、そして私が知る限り、TCP\IPレイヤー上のパケットを検査するかについて考えていました。

ユーザーエクスペリエンスを損なうことなく、より高いレベルの攻撃をどのように検出できますか?情報の損失と再送信があるという事実にどのように対処しますか?

最後に、いくつかのTCPパケットに分割する長いリクエストが存在する可能性があります。情報を構築してから、リクエストに対してチェックを実行しますか?

ネットワークレベル以降で何が起こるか知りたいのですが。

ありがとう。

5
YSY

IPSは、両端のスタックと同じTCP再構成を行うだけです。

再送信は問題ではありません。パケットが失われたためにトラフィックにホールが発生した場合、IPSはそのホールの後にパケットを転送しますが、そのコピーも保持します。これらのパケットを転送しているため、損失はありませんユーザーエクスペリエンスで。

再送信されたパケットが全体を埋める(パズルを完了する)と、IPSは、格納されたすべてのパケットを順番に分析します。これらを1つのストリームに結合するため、パケット間で分割された要求は問題ありません。これらのパケットのいずれかがシグネチャをトリガーすると、IPSは再送信されたパケットをブロックし、TCP RSTパケットとの接続を強制終了します。バッファリングしていた穴の後にフラグメントをドロップします。

したがって、パケットはIPSを介して本質的にゼロの遅延でストリーミングされますが、同時にTCPは問題なく再構成されます。

過去10年間、ハッカーはこのシステムを攻撃する方法を開発してきました。たとえば、さまざまなデータを含むTCPセグメントを再送信します。同様に、IPSベンダーは、分析する正しいセグメントを選択できるように、再構築アルゴリズムをターゲットシステムと一致させるため。

また、IPSは完全なHTTP処理も行います。同様に、IPSを回避するためにHTTPリクエストを破損させる方法があります。IPSベンダーは、 。

その結果、IPSはWebリクエストのレイテンシを約100マイクロ秒(または0.1ミリ秒)しか導入しませんが、TCP問題ない。

5

あなたが探しているのはWebアプリケーションファイアウォール(WAF)だと思います[OWASPがこれについて説明します ここ] アプリケーション層で渡されるものではなく、トラフィックフロー。

WAFはスタック内の上位レベルで機能し、SQLiやXSSなど、有害であると見なされるパターンに一致する会話を除外します。

* nix環境では、標準の ModSecurity があります。 Cisco、Checkpoint、F5、Fortinet、SonicWallなどからも入手可能な複数の商用アプライアンスがあります。

4
schroeder