一:什么是服务器?
服务器系统(server system)通常来讲是指安装在服务器上的操作系统,比如安装在Web服务器、应用服务器和数据库服务器等上的操作系统,是企业IT系统的基础架构平台,也是按应用领域划分的3类操作系统之一(另外2种分别是桌面操作系统和嵌入式操作系统)。同时,服务器操作系统也可以安装在个人电脑上。相比个人版操作系统,在一个具体的网络中,服务器操作系统要承担额外的管理、配置、稳定、安全等功能,处于每个网络中的心脏部位。 ——源自百度百科
二:服务器系统有哪几种?
服务器系统可分为windows,linux,unix,netware
*前面的两个是主流,可能大多数人都听说过unix,但是netware是什么?其实呢,Netware就是是一个开放的网络服务器平台,可以方便用户对其进行扩充,依赖的硬件要求小,但是几乎不常见*
三:什么是解析漏洞?
可以理解为是以其他格式执行出脚本格式的效果。
四:产生的条件:
一个是跟服务器的容器有关,一个是跟服务器的命名规则有关
五:各类解析漏洞
1.x-6.x解析漏洞:
这个漏洞只能解析asp,不能解析aspx。一般使用iis5.x-6.0的大多是windows sever 2003,网站开发的语句一般也都是asp。
(1):文件解析
格式:形式:www.xxx.com/x-ing.asp;.jpg
漏洞分析: 在iis6.0下,分号后面的不被解析。这样上传上去,如果不被重命名,解析的时候会自动过滤分号后边的字符,这样你访问***.asp;1.jpg,就相当于你在访问***.asp。但是不能在地址栏直接访问***.asp,因为这个文件是不存在的。还有也图片不能被重命名,一旦被重命名,就失去了***.asp;1.jpg这样的结构,就不会被解析成为asp文件,而是解析成为图片文件。
(2):解析文件类型:
IIS6.0 默认的可执行文件除了asp还包含了以asa,cer,cdx为后缀的文件,也就是说,他们会默认将其执行为asp文件
(3):目录解析(6.0)
这个漏洞只适用于iis版本为6.0
漏洞分析:在网站下建立文件夹的名字为xxxxx.asp、xxxxx.asa的文件夹其目录内的任何扩展名的文件都被iis当作asp文件来解析并执行。
例如:在www下创建x-ing.asp文件夹,那么在文件夹中放入一个1.jpg的一句话(/x-ing.asp/1.jpg)将被当作asp的文件来执行
2.IIS 7.0/IIS 7.5/ Nginx <8.03畸形解析漏洞:
由于PHP配置文件中,开启了cgi.fix_pathinfo,通过上传一个名字为x-ing.jpg,内容为');?> 的文件,然后访问x-ing.jpg/.php,在这个目录下就会生成一句话木马 shell.php
2.Nginx <8.03 空字节代码执行漏洞
影响版:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37
Nginx在图片中嵌入PHP代码然后通过访问
x-ing.jpg%00.php
来执行其中的代码
3.apache解析漏洞
Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。比如test.php.qwe.asd “.qwe”和”.asd” 这两种后缀是apache不可识别解析,apache就会把wooyun.php.qwe.asd解析成php, 如何判断是不是合法的后缀就是这个漏洞的利用关键,测试时可以尝试上传一个x-ing.php.rara.jpg.png…(把你知道的常见后缀都写上…)去测试是否是合法后缀
漏洞形式:
www.xxxx.xxx.com/x-ing.php.php123
其余配置问题导致漏洞
(1)如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 x-ing2.php.jpg 也会以 php 来执行。
(2)如果在 Apache 的 conf 里有这样一行配置 AddType application/x-httpd-php .jpg 即使扩展名是 jpg,一样能以php 方式执行。
4.其他解析漏洞
在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的,若这样命名,windows会默认除去空格或点,黑客可以通过抓包,在文件名后加一个空格或者点绕过黑名单。
若上传成功,空格和点都会被windows自动消除,这样也可以getshell。
如果在Apache中.htaccess可被执行.且可被上传.那可以尝试在.htaccess中写入:
<FilesMatch "sec.jpg"> SetHandler application/x-httpd-php </FilesMatch>
然后再上传shell.jpg的木马, 这样shell.jpg就可解析为php文件。
总结:
IIS6.0(x和脚本格式可以自定义,x-ing是我的名字,只是为了不让别人抄袭,不要误会了呦!)
文件命名形式:
触发解析漏洞命名:www.xxx.com/x-ing.asp;.jpg或 x-ing.asp;.x.jpg
文件夹命名形式:
正常命名:www.xxx.com/images/x-ing.jpg
触发解析漏洞命名:www.xxx.com/image.asp/x-ing.jpg
IIS7.X(x自定义,只能执行php)
触发解析漏洞命名:www.xxx.com/x-ing.jpg/x.php
Apache(xxxx代表任意后缀,向上识别解析)
触发解析漏洞命名:www.xxx.com/x-ing.php.xxxx
Nginx同iis7.x一致
转载自http://www.qyh1028.com/?p=104 by x-ing
博客地址:qyh1028.com