安全矩阵

 找回密码
 立即注册
搜索
查看: 2115|回复: 0

红队攻防之解析漏洞总结

[复制链接]

180

主题

231

帖子

1176

积分

金牌会员

Rank: 6Rank: 6

积分
1176
发表于 2022-5-2 01:38:42 | 显示全部楼层 |阅读模式
红队攻防之解析漏洞总结

0x00 服务器解析漏洞

服务器解析漏洞一般是服务器自身或扩展组件带来的漏洞,配合文件上传等漏洞就会产生很大的危害。

我们这里整理常见的服务器apache、IIS、nginx的解析漏洞。

0x01 apache一、不可识别解析

apache解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。

比如 test.php.owf.rar “.owf”和”.rar” 这两种后缀是apache不可识别解析,apache就会把wooyun.php.owf.rar解析成php。

apache版本在以下范围内

Apache 2.0.x <= 2.0.59 Apache 2.2.x <= 2.2.17 Apache 2.2.2 <= 2.2.8 都可以通过上传xxx.php.rar或xxx.php+任意无法解析后缀解析为php。

二、配置问题

1.如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 test2.php.jpg 也会以 php 来执行。

2.如果在 Apache 的 conf 里有这样一行配置 AddType application/x-httpd-php .jpg 即使扩展名是 jpg,一样能以 php 方式执行。

三、罕见后缀

Apache配置文件中会有.+.ph(p[345]?|t|tml)此类的正则表达式,被当php程序执行的文件名要符合正则表达式。也就是说php3,php4,php5,pht,phtml等文件后缀也是可以被当作php文件进行解析的。

四、后缀包含换行符\x0A

CVE-2017-15715:Apache 2.4.0-2.4.29中,上传一个后缀末尾包含换行符的文件,来绕过FilesMatch。绕过FilesMatch不一定能被PHP解析。

0x02 IIS一、目录解析

在IIS-6.0的版本,在.asp或.asa文件夹下的所有类型后缀文件全部解析为.asp文件。

存在数据库备份功能的系统并且备份路径可控的话经常会出现这个问题。

二、文件解析

在IIS-6.0的版本,服务器默认不解析;后面的内容,所以xxx.asp;.jpg会被解析成xxx.asp。

三、其他解析类型

在IIS6.0的版本,如下几种文件类型也会被执行。

xxx.asa xxx.cer xxx.cdx

四、php-cgi漏洞

在IIS-7.0和IIS-7.5的版本,在php配置文件中,开启cgi.fix_pathinfo,然后上传一个1.jpg的一句话木马文件。然后用菜刀访问1.jpg/.php即可连接一句话木马。

0x03 nginx一、低版本nginx

空字节代码执行漏洞:nginx 0.5.x、nginx 0.6.x、Nginx 0.7-0.7.65、Nginx 0.8-0.8.37中可以通过在任意文件名后面增加%00.php解析为php,如1.jpg%00.php

二、php-cgi漏洞

和IIS的第四点相同,在php配置文件中,开启了cgi.fix_pathinfo,导致图片马1.jpg可以通过访问1.jpg/.php、1.jpg%00.php解析成php文件

0x04 windows解析漏洞

Windows操作系统中,文件名不能以空格或.开头,也不能以空格或.结尾。

当把一个文件命名为以空格或.开头或结尾时,会自动地去掉开头和结尾处的空格和.。利用此特性,也可能造成文件解析漏洞

0x05 应对

1.对于php-cgi漏洞,可以修改php.ini文件,将cgi.fix_pathinfo的值设置为0

2.使用白名单匹配文件后缀名

3.可以对上传后的文件固定后缀,并对之前的所有字符进行重命名

作者:Leticia's Blog ,详情点击阅读原文。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-3-29 17:08 , Processed in 0.014902 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表