zoukankan      html  css  js  c++  java
  • 11.19 XXE

    XXE

    全称XML External Entity InjectionXML外部实体注入攻击。

    XML是用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。文档结构包括XML声明、DTD文档类型定义(可选)、文档元素。

    Html  标签固定 ,结构:html声明、头部、body  。为了显示数据

    .xml   标签不固定,用户可自定义,结构:XML声明、DTD、文档元素。为了传输数据

    <!DOCTYPE 变量名 [定义的元素]>

    <!ELEMENT 变量名 (定义元素的名称)>

     

     

    xml实体

     

    在一个甚至多个XML文档中频繁使用某一条数据,可以先定义一个这条数据的别名,即一个ENTITY,然后在这些文档需要他的地方调用他。

    分为外部实体、内部实体(来源区分)

    XMl定义了两种ENTITY,一种在XML文档中使用,另一种作为参数在DTD文件中使用。

    定义好的ENTITY在文档中通过“&实体名;”来使用。

    可以把实体当作XML语言的变量。

    实体类型:普通实体、外部实体、参数实体、外部参数实体

    普通实体用&,参数实体用%

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE reset [
    <!ENTITY % a SYSTEM "http://127.0.0.1/test.dtd">
    %a;
    ]>
    <reset>
      <login>&xxe;</login>
      <secret>Any bugs?</secret>
    </reset>

    XXE危害

    使用file读取敏感文件:配置文件、/etc/passwd

    内网服务探测:http://10.10.10.10:80 /22/3306.....来探测端口

    DOS攻击,递归调用,占用系统资源

    无回显(盲型xxe

    使用数据带外技术(OOB),使用类似DNSlog的一些平台

  • 相关阅读:
    Js 验证中文字符长度
    Javascript技巧
    Python GUI编程(Tkinter)
    呆瓜半小时入门python数据分析
    python入门经典_好资源送不停
    pandas.merge数据连接合并
    pandas.DataFrame.sample随机抽样
    kappa系数
    对数损失函数logloss详解和python代码
    信息量_熵_条件熵_相对熵_交叉熵_互信息_信息增益_信息增益比
  • 原文地址:https://www.cnblogs.com/x98339/p/11891040.html
Copyright © 2011-2022 走看看