中间件漏洞总结

nginx

nginx版本

漏洞

payload

成因

配置问题

 

解析漏洞

 /yxc.jpg/xxx.php/yxc.sec 

 

cgi.fix_pathinfo,该选项默认开启,值为1,用于修理路径的

 

配置问题

 

目录遍历

 

 

修改 C:\phpstudy\nginx\conf\nginx.conf,在下面标示位置中添加 autoindex on ;

 

nginx0.5.*

nginx 0.6.*

nginx 0.7 <- 0.7.65

​nginx 0.8 <- 0.8.37

 

空字节任意代码执行漏洞

 

访问1.jpg,无法访问,所以在URL中输入 1.jpg..php

然后抓包,hex选项下,.hex编码为2e,将第一个2e改为00

 

Nginx在遇到%00空字节时与后端FastCGI处理不一致,导致可以在图片中嵌入PHP代码然后通过访问 xxx.jpg%00.php 来执行其中的代码

 

配置问题

CRLF注入漏洞

 

CRLF注入漏洞

 

Nginx会将 $uri 进行编码,导致传入 %0a%0d 即可引入换行符,造成CRLF注入漏洞

 

nginx 0.8.41 - 1.4.3 / 1.5.0 - 1.5.7

 

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

 

上传1.jpg抓包在后缀名后面加个空格,成功绕过

修改名称为 2.jpg…php ,在hex编码下将jpg后面的两个2e改为2000

 

 

 Nginx 0.5.6 - 1.13.2

 

整数溢出 CVE-2017-7529

 

 

nginxrange filter 中存在整数溢出漏洞,可以通过带有特殊构造的rangeHTTP头的恶意请求引发这个整数溢出漏洞,并导致信息泄露。

 

apache

apache版本 漏洞   payload   成因

 

 未知扩展名解析漏洞    Apache的解析漏洞依赖于一个特性:Apache默认一个文件可以有多个以点分割的后缀,当最右边的后缀无法识别(不在mime.types文件内),则继续向左识别,直到识别到合法后缀才进行解析。

 

 AddHandler导致的解析漏洞    增加了处理器: AddHandler application/x-httpd-php .php 那么,在有多个后缀的情况下,只要一个文件名中含有.php后缀,即被识别成PHP文件,没必要是最后一个后缀。

2.4.0~2.4.29

 Apache HTTPD 换行解析漏洞(CVE-2017-15715)    在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略
2.4.49、2.4.50

cve_2021_41773 目录穿越

cve_2021_42013 RCE

   
posted @ 2023-06-15 16:33  任尔东西南北风  阅读(34)  评论(0编辑  收藏  举报