使用X-FRAME-OPTIONS保护Nginx免受点击劫持

在HTTP头中添加X-Frame-Options以保护NGINX免受点击劫持攻击

Clickjacking是一个众所周知的Web应用程序漏洞。

在我上一篇文章中,我谈到了如何保护Apache Web Server, IBM HTTP Server & .htaccess,有些人问到了Nginx。

所以这里是…

在HTTP响应头中,X-Frame-Options可以用来指示浏览器是否应该允许在frame或iframe中打开页面。

这将阻止将网站内容嵌入到其他网站中。

你有没有试过将Google.com作为一个frame嵌入到你的网站上?你不能,因为它是受保护的,而你也可以保护它。

X-Frame-Options有三个设置:

  1. SAMEORIGIN:该设置将允许页面在与页面本身相同的源上显示在frame中。
  2. DENY:该设置将防止页面在frame或iframe中显示。
  3. ALLOW-FROM URI:该设置将只允许在指定的源上显示页面。

注意:你也可以尝试使用CSP frame-ancestors来控制嵌入的内容。

实施

  • 进入Nginx安装位置下的conf文件夹
  • 在修改之前进行备份
  • nginx.conf的server部分中添加以下参数
add_header X-Frame-Options "SAMEORIGIN";
  • 重启Nginx服务器

验证

你可以使用浏览器中的Web开发者工具来查看响应头。它应该看起来像这样。

另外,你也可以使用HTTP Header online tool来验证这个。

希望这对你有所帮助。欲了解更多关于安全性的内容,请查看我的Nginx Hardening & Security guide

这只是一个网站的数百个安全修复之一。如果你正在寻找一个完整的安全解决方案,你可以考虑云安全提供商如SUCURI或Cloudflare。

类似文章