[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

相关推荐
DavieLau1 天前
C#项目WCF接口暴露调用及SOAP接口请求测试(Python版)
xml·服务器·开发语言·python·c#
Coder_Chang1 天前
hex文件结构速查
ctf
曹牧1 天前
XML头部声明发送者信息的实现方法
xml
寒士obj2 天前
熟悉并使用Spring框架 - XML篇
xml·java·spring
Arva .3 天前
Spring基于XML的自动装配
xml·java·spring
fatfishccc3 天前
循序渐进学 Spring (上):从 IoC/DI 核心原理到 XML 配置实战
xml·java·数据库·spring·intellij-idea·ioc·di
fatfishccc7 天前
【MyBatis新手避坑】详解 `Could not find resource ...Mapper.xml` 错误
xml·intellij-idea·mybatis
helloworld工程师7 天前
Dubbo应用开发之基于xml的第一个Dubbo程序
xml·dubbo·safari
_BlackBeauty8 天前
ctfshow_萌新web9-web15-----rce
ctf·绕过·rce·flag
coding随想10 天前
DOM的XML命名空间革命:从混乱到有序的蜕变
xml