teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2017/10/31 04:23

投稿

退会済みユーザー
answer CHANGED
@@ -1,4 +1,28 @@
1
1
  php において、もっとも一般的な XSS 対策は HTML 表示の際に表示データを「text/html な内容」に変換することです。
2
2
  [「何故htmlspecialcharsを通すのか?」を一言でどうぞ](https://qiita.com/mpyw/items/19e6fed835ccdbcb0d6d)
3
3
 
4
- フレームワークを使用していれば、どこかで上記を実施する機構が用意されているので探してみてください。
4
+ フレームワークを使用していれば、どこかで上記を実施する機構が用意されているので探してみてください。
5
+
6
+ **追記**
7
+ サンプルスクリプトを追記します
8
+
9
+ 対応版
10
+ ```php
11
+ <script type="text/javascript">
12
+ var test = 'hoge'
13
+ </script>
14
+ <?php
15
+ $in = '><body/onload=alert(test)>';
16
+ echo htmlspecialchars($in, ENT_QUOTES, 'UTF-8');
17
+ ```
18
+
19
+
20
+ 非対応版
21
+ ```php
22
+ <script type="text/javascript">
23
+ var test = 'hoge'
24
+ </script>
25
+ <?php
26
+ $in = '><body/onload=alert(test)>';
27
+ echo $in;
28
+ ```