重複の可能性:
PHPでユーザー入力をサニタイズするための最良の方法は何ですか?
最高のPHP入力サニタイズ機能は何ですか?
究極のクリーン/セキュア機能
目標:DBに入力する前に、テキストボックスからのすべての入力を適切にサニタイズし、DBに出力します。私のユースケースでは、データ入力を排除せずに潜在的な問題を防ぐ必要があります。また、不正な形式のエンコーディングの問題を防ぐために、HTTPヘッダーとMETAタグの両方でcharsetが明示的にUTF-8に設定されています。DBもUTF-8に設定されています。
仕様:PHP、MySQL、Apache
サンプルコード:
function secureinput($input)
{
$input = htmlspecialchars($input, ENT_QUOTES ,'UTF-8');
$input = strip_tags($input); //fail-safe for anything that gets through
$input = mysql_real_escape_string($input);
return $input;
}
質問:これはまだどのような攻撃ベクトル(XSS、SQLインジェクションなど)に対して脆弱ですか?
助けてくれる人に感謝します。質問への回答を探すためにいつも最初にSOに目を向けてきましたが、これは私の初めての投稿です。残念ながら、今回は私の問題に答える他の質問を見つけることができず、そのほんの一部しか見つかりませんでした。