前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用openrestry动态修复部分漏洞

利用openrestry动态修复部分漏洞

作者头像
Jumbo
发布2024-07-08 12:20:48
1090
发布2024-07-08 12:20:48
举报
文章被收录于专栏:中国白客联盟

背景

安全风险频出,在甲方如何在不影响业务的情况下修复安全漏洞是一个经常苦扰的问题,因为业务优先,业务在跑,安全没太大的权利责令业务停机修复漏洞,当然及其严重的漏洞除外。本文将尝试通过openrestry来动态解决点击劫持漏洞。

点击劫持漏洞介绍

点击劫持漏洞简单讲就是自己构造一个网页,然后用iframe嵌了其他网页,伪造的网页引诱用户点击,当用户点击时实际上是点击到了前面的iframe的网页。找了张网上的图来说明下:

可以拿以下html来测试:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
   <meta charset="UTF-8">
     <title>点击劫持</title>
<style>
  iframe {
    /*窗口的大小*/
    width: 2500px;
    height: 1600px;
    
  
    /*定位绝对位置*/
    position: absolute;
    top: -195px;
    left: -740px;
    z-index: 2;
    
    /* 从视图上隐藏 */
    -moz-opacity: 0.5;
    opacity: 0.5;
    filter: alpha(opacity=0);
    
    }
    
    /*按钮的位置*/
    button{
      position: absolute;
      top: 120px;
      left: 730px;
      z-index: 1;
      width: 100px;
  }
</style>
</head>

     <body>
          <button>test</button>
          <iframe src="https://www.baidu.com"></iframe>
     </body>
</html>

修复方案的话也比较简单,通过设置响应header,添加X-Frame-Options解决。

openrestry安装

安装也很简单,根据官方文档来就行,就不多赘述了: https://openresty.org/en/installation.html

新增lua规则

现在大家多使用openrestry而不纯使用nginx的目的是因为openrestry支持lua脚本,可以自定义很多东西。在针对漏洞修复的情况,也可以依托于openrestry的lua脚本做到“热更新”。 本文中针对点击劫持漏洞,当然也可以通过lua脚本完成,通过lua脚本可以设置给所有经过openrestry的网站都自动添加X-Frame-Options头,而不用让业务各个都改代码。 lua脚本文件内容如下:

代码语言:javascript
复制
ngx.header["X-Frame-Options"] = "DENY"

openrestry配置如下:

代码语言:javascript
复制
lua_code_cache off; # 保证lua脚本修改后无需重启openrestry也可以实时生效              
header_filter_by_lua_file /usr/local/openresty/lua/set_headers.lua; # 设置在响应头过滤阶段执行脚本

这时候再尝试iframe目标网站,发现已经拒绝嵌入了:

curl也可以看到新增的header头:

总结

本文通过openrestry来动态修复了点击劫持漏洞,一些前端漏洞都可以通过此类方法解决,从而解决“业务不配合”的问题,做到“热更新”修复漏洞。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 中国白客联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
脆弱性检测服务
脆弱性检测服务(Vulnerability detection Service,VDS)在理解客户实际需求的情况下,制定符合企业规模的漏洞扫描方案。通过漏洞扫描器对客户指定的计算机系统、网络组件、应用程序进行全面的漏洞检测服务,由腾讯云安全专家对扫描结果进行解读,为您提供专业的漏洞修复建议和指导服务,有效地降低企业资产安全风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档