freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

nginx漏洞大全
2021-03-08 09:01:10

nginx漏洞大全

nginx解析漏洞

CVE-2013-4547-nginx文件名逻辑漏洞

影响版本为: Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7

漏洞说明:这个漏洞其实和代码执行没有太大关系,其主要原因是错误地解析了请求的URI,

错误地获取到用户请求的文件名,导致出现权限绕过、代码执行的连带影响。

漏洞测试

环境搭建:

在本地搭建一个nginx:1.4.2的上传页面


漏洞复现过程:

1.首先判断其文件上传的格式为白名单机制,上传一个1.jpg的木马,抓包后进行修改在其后加入一个空格—>1.jpg

然后放包

2.发现其地址

3.构建请求url:http://192.168.127.133:8080/uploadfiles/1.jpgaaaphp

抓包后修改其2进制值将61 61 61 分别改为 20 00 2e

然后放包

由于用户配置不当导致解析漏洞

影响版本:和nginx,php版本无关,这是由于php中的选项cgi.fix_pathinfo的默认值被开启,所以当nginx看到.php结尾的文件就交给了php处理,相当于iis7.5的解析漏洞

漏洞复现

1.上传一张正常的图片马绕过检测

2.然后加/.php这样会发现图片被解析成php代码

%00截断解析

影响版本:0.5,0.6 ,0.7<=0.7.65,0.8<=0.8.37

漏洞原理:php-fastcgi在执行php文件时,url在处理%00空字节与fastcgi处理不一致,使得我们在其他文件插入php代码,访问url+%00.php即可执行其中php代码

CVE-2017-7529 NGINX越界读取缓存漏洞-nginx整数溢出漏洞

漏洞详情:

在nginx作为反向代理服务器,且开启了缓存时,攻击者可以构造恶意的range域,来获取相应的服务器中的缓存文件头部信息,导致敏感的服务器信息泄露

相关文章检索:https://www.freebuf.com/articles/terminal/140402.html

影响版本:Nginx 0.5.6 - 1.13.2

环境搭建

使用脚本 发现其带出部分缓存信息

错误配置

CRLF注入漏洞

原理:CRLF是“回车 + 换行”(\r\n)的简称。在HTTP协议中,HTTP Header与HTTP Body是用两个CRLF分隔的,浏览器就是根据这两个CRLF(使用payload %0a%0d%0a%0d进行测试)来取出HTTP内容并显示出来。所以,一旦我们能够控制HTTP消息头中的字符,注入一些恶意的换行,这样我们就能注入一些会话Cookie(http://www.xx.com%0a%0d%0a%0dSet-cookie:JSPSESSID%3Dxxx)或者HTML代码(http://www.xx.com/?url=%0a%0d%0a%0d<img src=1 onerror=alert("xss")>),所以CRLF Injection又叫HTTP Response Splitting,简称HRS。

目录穿越漏洞

Nginx在配置别名(Alias)的时候,如果忘记加/,将造成一个目录穿越漏洞。

错误的配置文件示例(原本的目的是为了让用户访问到/home/目录下的文件):

location /files {
    alias /home/;
}

Payload:http://your-ip:8081/files../,成功穿越到根目录:

# web安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者