[NCTF2019]Fake XML cookbook1

提示

  1. xml注入

一般遇到像登录页之类的就因该想到sql注入、弱口令或者xml等

随便输入抓包

这里明显就是xml注入

这里我们来简单了解一下xml注入

这里是普通的xml注入

xml注入其实和sql注入类似,利用了xml的解析机制如果系统没有将'<''>'进行转义,那么攻击者就可以修改或者添加xml信息

例如:

这里是正常的注册的xml

<?xml version="1.0" encoding="UTF-8" ?>

<user role="guest">用户输入</user>

假如我添加一个呢,这样是否就将我们输入的用户名变成了权限

<?xml version="1.0" encoding="UTF-8" ?>

<user role="guest">用户输入</user>

<user role="admin">输入</user>

xml外部实体注入

大概意思呢就是程序在解析的时候同时也把攻击者构造的外部实体也解析了

XML声明:<?xml version="1.0" encoding="utf-8" ?>

内部DTD声明:<!DOCTYPE 根元素名称 元素声明>

在DTD中定义属性:<!ATTLIST 元素名 (属性名 属性类型 缺省值)*>

外部实体声明:<!ELEMENT 实体名称 SYSTEM "URI/URL">

构造payload尝试注入

&admin;这里的admin类似于css中的id和class,资源定位器,和<!ENTITY admin这里的admin相对应

得到passwd里的信息,直接读flag

获得flag

相关推荐
田里的水稻1 天前
EP_XML\JSON配置文件和YAML
xml·运维·人工智能·机器人·自动驾驶·json
xiangji2 天前
开源完美模块组件化可扩展的Xml解析器Hand.ParseXml
xml·模块化·组件化·可扩展
print_Hyon2 天前
【CTF-MISC-压缩包】bkcrake通过已知明文文件攻击来破解加密的压缩包
ctf
我命由我123454 天前
Android 构建项目问题:XML 片段出错,com.ctc.wstx.exc.WstxUnexpectedCharException
android·xml·android studio·android jetpack·android-studio·android runtime
PixelBai5 天前
JSON转XML使用教程:从入门到精通
xml·json
脑子运行超载7 天前
Jackson处理和mybatis的xml转换问题
xml·jackson·mybatis·javatype
tianyuanwo23 天前
深入解析 RISC-V 虚拟化中的 UEFI 固件配置:从 XML 到 NVRAM 的生命周期管理
xml·linux·risc-v
糖果店的幽灵1 个月前
软件测试接口测试从入门到精通:常见接口类型与数据格式
xml·软件测试·json·接口测试·数据格式
摇滚侠1 个月前
SpringMVC 入门到实战 配置类替换 XML 配置文件 86-91
xml·java·后端·spring·maven·intellij-idea
就叫_这个吧1 个月前
IDEA Mybatis xml文件,实现sql语句联想,自动填入补充
xml·mysql·intellij-idea·mybatis