2008/02/07: PHP、MySQLでシステムを組むときのチェックリスト
以下、メモです。
今後、項目数は増減するかもしれません。
・場合によっては入力文字数の制限をかけた方が良い
テスト方法:
500文字ぐらいのテキストを入力してみる
・SQLインジェクション
$str = str_replace( "'", "''", $str );
とするなど、'をエスケープする。
テスト方法:
' OR 't' = 't
と入力してみる。
・MySQLで、LIKE '%HOGE%'のとき検索語に、%や_が含まれる場合
$str = str_replace( "%", "\%", $str );
$str = str_replace( "_", "\_", $str );
とするなど、エスケープする。
テスト方法:
%
と入力してみる。
・"を入力
・"'"'"'"'"などと入力
・\\\\\\\\\\などを入力
・______________などを入力
・半角スペースの連打
・全角スペースの連打
トラックバックURL
今後、項目数は増減するかもしれません。
・場合によっては入力文字数の制限をかけた方が良い
テスト方法:
500文字ぐらいのテキストを入力してみる
・SQLインジェクション
$str = str_replace( "'", "''", $str );
とするなど、'をエスケープする。
テスト方法:
' OR 't' = 't
と入力してみる。
・MySQLで、LIKE '%HOGE%'のとき検索語に、%や_が含まれる場合
$str = str_replace( "%", "\%", $str );
$str = str_replace( "_", "\_", $str );
とするなど、エスケープする。
テスト方法:
%
と入力してみる。
・"を入力
・"'"'"'"'"などと入力
・\\\\\\\\\\などを入力
・______________などを入力
・半角スペースの連打
・全角スペースの連打