MySQL インジェクションおよびクロスサイト スクリプティングに対する効果的な防御
これらのセキュリティ脆弱性から保護する場合は、包括的なアプローチを採用することが重要です。無計画な試み。提供された機能は、問題にパッチを適用しようとしていますが、最適な防御には達していません。
推奨されるベスト プラクティス
これらの攻撃を効果的に防御するには、次のプラクティスの実装を検討してください。
-
マジック クオートを無効にする: マジック クオートは不完全でわかりにくい解決策を提供するため、無効にします。
-
バインドされたパラメーターまたはエスケープ文字列を使用する: SQL クエリを作成するときは、必ずバインドされたパラメーターを使用してください。文字列連結を使用する場合は、適切なエスケープのために mysql_real_escape_string を使用します。
-
データベース出力のエスケープ解除を避ける: データベースから取得した値のエスケープ解除 (ストリップスラッシュの使用など) を控えます。
-
デフォルトで HTML をエスケープ: HTML に文字列を埋め込む場合、ENT_QUOTES を含む htmlentities を使用して文字列をエスケープすることをデフォルトの習慣にしてください。
-
信頼できない HTML 入力のフィルター: 信頼できない HTML ソースの場合HTML に埋め込まれている場合は、strip_tags などの基本的な手法ではなく、HtmlPurifier などの適切なフィルターを使用します。
追加リソース
さらに詳しい情報については、次のリソースを参照してください。
- [PHP でユーザー入力をサニタイズする最適な方法は何ですか?](リンク)
以上がMySQL アプリケーションをインジェクション攻撃や XSS 攻撃から保護するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。