$acl = preg_replace('/[^ぁ-んァ-ンーa-zA-Z0-9一-0-9\-\r]+/u'
,” ,$_POST[‘acl’]);
特殊記号の排除
別のプログラムに与えるパラメータに用いる文字種を英数字のみ等安全なものに限定し、検査してから渡す。
bashの場合、次の特殊記号は別コマンドの実行に使われるものとして特に警戒する。
「;」「|」「&」「`」「(」「)」
また、次の特殊記号もファイルへのアクセスが起こったりコマンドの意味が変わり得るので警戒する。
「$」「<」「>」「*」「?」「{」「}」「[」「]」「!」