web-dev-qa-db-ja.com

通常の使用とサービス拒否の違いサービス拒否について話すには、いくつのリクエストが必要ですか?

最近、私はツールを使用してWebサイトをダウンロードし、ツールの一部として、並列接続の数を調整することができました。だから今私は自分が尋ねていることに気づきました:プロバイダーがサービス拒否としてそれを評価できるリクエストの数から始めます。私はググったが、具体的な数値や少なくとも私たちが話している次元についてのヒントは見つけられなかった。定義はありますか? 100リクエストは1秒ですか?

だから私の質問は:サービス拒否が進行中であることを述べるためにいくつの要求が必要ですか?

更新:技術的な背景は間違いなく興味深いものです。 1つ悪意のあるパケットがサービス拒否を引き起こすのに十分である可能性があること、またはスラッシュドット効果が別であることを理解しています。しかし、私が知りたかったのは、ファイアウォールスタイルのルールの詳細でした。一部のサーバー/サービスプロバイダーは、特定の時間枠で大量のリクエストを送信するユーザーをブロックします。ここで何について話しているのですか?それとも具体的すぎますか?もしそうなら、あなたのルールはどのように見えますか?

質問には法的要素も含まれていました-高い(!)理論的なシナリオを説明しましょう:

サービスのプロバイダーはログをチェックし、単一のIPからのトラフィックが多いことを確認します。次に、プロバイダーは(何らかの理由で)法廷に出向き、これをサービス拒否の試みとして分類します。裁判官はおそらくDoSの定義を求めるでしょう。 「通常の使用法を超えるもの」が答えです。したがって、通常の使用と「なし」の通常の使用の間のしきい値はどこですか(これは、サーバーがまったく印象づけられないままで、これがおそらく高度に構築されたシナリオである場合でも、試行されたDoSとして解釈される可能性があります;-)

27
Lonzak

私はこれを答えにすることについて議論しました、それはコメントとしてより良いかもしれません。

両方の角度からあなたの質問を見てみましょう。

ホストから

トラフィックについて、またはそのトラフィックが実行していることにより、サーバーが他のユーザーから利用できなくなると、何かがDoSになります。いくつかの例;

  • 長期実行レポートを500回実行する
  • それを処理できないWebサイトで本当に速くリフレッシュを破壊する
  • より大きな帯域幅を使用してアップロードパイプを埋めるので、他の人がいっぱいになると速度が低下します。
  • ホストが他の人に無反応になるような方法でウェブサイトをこする。

これらの例はすべて可能ですが、そうではありません。 DoS攻撃とは、1人の人物/クライアントがこれをすべて行うことであり、ほとんどのWebサーバーは数百または数千の要求を同時に処理するように設定されています。そのため、DDoSは非常に人気があります。 (通常の状況で)通常のサーバーに過負荷をかけるには、複数のクライアントが必要になるためです。

複雑さを増すために、多くのクライアントはいくつかのマーケティングの後で初めてあなたのサイトを使い始めるかもしれません。時々それを引き起こすのはあなたのマーケティングでさえありません。たとえば、人気のある携帯電話のリリースは、サイトへのアクセス方法のトラフィックを急上昇させる可能性があります。正当なトラフィックからDDoSトラフィックを区別することは非常に難しい場合があります。

ただし、いくつかの基本的なルールがあります。基本的にあなたが探しているのは異常な使用法です。

  • 他よりもずっとダウンロードしているユーザーはいますか?
  • 他よりもずっと長い間接続を維持しているユーザーはいますか?
  • 他よりも多くの方法で再接続しているユーザーはいますか?

これらのガイドやその他のガイドは、DDoS攻撃の一部であるトラフィックを特定し、何らかのフィルタを適用するのに役立ちます。

ユーザーの視点から

Webサイトをスクレイピングすることを決定するときは、最初に確認し、ポリシーがあるかどうかを確認する必要があります。一部のサイトでは、そうでないサイトもあります。一部のサイトは盗難と見なし、他のサイトは盗難と見なしません。サイトにポリシーがない場合は、自分で電話をかける必要があります。

ポリシーが明記されていない場合の目標は、スクレイピングを明確に述べ(ツールが使用している可能性のあるユーザーエージェントやヘッダーをマスクしないでください)、できるだけ小さな影響を与えることです。スクレイピングの必要性に応じて、ほんの数ページをスクレイピングできますか、それともサイト全体が本当に必要ですか? 「通常のユーザー」の速度、おそらく5秒ごとに1ページ(メディアコンテンツを含む)でこすることができますか?データをすばやくキャプチャしたい場合は、テキストファイルだけをキャプチャし、画像やその他のメディアはキャプチャしないでください。長時間実行されているクエリ、およびより大きなメディアファイルを除外できますか。

