第五週 †XSS †前週でXSSについて軽く触れました。 XSS対策の基本は、HTMLとして特殊な意味を持つ文字*1のエスケープ*2です。
本講座ではこれ以上は言及しませんが、これらの文字のエスケープのみでは不十分な場合があります。
これらについて興味があれば、「徳丸浩の日記 - XSS - 今こそXSS対策についてまとめよう」などを参照してください なお、phpではhtmlspecialcharsという関数があり、これで上記のメタ文字をエスケープすることができます。
htmlspecialcharsは複数の引数を取ることができます。第一引数のみ必須です。
その他のセキュリティ対策 †本講座で作成するアプリケーションは、「非ログイン状態」かつ「個人情報を扱わない」ので、セキュリティ対策としてXSSのみを扱いました*3。 参考資料などを読み、セキュリティに関する基本的知識を押さえると同時に、セキュリティに関するニュースを追うことが重要です。 宿題 †
をフォームから入力させ、フォームを送信した先のページで次の情報を出力するものを作成してください。
作成するときには(XSSを含む)不正な入力をチェックする仕組みを盛り込んでください。 なお、BMIは次の式で求まります*4。 体重(kg)/(身長(m) * 身長(m)) 体型判定は次の条件で行ってください。
実装のサンプルは次のurlです。 実装完了したファイルは、次の場所に置いてください("y-mahata"は自分のIDに置き換えてください)。 参考資料 † |