什么是中间件
1 2 3 4 5
| 中间件:是一类能够为一种或多种应用程序合作互通、资源共享,同时还能够为该应用程序提供相关的服务的软件。(注意:中间件是一类软件的总称,不是单独的一个软件)
我们经常管web中间件叫做web服务器或者web容器
正常情况下一次web的访问顺序是:web浏览器---服务器(硬件)---web容器---web应用服务器---数据库服务器。
|
常用的中间件:
ISS、Apache、Nginx、Tomcat、shiro、WebLogic、Jboss、WebSphere等
各中间件漏洞总结:
ISS:
解析漏洞
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| ISS 6.x版本
基于文件名
该版本会默认把.asp;.jpg文件当成.asp文件来执行,原理是服务器默认不解析分号;后面的内容,相当于截断。
基于文件夹名
该版本.asp可以作为文件夹名且会默认将.asp/目录下的所有文件当成Asp文件解析。
该版本配置默认将.asa,.cdx,.cer解析为asp
ISS7.x版本
在fast-cgi运行模式下,在任意文件例如1.jpg后面加上/.php都会将该文件解析为php文件
|
PUT任意文件写入
1
| 在web服务扩展中开启WebDAV后,支持多种请求,配合写入权限可造成任意文件写入。
|
Apache
未知扩展名解析漏洞
1 2 3 4
| Apache对后缀名的解析是从右往左进行的,当遇到未知的后缀名时,会从右往左继续寻找,直到找到合法后缀名从解析,如a.php.xxx会以php文件进行执行。
AddHandler application/x-httpd-php .php 这种情况下,只要文件名中包含.php的后缀,文件就会以php文件解析,.php可以不用是最后一个后缀,可利用这种特性构造文件名绕过上传白名单。
|
Httpd换行解析漏洞
1 2 3
| 影响版本:2.4.0-2.4.29
由于正则表达式不单匹配字符串的结尾位置,也可以匹配\n,\r,因此在解析php时,如1.php\x0A会被按php后缀解析,导致绕过一些服务器的安全策略。
|
Nginx
任意解析漏洞:
1 2
| 小皮面板(8.1.0.4、8.1.0.7)默认配置下存在任意文件解析漏洞:上传图片马,在图片马地址后面加/.php即可执行图片马。 此漏洞为Nginx配置所导致,与Nginx版本无关。
|
空字节任意代码执行漏洞:
1 2
| 影响版本:0.5.*,0.6.*,0.7<=0.7.65,0.8<=0.8.37 若目录下存在一个实际为php文件的a.jpg文件,可通过访问该文件,抓包,修改为a.jpg...php,在hex选项卡中将jpg后的.修改为00即可让文件依旧以php解析。该漏洞不受cgi.fix_pathinfo影响,当其为0时依旧解析。
|
文件名逻辑漏洞
1 2
| 影响版本:0.8.41-1.4.3/1.5.0-1.5.7 实现方法与上一个相类似,访问a.jpg,抓包修改为a.jpg...php,在hex选项卡中修改jpg后的两个点2e为20,00,即可以php文件解析,该漏洞不受cgi.fix_pathinfo影响,当其为0时依旧解析。
|
CRLF注入
1 2 3 4 5 6 7
| 这是一项由于配置不当所导致的漏洞。
Nginx文档有3个表示uri的变量:1.uri 2.document_uri 3.$request_uri
1,2表示解码以后的请求路径,不带参数,3表示的是完整的URI(没有编码)
Nginx会将1,2进行解码,导致传入%0a%0b即可引入换行符,导致CRLF注入漏洞
|
目录穿越
1
| 在配置Nginx别名时忘记加/,导致访问..可穿越至上级目录。
|
目录遍历
1 2
| 当配置文件中,autoindex值设置为on时,将产生目录遍历漏洞。
|
Tomcat
1 2 3
| Tomcat任意文件写入(CVE-2017-12615) 环境:Tomcat/8.0.30 当配置文件/conf/web.xml配置了可写(readonly=false),即可往服务器写文件
|
1 2 3 4 5 6 7 8 9 10 11
| Apache Tomcat远程代码执行(CVE-2019-0232) 影响范围:9.0.0.M1-9.0.17,8.5.0-8.5.39,7.0.0-7.0.93
影响系统:windows
启用了CGI Servlet(默认为关闭),enableCmdLineArguments(Tomcat 9.0.*及官方未来发布版本默认为关闭)
由于JRE将命令行参数传递给Windows的方式存在错误,会导致CGI Servlet受到远程执行代码的攻击。
Tomcat+弱口令&&后台getshell漏洞 影响范围:Apache Tomcat 8
|
评论系统未开启,无法评论!