Posts tagged ‘Security’

文字エンコーディングの検査にはmb_check_encoding関数を利用する。

書式:
bool mb_check_encoding( string $var, string $encoding)

$var → チェック対象の文字列
$string → 比較する文字エンコーディング(省略した場合は、PHPの内部文字エンコーディングとなる)

比較して一致したならば、Trueを返し、一致しない場合はFalseを返す。

PHPのセキュリティ対策例

・Script Insertion(スクリプト挿入)

————————————————————
$string = htmlspecialchars($post_data, ENT_QUOTES, ‘UTF-8’);
————————————————————

・$post_data はブラウザ等で入力されたデータが格納されている。

・htmlspecialcharsの第二引数は指定しない場合は”(ダブルクォート)でエスケープされる。
ダブルクォートでは変数が展開されるため、ENT_QUOTES ( ‘ ) シングルクォートを指定する。

・第三引数は文字コードなので、環境に応じ変更する。