2
  • SQL インジェクションの検出に役立つライブラリの使用を検討しています。

    • sprocs とパラメーター化されたステートメントを使用していますが、この投稿のために、ユーザー入力を検出/検証する一部のライブラリのみを使用しています。

一番いいのは?実装が最も簡単ですか?更新/管理が最も簡単ですか? どちらかを優先するのはなぜですか?

余談ですが:

Owaspを使い始めたばかりです。C#で。検証中にデフォルトのルールが増えることを期待していました。isValid 関数を使用する場合、デフォルトのルールは 5 つだけです。

CREDIT_CARD -- クレジット カード検証ルールのルール名キー。DATE -- 日付検証ルールのルール名キー。DOUBLE -- 二重検証ルールのルール名キー。INTEGER -- 整数検証ルールのルール名キー。PRINTABLE -- 印刷可能な検証ルールのルール名キー。

文字列 SQL インジェクション検出のデフォルト ルールが増えることを期待していました。

ありがとう

4

2 に答える 2

4

ストアド プロシージャを使用することは、正しい方向へのかなり大きな一歩です。それに追加したいのは、OWASP ESAPI ライブラリを使用して実行しようとしているように見える入力検証ですが、ほとんどの場合、正規表現で実装するのは非常に簡単です。ほとんどの信頼できないデータについては、公開されているパターンを多数見つける必要があります。

もう 1 つの方法は、データ層で最小特権の原則を適用することです。複数の SQL アカウントを使用し、公開ユーザーが使用するアカウントへのアクセスを最小限の機能に制限することを検討してください。ストアド プロシージャを使用しています。まだ行っていない場合は、データリーダーまたはデータリーダーの権利を回避してみてください。

詳細については、.NET 開発者向けの OWASP トップ 10 のパート 1: インジェクションを参照してください。

于 2010-05-25T21:34:13.213 に答える
1

ユーザー入力の検証に AntiXSS を使用しています。具体的には、SQL インジェクションに対する保護を含みます。いくつかの攻撃を見てきましたが、何もうまくいきませんでした。

また、トロイは彼が話していることを知っています - このテーマに関する彼の記事は本当に良いものです:)

于 2010-10-08T03:03:26.537 に答える