ここでのすべての目標は、ホスティングのホストコスト、およびサイトの他のユーザーを尊重することです。この場合、通常は遅いほど良いです。可能であれば、ウェブサイトの所有者に連絡して尋ねてください。そして、何があっても、robots.txtファイルのルールに従ってください。従うべきレート制限とページ制限がある場合があります。

5
coteyr

誰かにサービスを拒否させるのに十分です。 1つの予期しない悪意のあるリクエストである可能性があり、サーバーに過度の負荷がかかります。本当に良い応答のテレビ広告からの数百万の予想される要求であるかもしれません。

すべてのサーバーがさまざまなレベルで失敗するため、特定の値はありません。静的コンテンツの提供は、ユーザーごとに高度にカスタマイズされたコンテンツを生成するよりもサーバーではるかに簡単です。したがって、一般に認証されたサービスは、非認証よりも「問題」のしきい値が低くなりますもの。同じファイルを複数のユーザーに送信するサーバーは、個別のファイルを複数のユーザーに送信するサーバーよりも多くのトラフィックを処理できます。これは、ファイルをメモリに保持できるためです。インターネットへの高速接続を備えたサーバーは、通常、低速接続を備えたサーバーよりも多くのトラフィックを処理できますが、生成されたトラフィックがCPUにバインドされている場合、その違いによる依存性は低くなる可能性があります。

1秒あたり3回のリクエストで失敗するシステムを見てきました。また、1秒あたり最大30,000のリクエストをすべて処理するシステムで、汗をかくことはありません。最初にDoSになるのは、2番目にトラフィックが少ない期間です...

更新に応答するように更新

ファイアウォールプロバイダーは、トラフィックがサービス拒否を引き起こしていることをどのように判断しますか?

通常、サーバーからの応答時間を監視し、事前に設定された制限を超えた場合にトラフィックを抑制します(これは、技術ベースまたはマーケティングベースで決定できます-x秒待つとユーザーが去ります)、またはサーバーの応答は、成功(200)からサーバー障害(50x)に変わります。

「サービス拒否」の法的な定義とは何ですか?

私が提供した元の1つと同じ-サービスが拒否されていない場合、サービス拒否ではありません。それは虐待的かもしれませんが、それはまったく同じことではないでしょう。

45
Matthew

Webサイトをダウンロード(またはスクレイピング)する場合、基本的には、ターゲットWebサイトの各URLに対して大量のGETリクエストを送信します。

これは、World Wide Web Consortium WebサイトからのGETリクエストの例です。

GET /pub/WWW/TheProject.html HTTP/1.1

ホスト:www.w3.org

ご覧のとおり、主な問題はリクエストではなく、指定されたURLで識別されるリソース全体を送信するウェブサーバーのレスポンスです。

したがって、

1秒あたりの最大リクエスト数=(安全係数*帯域幅)/ Webページの最大サイズ

Googleのクイック検索から判断すると、ウェブページの平均サイズは約2 Mbであり、ウェブサーバーの帯域幅は数Mbpsから数Tbpsの範囲です。

安全率は、DoS攻撃を引き起こすために、帯域幅の100%に対応する多数の要求を送信する必要がない場合があるという事実に関連しています。たとえば、ウェブサーバーに100 Mbpsの帯域幅があり、その50%が特定の瞬間に他のユーザーに使用されている場合、帯域幅の50%またはそれよりも小さいパーセンテージに相当する数のリクエストを送信するだけで十分です。 。

100 Mbpsの50%= 50 Mbpsは、1秒あたり25の平均GETリクエストに対応します。

一方、誰もWebサイトにアクセスしていない場合は、DoSを発生させるために少なくとも80%の帯域幅を使用する必要があり、100 Mbpsの80%= 80 Mbpsは、40 GETリクエストあたりに相当します。第二。

明らかに、1 Tbpsの帯域幅を持つ巨大なWebサイトを(意図せずに)DoSするには、少なくとも(1 Tbpsの80%)/ 2 Mbps = 400,000 GETリクエスト/秒を送信する必要があります。等々。

より正確な測定を行うには、ターゲットWebサイトのWebページの最大サイズとその帯域幅を見つける必要があります。

警告:サービス拒否を引き起こす可能性があるため、前の式で取得した1秒あたりのリクエスト数を切り捨てるのが適切です。

6
A. Darwin

フィリップ・ローランズのコメントに関するマシューの答えに基づいて、

DoSトラフィックを定義する一般的な経験則はcontextです。

スーパーボウルでTV広告を実行しただけの場合、その後のトラフィックの洪水はコンテキスト上悪意がないと見なすことができます(サービスの停止が発生するかどうかは関係ありません)。

火曜日の朝になっていて、特定の理由なしにサイトがリクエストで溢れている場合、トラフィックが悪意のある(または少なくとも疑わしい、たとえば標的型攻撃ではなく不明なredditポストである)と想定しても安全です。 。

4
WorseDoughnut