コードをコピーします コードは次のとおりです:
echo("
クエリの検索結果:")
$_GET['query'].".
?>
このコードの主な問題は、ユーザーが送信したデータを Web ページに直接表示するため、XSS 脆弱性が生じることです。実はこの穴を埋める方法はたくさんあります。では、どのようなコードが必要なのでしょうか?
コードをコピーします コードは次のとおりです:
echo("
クエリの検索結果:")
htmlspecialchars($_GET['query'])。 p>";
?>
これは最小要件です。 XSS の脆弱性は htmlspecialchars 関数によって埋められ、不正な文字がブロックされました。
コードをコピーします コードは次のとおりです:
if(isset($_GET['query']))
echo'
クエリの検索結果:',
htmlspecialchars($ _GET['query'],ENT_QUOTES).'.
'
?>
そのようなコードを書ける人こそ私が雇いたい人です:
**出力する前に$_GET['query']の値が空かどうかを確認してください。
*echo コマンド内の余分な括弧は削除されました。
* 文字列は一重引用符で修飾されるため、文字列から置換可能な変数を検索する際の PHP 時間が節約されます。
* エコー時間を節約するには、ピリオドの代わりにカンマを使用します。
* ENT_QUOTES フラグを htmlspecialchars 関数に渡して、一重引用符もエスケープされるようにします。これは最も重要なことではありませんが、良い習慣でもあります。
http://www.bkjia.com/PHPjc/321134.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/321134.html技術記事次のようにコードをコピーします: ? echo("psearch results for query:"). $_GET['query']."./p";ウェブページから...