0x00 背景

HTTP XSS-Protection响应标头是Internet
Explorer,Chrome和Safari的功能,当页面检测到反射的跨站点脚本(XSS)攻击时,该页面将阻止加载页面。
尽管当站点实施强大的Content-Security-Policy禁止使用内JavaScript(“不安全内联”)时。

在现代浏览器中这些保护在很大程度上是不必要的,但它们仍可以为尚未使用旧版Web浏览器的用户提供保护 支持CSP。

0x01 修复思路

配置XSS-Protection响应标头值

X-XSS-Protection: 0 #禁用XSS过滤。

X-XSS-Protection: 1 #启用XSS过滤(通常是浏览器中的默认设置)。
如果检测到跨站点脚本攻击,则浏览器将对页面进行清理(删除不安全的部分)。

X-XSS-Protection: 1; mode=block #模式=阻止

启用XSS过滤。 如果检测到攻击,浏览器将不呈现页面,而不会清除页面。

X-XSS-Protection: 1; report=<reporting-uri>

1; report = <reporting-URI>(仅支持Chrome浏览器),启用XSS过滤。
如果检测到跨站点脚本攻击,浏览器将清理该页面并报告违规行为。 这使用CSP report-uri指令的功能来发送报告。

0x02 代码修复

推荐配置:X-XSS-Protection: 1; mode=block

Nginx

add_header "X-XSS-Protection" "1; mode=block";

Apache (.htaccess)

<IfModule mod_headers.c>

  Header set X-XSS-Protection "1; mode=block"

</IfModule>

PHP

header("X-XSS-Protection: 1; mode=block");

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信