SQLインジェクションを使用した全文検索を使用したADOselectステートメント

Xaphann

接続しているデータベースには、全文検索インデックスを持つテーブルがあります。これは正しく機能します。

select * from MyTable where contains(*, 'value')

WPFでは、その正確なコマンドを送信すると機能します。ただしvalue、ハードコーディングされていないため、ユーザーが入力するものであるため、SQLインジェクションから保護する必要があります。問題は、そうしても結果が返されないことです。これが私のコードです。

DataTable dt = new DataTable();

        string ConString = "Data Source=127.0.0.1,1433;Initial Catalog=MyDB;User Id=sa;Password=amazingSecurePassword;";

        using (SqlConnection con = new SqlConnection(ConString))
        {
            string sqlCMD = "select * from MyTable where contains(*, @s1)"
            SqlCommand cmd = new SqlCommand(sqlCMD, con);
            SqlDataAdapter da = new SqlDataAdapter();

            try
            {
                con.Open();
                cmd = new SqlCommand(sqlCMD, con);
                cmd.Parameters.Add(new SqlParameter("@s1", "value"));

                da.SelectCommand = cmd;
                da.Fill(dt);
                con.Close();

            }
            catch (Exception x)
            {
                //Error logic
            }
            finally
            {
                cmd.Dispose();
                con.Close();
            }
        }

編集:@Mikeコメントが機能しました。SqlDbType.NVarCharを変更すると、問題が修正されました

マイク

上記のコメントで述べたSQlDbTypeようNVarCharに、の作成中に設定するSqlParameter、CLRが適切なデータ型を決定するのに役立ちます。MSDNのSqlParameterコンストラクターに関する詳細情報

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

準備されたステートメントを使用した SQL インジェクション

分類Dev

Linq検索の原則とORステートメントを使用した子コレクション

分類Dev

SQLインジェクションを防ぐためのコードの正しい使用の確認とusingステートメントの正しい使用

分類Dev

インジェクションを使用したNestJSコントローラーのユニットテスト

分類Dev

インジェクションを使用したNestJSコントローラーのユニットテスト

分類Dev

バイナリ検索ツリーを使用したJava returnステートメントロジック

分類Dev

プリペアドステートメントを使用したAJAXによる投稿はSQLインジェクションから安全ですか?

分類Dev

Laravel 5 / Eloquentwhereステートメントを使用してオブジェクトのリレーショナルオブジェクトを検索する

分類Dev

コンストラクターインジェクションを使用したMockito / Springを使用したサービスレイヤーのテスト

分類Dev

ストアドプロシージャ名を使用したSQLインジェクション

分類Dev

SQLインジェクションを使用したストアドプロシージャ

分類Dev

IFステートメントを使用したトランザクション

分類Dev

mysqliを使用したトランザクションステートメント

分類Dev

カスタムアノテーションを使用したGuiceダイナミックインジェクト

分類Dev

「If」ステートメントを使用したmysqlクエリ検索

分類Dev

raw(...)を使用したSQLフォーマット/エスケープインジェクション

分類Dev

アクションバーシャーロックを使用したRobotiumテストプロジェクトの「java.lang.IllegalAccessError」が原因で、インストルメンテーションの実行に失敗しました

分類Dev

golang準備済みステートメントを使用した未加工SQLトランザクション

分類Dev

SOAPAPIを使用したイベントシミュレーションソフトウェアの検索

分類Dev

PHP MySQLiはSELECT用のステートメントを準備しました(SQLインジェクションを回避します)

分類Dev

SQLインジェクションを防ぐために準備されたステートメントを使用して、ユーザー入力からデータベースを作成します。

分類Dev

NULLパラメータを使用したSQLServer全文検索-パフォーマンスヒット

分類Dev

Golangを使用したデータストアエンティティのGAE全文検索API

分類Dev

コンストラクターインジェクションを使用したasp.netMVCコントローラーの単体テスト

分類Dev

Mongodbで地理空間インデックスを使用した全文検索の使用

分類Dev

Angularモジュールでインジェクションを使用したストーリーブック

分類Dev

.NETCoreを使用したオプションのコンストラクタインジェクション引数

分類Dev

COPYでデータをインポートした後、インデックスを使用しないPostgreSQL全文検索

分類Dev

SQLインジェクションJavaを防ぐために、Orderbyのプリペアドステートメントを使用する

Related 関連記事

  1. 1

    準備されたステートメントを使用した SQL インジェクション

  2. 2

    Linq検索の原則とORステートメントを使用した子コレクション

  3. 3

    SQLインジェクションを防ぐためのコードの正しい使用の確認とusingステートメントの正しい使用

  4. 4

    インジェクションを使用したNestJSコントローラーのユニットテスト

  5. 5

    インジェクションを使用したNestJSコントローラーのユニットテスト

  6. 6

    バイナリ検索ツリーを使用したJava returnステートメントロジック

  7. 7

    プリペアドステートメントを使用したAJAXによる投稿はSQLインジェクションから安全ですか?

  8. 8

    Laravel 5 / Eloquentwhereステートメントを使用してオブジェクトのリレーショナルオブジェクトを検索する

  9. 9

    コンストラクターインジェクションを使用したMockito / Springを使用したサービスレイヤーのテスト

  10. 10

    ストアドプロシージャ名を使用したSQLインジェクション

  11. 11

    SQLインジェクションを使用したストアドプロシージャ

  12. 12

    IFステートメントを使用したトランザクション

  13. 13

    mysqliを使用したトランザクションステートメント

  14. 14

    カスタムアノテーションを使用したGuiceダイナミックインジェクト

  15. 15

    「If」ステートメントを使用したmysqlクエリ検索

  16. 16

    raw(...)を使用したSQLフォーマット/エスケープインジェクション

  17. 17

    アクションバーシャーロックを使用したRobotiumテストプロジェクトの「java.lang.IllegalAccessError」が原因で、インストルメンテーションの実行に失敗しました

  18. 18

    golang準備済みステートメントを使用した未加工SQLトランザクション

  19. 19

    SOAPAPIを使用したイベントシミュレーションソフトウェアの検索

  20. 20

    PHP MySQLiはSELECT用のステートメントを準備しました(SQLインジェクションを回避します)

  21. 21

    SQLインジェクションを防ぐために準備されたステートメントを使用して、ユーザー入力からデータベースを作成します。

  22. 22

    NULLパラメータを使用したSQLServer全文検索-パフォーマンスヒット

  23. 23

    Golangを使用したデータストアエンティティのGAE全文検索API

  24. 24

    コンストラクターインジェクションを使用したasp.netMVCコントローラーの単体テスト

  25. 25

    Mongodbで地理空間インデックスを使用した全文検索の使用

  26. 26

    Angularモジュールでインジェクションを使用したストーリーブック

  27. 27

    .NETCoreを使用したオプションのコンストラクタインジェクション引数

  28. 28

    COPYでデータをインポートした後、インデックスを使用しないPostgreSQL全文検索

  29. 29

    SQLインジェクションJavaを防ぐために、Orderbyのプリペアドステートメントを使用する

ホットタグ

アーカイブ