私はこの方法で訪問者のIPを取得していますRequest.UserHostAddress.ToString()
なりすましやSQLインジェクションに使用される可能性はありますか?リスクと可能性は何ですか。ありがとうございました。
asp.net 4.0、c#4.0、IIS 7.5
いいえ。IPはWebサーバーのソケットからのものです。なりすましはできません(複数のリクエストの場合)。IPがスプーフィングされた場合、クライアントはサーバーに要求を送信することしかできず、応答は表示されません。
SQLステートメントで直接使用されたとしても、SQLインジェクションでどのように使用できるかわかりません。偽物であってもIPアドレスであり、SQLコードにはなり得ません。
まとめ:
なりすまし:ユーザーがサイト内を移動する必要がある場合(複数のページ呼び出しを行う)。次に、彼のIPは正しい必要があります(なりすましではありません)。
インジェクション:ユーザーはUserHostAddressに値を入力することはできません。IPアドレスである必要があるため、SQLステートメントにインジェクションしても害はありません。
IPアドレス自体はなりすましの可能性がありますが、ほとんどありません。
SQLインジェクションには使用できません。