質問

我々は、MSDNの例から1のようなWCFサービスとしましょう - 。デフォルトのすべてのサービスの設定で、C#の、calculatorserviceを

私はハッカーだったと私はそれが動作を停止したいこと、そのcalculatorserviceは重要な何かを知っていた場合は、

は、私は単純にサービス参照のためのコードをハックし、10台のクライアントを作成し、自分のアプリケーションを作ることができます。これらのクライアントは、セッションを存続し、近くには決してし、その後にすべての今calculatorserviceにランダム(非終端)メソッドを呼び出します。

今、明らかに、すべての10回のセッションが取られているので(または最大セッション数があるものは何でも)、誰もがcalculatorserviceにアクセスすることができ、それが完全に遮断されている!

どのように我々はそれから私たちのサービスを保護することができますか?

役に立ちましたか?

解決

あなたが悪意のあるハッカーが偽のセッションを使用してサービスを詰まらせるだろう恐れている場合は、

、その後、セッションを使用しないでください!例えば、「呼単位」のアプローチを使用して、ユーザーを認証彼らはどちらかあなたのWindows / ADドメインにいる、または彼らはあなたのサービスへの呼び出しを行うために、ユーザー名/パスワードの知識を持っていることを確認します。

悪意のあるハッカーがあなたのサービスのための有効なユーザ名/パスワードの組み合わせを取得する必要があり、あなたは常にあなたが10のまたは20の同時要求を送信し、あなたのサービスを詰まらから彼を停止するために多くを行うことはできません - 少なくともないWCFサービスレベルで。 WCFは、浸水や墜落されることからサーバを保護するために、悪質な同時通話の1'000sを防ぐためのサービス絞るの振る舞いを提供します。

お使いのルータ/ファイアウォールで - - WCFサービス実際にそこにあなたを助けることはできません。

。あなたは、特定のIPのか、IPの範囲を離れて維持する必要がある場合は、

、あなたは以前にそのアプローチする必要があります

scroll top