1

クエリ文字列から画像テキストを生成する画像生成サーブレットがあり、次のように使用します。

<img src="myimage.jpg.jsp?text=hello%20world">

以下は私のセキュリティ対策です。

  • クエリ文字列パラメーターの Urlencoding
  • ドメインのホワイトリスト
  • クエリ文字列パラメータの長さチェック

私の質問:

  • そこで忘れているセキュリティ対策はありますか?
  • 上記は、標準と比較して DOS 攻撃のリスクをどのように増加させますか。

    <img src="myimage.jpg">
    

助けてくれてありがとう。

4

2 に答える 2

0

DoS 防止レート制限の場合、X 秒ごとに IP ごとに受信できるリクエストの数。

したがって、これを実装するには、処理を行う前に各リクエストのリモート IP アドレスをログに記録し、最後のたとえば 30 秒間の以前のリクエストの数をカウントします。その IP アドレスからの数がたとえば 15 より大きい場合は、リクエストを " HTTP 500.13 Web Server Too Busy" で拒否します。

これは、データベースのログ記録とルックアップが、画像生成コードよりもプロセッサへの負荷が少ないことを前提としています。これは大規模なDDoS攻撃を防ぐことはできませんが、リスクを大幅に軽減します。

ドメインのホワイトリスト

これは " referer" ヘッダーにあると思いますか? はい、これにより画像が他の Web サイトに直接含まれるのを防ぐことができますが、他のサイトのサーバーを介してリクエストをプロキシすることで回避できます。ただし、上記の DoS 保護はこれを軽減するのに役立ちます。

Querystring parameter length check

はい、単一の画像リクエストで実行できる処理量を減らすのに役立ちます。

私の質問:

そこで忘れているセキュリティ対策はありますか?

おそらく。まず、あなたがOWASP Top 10の危険にさらされていないことを確認します。

上記は、標準と比較してDOS攻撃のリスクをどのように増加させますか

標準のイメージ リクエストは、サーバーから静止画像をリクエストするだけで、実際のオーバーヘッドは IO だけです。JSP を介して処理するということは、CPU がより多くの作業を行っているときに複数の要求を同時に実行することによって、サーバーが過負荷になる可能性があることを意味します。

于 2013-11-13T12:28:40.147 に答える