sql >> データベース >  >> RDS >> Mysql

(My)SQLインジェクションを防ぐために、どの文字をエスケープする必要がありますか?

    バックスペース文字に関する推測:「こんにちは、DBを必要に応じて更新するためのクエリです」というメールと添付のテキストファイルを送信するとします

    INSERT INTO students VALUES ("Bobby Tables",12,"abc",3.6);
    

    ファイルをキャットし、問題がないことを確認して、ファイルをMySQLにパイプします。しかし、あなたが知らなかったのは、私が置いたということでした

    DROP TABLE students;\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b
    

    コンソール出力でバックスペースが上書きしたために表示されなかったINSERTSTATEMENTの前。バム!

    ただし、推測です。

    編集(抵抗できませんでした):



    1. PHPMySQLドロップダウンボックスは選択した値を入力します

    2. C#プログラム内でストアドプロシージャを実行する方法

    3. Oracleでプロセスが複数回実行されないようにする最善の方法はありますか?

    4. mysqldumpをロードするより速い方法はありますか?