nginx-安全防护、跨域、XSS攻击、点击劫持攻击

通过nginx失效安全防护

防止跨域-请求头Content-Security-Policy

CSP配置

add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' blob: data: ;";

CSP参数解释

  • default-src 'self':不允许跨源,所有内容均来自网站的自己的域
  • 'unsafe-inline':允许加载 inline 资源,例如style属性、onclick、inline js、inline css等
  • 'unsafe-eval':允许加载动态 js 代码,例如 eval()
  • blob: :允许浏览器中创建和处理二进制数据,Blob对象是一种二进制数据类型,通常,Blob对象用于在浏览器中处理大量的数据或文件
  • data: :允许加载 data: 协议,例如:base64编码的图片

CSP指令

指令值 说明
* 允许加载任何内容
'none' 不允许加载任何内容
'self' 允许加载相同源的内容
www.a.com 允许加载指定域名的资源
*.a.com 允许加载 a.com 任何子域名的资源
https://a.com 允许加载 a.com 的 https 资源
https: 允许加载 https 资源
data: 允许加载 data: 协议,例如:base64编码的图片
'unsafe-inline' 允许加载 inline 资源,例如style属性、onclick、inline js、inline css等
'unsafe-eval' 允许加载动态 js 代码,例如 eval()

防止跨站脚本攻击(XSS)-请求头X-Xss-Protection

配置

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

解释

如果页面中检测到跨站脚本攻击(XSS),浏览器将关闭脚本执行,并显示一个安全提示消息,而不是执行恶意脚本。

跨站脚本攻击(XSS)-请求头X-Content-Type-Options

配置

add_header X-Content-Type-Options nosniff;

解释

当服务器发送一个不包含Content-Type头的响应时,一些浏览器会尝试猜测响应内容的类型。这被称为"sniffing"。

nosniff选项告诉浏览器不要尝试这种猜测,而是始终按照响应的Content-Type头来处理内容。这可以防止某些类型的跨站脚本攻击(XSS)。

防止点击劫持攻击-请求头X-Frame-Options

配置

add_header X-Frame-Options SAMEORIGIN;

解释

用于控制页面是否允许在iframe、embed或object中嵌入。

  • SAMEORIGIN:只允许在相同域名的页面中嵌入。
  • DENY:不允许在任何页面中嵌入。
  • ALLOW-FROM uri:这是一个被弃用的指令,不再适用于现代浏览器,请不要使用它。在支持旧版浏览器时,页面可以在指定来源的 frame 中展示。
相关推荐
core5124 小时前
prometheus+grafana接入nginx实战
nginx·grafana·prometheus·监控·接入·vts·vtx
Immortal__y4 小时前
网络安全初级--搭建
安全·web安全
Rvelamen5 小时前
LLM-SECURITY-PROMPTS大模型提示词攻击测评基准
人工智能·python·安全
凯基迪科技5 小时前
游戏设备软件加密锁复制:技术壁垒与安全博弈
安全·游戏
weixin_472339469 小时前
构建安全密码存储策略:核心原则与最佳实践
安全
Guheyunyi9 小时前
电气安全监测系统:筑牢电气安全防线
大数据·运维·网络·人工智能·安全·架构
冯骐10 小时前
从论文提示词注入看智能体安全
安全·agent
Narutolxy10 小时前
大模型安全建设:破误区、识风险、筑防线20250714
安全
hans汉斯11 小时前
【计算机科学与应用】面向APT攻击调查的溯源图冗余结构压缩
网络·算法·安全·web安全·yolo·目标检测·图搜索算法
PetterHillWater11 小时前
研发安全规范说明书
安全