ホームページ > バックエンド開発 > PHPチュートリアル > PHP で XSS インジェクションを防御する究極のソリューション

PHP で XSS インジェクションを防御する究極のソリューション

藏色散人
リリース: 2023-04-08 07:36:02
転載
3532 人が閲覧しました

XSS インジェクションを防御するための PHP の究極のソリューション [情報セキュリティ] [ハック]

1: PHP が HTML を直接出力する場合、次のメソッドを使用してフィルタリングできます。

1.htmlspecialchars 関数

2.htmlentities 関数

3.HTMLPurifier.auto.php プラグイン

4.RemoveXss 関数 ( Baidu で見つかります)

2: PHP が JS コードに出力する場合、または Json API を開発する場合、フロントエンドは JS でフィルターする必要があります:

1. を使用してみてください。 innerText (IE) と textContent (Firefox)、つまり、テキスト コンテンツを出力するための jQuery の text()

2. innerHTML やその他の関数を使用する必要がある場合は、php の htmlspecialchars と同様のフィルタリングを行う必要があります (「 @eechen さんの回答)

# 3: その他の一般的な補足防御方法

#1. HTML 出力時に、Content Security Policy の Http ヘッダーを追加します

(機能: XSS、サードパーティのスクリプト ファイルの埋め込みなどによるページの攻撃を防ぐことができます)

(欠点: IE 以前のバージョンのブラウザではサポートされていない可能性があります)

2. Cookie を使用する場合の設定で、HttpOnly パラメータを追加します。

(機能: ページが XSS 攻撃を受けた場合に Cookie 情報が盗まれるのを防ぐことができ、IE6 と互換性があります)

(欠点: Web サイト自体の JS コードも Cookie を操作することはできず、機能が制限されています。Cookie のセキュリティのみを確保できます)

3. API を開発する場合は、リクエストの Referer パラメーターを確認してください

(機能: CSRF 攻撃をある程度防ぐことができます。)

(欠点: IE 以前のバージョンのブラウザでは、Referer パラメータが偽造される可能性があります)

PHP の詳細はこちら関連知識については、

PHP チュートリアル をご覧ください。

以上がPHP で XSS インジェクションを防御する究極のソリューションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート