2011-12-30 8 views
1

私は、ユーザーの入力をチェックし、この種のすべての攻撃から防御するかどうかを知りたいという機能を持っています。また、必要な各ページにこの関数を追加したい場合は、それを独自のPHPページに入れて、include()する必要があるページに挿入することができます。ありがとう。phpでユーザ入力を正しくチェックするには?

function secure_data($value) 
{ 
if (get_magic_quotes_gpc()) { 
    $value = stripslashes($value); 
} 
if (function_exists("mysql_real_escape_string")) { 
    $value = mysql_real_escape_string($value); 
} else { 
    $value = addslashes($value); 
} 
return $value; 
} 
+0

あなたの質問の鍵は、「この種の攻撃」の意味を説明することにあります。どのような種類がわかっていれば、それらを守る方法をよりよく研究することができます。 – Arend

+0

何を保護しようとしていますか? SQLインジェクションから保護しようとしているように見えるかもしれません。そうであれば、PDOを使用してください。 –

答えて

2

あなたは引用符を使用しているので、誤解されていない限り、あなたの主な質問はSQLインジェクションからの保護方法であると仮定しています。 (注:SQLインジェクションからの保護は、クロスサイトスクリプティングなどのセキュリティを確保するためのものです。安全なアプリケーションを保証するものではありません。

SQLインジェクションの最適なソリューションは、この関数を使用するのではなく、mysqliまたはPDOでプリペアドステートメントを使用することです。 (参照:How can I prevent SQL injection in PHP?)を

その他の興味深いリンク:SQLインジェクションの

背景情報:

その他の検証:OWASPから http://www.faqs.org/docs/gazette/superglobals.html

入力検証: https://www.owasp.org/index.php/Input_Validation

関連する問題