温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Nginx/OpenResty内存泄漏案例分析

发布时间:2021-12-10 17:34:13 来源:亿速云 阅读:615 作者:iii 栏目:大数据

这篇文章主要介绍“Nginx/OpenResty内存泄漏案例分析”,在日常操作中,相信很多人在Nginx/OpenResty内存泄漏案例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Nginx/OpenResty内存泄漏案例分析”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

0x00 漏洞背景

2020年03月18日, 360CERT监测发现 openwall oss-security 邮件组披露了两枚漏洞。在特定配置下 nginx/openresty 存在 内存泄漏漏洞/目录穿越漏洞。

Nginx 是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。

OpenResty是一个基于nginx的Web平台,它对nginx增加LuaJIT引擎使其运行Lua脚本。

该两枚漏洞均需要特定配置方可触发

0x01 风险等级

360CERT对该漏洞进行评定

评定方式等级
威胁等级中危
影响面一般

360CERT建议广大用户及时更新 nginx/openresty/lua-nignx-module。做好资产 自查/自检/预防 工作,以免遭受攻击。

0x02 漏洞证明

测试环境配置如下

系统 osx 10.15.3

Nginx/OpenResty内存泄漏案例分析

部分组件非必须,测试过程仅依照安装指引默认安装。

相关配置片段

# memleak
location ~ /memleak {
   rewrite_by_lua_block {
       ngx.req.read_body();
       local args, err = ngx.req.get_post_args();
       ngx.req.set_uri( args["url"], true );
   }
}

# directory traversal
location ~ /rewrite {
   rewrite ^.*$ $arg_x;
}

以下图示为 Nginx 开启 lua-nginx-module

内存泄漏证明

Nginx/OpenResty内存泄漏案例分析

目录穿越证明

Nginx/OpenResty内存泄漏案例分析

0x03 影响版本

nginx <= v1.17.7 (commit af8ea176a743e97d767b3e1439d549b52dd0367a)

openresty <= v1.15.8.2

0x04 修复建议

nginx 用户更新到 v1.17.9 或应用 commit a5895eb502747f396d3901a948834cd87d5fb0c3

openresty 用户排查配置文件中 rewrite 以及 ngx.req.set_uri 建议临时禁用相关配置

0x05 相关空间测绘数据

nginx 分布如下图所示

Nginx/OpenResty内存泄漏案例分析

openresty 分布如下图所示

Nginx/OpenResty内存泄漏案例分析

0x06 产品侧解决方案

360城市级网络安全监测服务

360安全大脑的QUAKE资产测绘平台通过资产测绘技术手段,对该类 漏洞/事件 进行监测,请用户联系相关产品区域负责人获取对应产品。

到此,关于“Nginx/OpenResty内存泄漏案例分析”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI