1.あなたのプログラムがデータベースに接続するために使っているアカウント/パスワード/パーミッションニュースを閲覧しているなら、あなたは読み取り専用パーミッションを使うことができます;あなたは異なるモジュールにそれを使うことができます。異なるアカウント/パーミッション;さらに、データベースストアドプロシージャを呼び出すことができますが、注入後にデータベースストアドプロシージャを使用するシステムコールを防ぐために、すべて無効(特にcmd)にすることもできません。 Br>

2、クライアントから送信されたパラメータを取得するときは、パラメータ長、パラメータタイプなどを含む厳密なフィルタリングを実行します。

3.条件が許せば、管理者の背景に対する厳密な保護特定のIPアクセスのみを許可するように設定する必要があります(たとえば、管理者ネットワークセグメントアクセスのみを許可する) - これは実際の状況に基づく必要があります。

4、インジェクションを防ぐためのオペレーティングシステムのセキュリティ設定たとえば、システムの機能を呼び出した後、

cmd.exe /tftp.exe /ftp.exe /net.exeを実行します。

他のディレクトリに移動し、そのディレクトリに厳密な権限を割り当てます。

5、ネットワークアクセス制御を設定します。

6.可能であれば、HTTP用のコンテンツフィルタ、ウイルス、悪意のあるスクリプトのフィルタを設定します。等、

7、必要に応じて、あなたはHTTPSの選択を考慮することができます、これは多くのインジェクションツールのスキャンを防ぐことができます、私はインジェクション検出ツールを開発するために使用しますそれを実践に移しなさい。

一般的に、プログラムは主にパーミッション、パラメータフィルタリング、その他の問題を考慮します;パーミッションは主にIISの閲覧パーミッション、データベース呼び出しパーミッションを含みます。さらに、データベースとオペレーティングシステムのセキュリティ構成を検討してください。また、画像のアップロードなど、開発過程で他の人が開発したコンポーネントを使用するかどうかもわかりませんが、そのようなコンポーネントのセキュリティについて検討したことはありますか?それとも開発プロセスで使用します。このようなユーザーのログイン確認などの本の中で、インターネット上で提供されているオープンコード、これらの公開コード、またそのセキュリティ問題を研究する。

Copyright © Windowsの知識 All Rights Reserved