X-XSS-Protection
browserの
XSS Filter
を有効にする
Reflected XSS
を検知した場合にページの読み込みを停止する
古いBrowserをサポートする必要がないのなら、
unsafe-inline
を使ったほうがいい
CSPの一部機能の前身みたいな感じなのかな
mrsekut.icon
mdn
X-XSS-Protection: 0
XSS Filterを無効にする
X-XSS-Protection: 1
XSSを検知したら、該当部分を取り除く
X-XSS-Protection: 1; mode=block
XSSを検知したら、renderingを停止する
X-XSS-Protection: 1; report=<reporting-uri>
参考
https://github.com/helmetjs/helmet/issues/230
Helmet
での議論
default値をどれにするか問題がある
0
にすると、無効になるので、普通にXSS攻撃を受け得る
1
にすると、XSS Filterするが、
XS-Leaks
の攻撃を受け得る
最終的には、BrowserのXSS Filterの実装にバグがあるから、
X-XSS-Protection: 0
にしようぜという感じになっている