[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

相关推荐
hengdonghui17 小时前
Writeup 4 ByteMe CTF 2026 The Vormir Ledger
ctf·osint
泡海椒19 小时前
从 XML 到 Excel:JQuick-Excel 代理与解析器如何协作
xml·excel
文章永久免费只为良心2 天前
Ctfshow_Web应用安全与防护_第二章_无字母数字命令执行
前端·python·安全·网络安全·渗透测试·ctf·红队渗透测试
流烟默2 天前
Spring Boot 异常响应被序列化为 XML 的排查与修复
xml·spring boot·后端
mmsx2 天前
Android 地图上绘制 KML:解析、样式与渲染
android·xml
不会C语言的男孩2 天前
libxml2 源码编译与 XML 读取验证(x86 / ARM)
xml·c语言·嵌入式
hengdonghui2 天前
Writeup 4 ByteMe CTF 2026 Sacrifice
ctf·forensics
print_Hyon3 天前
【CTF-CRYPTO-教学-RSA】第八节:超大模数n反噬攻击,已知n、e、c求m(n超大,m的e次方仍小于n,c可直接开e次方得到结果)
ctf
其实防守也摸鱼4 天前
CTF Web 6 题全解 Writeup
linux·sql·学习·算法·安全·ctf·xss
泡海椒4 天前
Spring 项目中如何组织 JQuick-Excel 的 XML 与 Bean
xml·spring·excel