/*以下例子多来自《web安全深度剖析》,权当记录。*/
一、web容器解析漏洞
IIS解析漏洞(V6.0):
1、当建立*.asa 或*.asp的文件夹时,起目录下的任意文件IIS6.0都当做asp来解析,如下图:
2、当文件以*.asp;1.jpg命名时,IIS6.0同样会当做asp来解析,如下图:
WebDav漏洞:
服务器开启WebDav扩展后,如果支持PUT、Move、Copy、Delete等方法,就可能存在安全隐患。测试步骤如下:
第一步,通过OPTIONS探测服务器支持的HTTP方法。
第二步,通过PUT方法上传脚本文件。
第三步,通过Move或Copy方法改名。
通过这三步,就可以获得webshell ,DELETE方法同理。
Apache解析漏洞:
Apache在解析文件时有一个原则,当碰到不认识的扩展名时,会先前解析,直到碰到认识的扩展名为止;如存在文件为1.php.rar.xx.ko,Apache会首先解析扩展名ko,不认识后尝试解析xx
例子:存在1.php.rar内容如下
Apache解析后显示phpinfo内容:
PHP CGI解析漏洞:
访问http:www.xxx.com/1.jpg/1.php ,其中1.jpg为图片木马而1.php为不存在文件,却可以看到1.jpg按照PHP脚本来解析了
二、绕过上传漏洞
大体分为:中间人重命名、截断上传、修改MIME(Content-Type)
之前总结的:https://www.cnblogs.com/ScriptKid-Lu/p/9684274.html
三、文件编辑器上传漏洞
大体思路:针对文件编辑器特有的缺陷,指定URL,通过拦截修改或构造HTML实现上传
例如 FCKeditor 2.4.2及以下版本可以构造以下html实现上传:(FCKeditor漏洞参考)
<html>
<head>
<title>FCKeditor poc </title>
</head>
<body>
<form action="http://www.XXX.com/FCKeditor/editor/filemanager/upload/php/upload.php?Type=Media" method="post" enctype="multipart/form-data"> <input type="file" name="NewFile"/> <input type="submit" value="提交"/> </form>
</body>
</html>