私は asp.net MVC Web アプリケーションを開発していますが、クライアントから、サービス拒否攻撃に対して可能な限り回復力を持たせるために最善を尽くすよう要求されています。彼らは、サイトを遅くしたり、サイトを閉鎖したりする意図で、サイトが悪意のある大量のリクエストを受信する可能性があることを心配しています.
これは、実際の Web アプリケーションの権限外であるとして、プロダクト オーナーと話し合ったことがあります。トラフィックを監視し、悪意のあるリクエストに対応するのは、ホスティング/ネットワーク チームの責任だと思います。
ただし、アプリケーションにはいくつかの予防措置が組み込まれている必要があると断言しています。ただし、CAPTCHA の実装は望んでいません。
特定の時間枠内でセッションに対して行うことができるリクエストの数を制限することが提案されています。私はこのようなことを考えてい ました ASP.NET MVC で要求スロットリングを実装する最良の方法は? ただし、クライアント IP ではなくセッション ID を使用すると、企業のファイアウォールの背後からアクセスするユーザーに問題が発生するため、IP はすべて同じになります。
彼らはまた、サイトの特定の領域をオフにする機能を追加することを提案しました-管理者ユーザーがデータベース集約的な領域をオフにできることを示唆しています.....しかし、これはUIを介して制御され、DOS攻撃を受けている場合は確かに管理者とにかく、ユーザーはそれにアクセスできません。
私の質問は、これを行う価値があるかどうかです。確かに、実際の DOS 攻撃はもっと高度なものでしょうか?
他に提案はありますか?