Nginx安全加固系列:防范XSS

XSS,就是跨站脚本攻击。就是浏览器渲染HTML的过程中,执行了不被预期的脚本指令,XSS就发生了。

所以,XSS就是一种HTML注入攻击,就是在我们的HTML页面上注入了恶意代码。最典型的就是在发表评论这些页面,在发表的文字内容里携带了恶意的HTML代码,例如在发表的内容里面携带了这么一段代码:

复制代码
<script>alert(document.cookie);</script>

如果不对用户发表的内容文字做安全扫描,那么上面的这段代码就成功嵌入到页面当中。当浏览器访问这个页面的时候,这段脚本也将被认为是页面的一部分,从而得到执行,就会弹出对话框显示浏览器的Cookie信息。

这就是XSS攻击的原理

防止XSS攻击需要做很多措施,Nginx添加响应头,是其中的一种措施,但这个并不代表能完全防止XSS攻击。

Nginx通过以下配置,可以添加防止XSS的响应头

复制代码
http {
  add_header X-XSS-Protection "1; mode=block";
}

解释一下这个配置, add_header是Nginx添加响应头的命令,X-XSS-Protection是防止XSS攻击的响应头,它有几个参数值:

复制代码
值 1 :启用XSS过滤器
值 0:禁用XSS过滤器

mode 参数可以配置过滤器行为。
block: 如果检测到XSS攻击,直接阻止页面加载。
report=<reporting-URI>: 如果检测到XSS攻击,将报告发送到指定的URI。

看一下百度,它也是配置了X-XSS-Protection响应标头

相关推荐
mounter6254 小时前
统一安全域:KVM Planes 如何驾驭硬件特权级
linux·安全·linux kernel·kernel
sbjdhjd4 小时前
ThinkPHP 5.0.10 缓存写入型 RCE 复盘:从手动搭建、换行绕过到源码单步验证 | 05
java·后端·安全·spring·网络安全·数据挖掘·php
沃夫上校4 小时前
跨域这件事,其实浏览器在替你挡刀
前端·后端·nginx
QXWZ_IA6 小时前
电力作业安全管控如何从人防走向技防智防?智能工器具体系解析
人工智能·科技·安全
小程序设计7 小时前
校园网络资产自动探测与安全状态评估系统设计与实现
网络·安全
小程序设计7 小时前
电力大模型输出内容安全风险评估和控制系统
安全
Wang's Blog8 小时前
Java框架快速入门: Spring Security+OAuth2之前端按钮级安全与路由守卫
java·安全·spring
天涯浪客8 小时前
Python sys.meta_path 实战:用 Import Hook 给 os.system / eval 装拦截器
安全
judezh8 小时前
验证一个容器镜像到底在验什么?我把自家 v1.0.0 的签名从注册表一路扒到了证书里
安全·开源
样子20188 小时前
Js 之根据白名单过滤 HTML(防止 XSS 攻击)
android·前端·javascript·html·xss