任务1_答题系统服务器

答题系统存在隐藏信息,请找出隐藏信息,并将flag提交。flag 格式:flag{<flag值>}

1.答题系统存在隐藏信息,请找出隐藏信息,并将flag提交。flag 格式:flag{<flag值>}

方法一:
import re 
import requests
# 创建一个session对象。(因为计算出结果后需要再次发送数据,而session对象可以保留会话,第二次发送时带上第一次时的消息头)
s = requests.Session() 
# 访问题目网页,得到内容
r = s.get('http://192.168.14.1/index.php')
# 正则匹配过滤数字和+~x范围内的所有字符,+号代表匹配一个或多个。 
rule = re.compile(r'\d+[+-x]+')
# 将过滤出来的结果放进number_str 
number_str = rule.findall(r.text)[1] 
print(number_str)
# 正则匹配将x替换成*
rec = re.sub("x","*",number_str)
# 前面匹配的时候将=?也匹配进去了,所以从倒数第二位开始计算 
res = eval(rec[:-2])
print(res)
# 使用字典将res对应answer 
data = {'answer': res}
# 访问检查页面,将res放入数据中进行检测,成功则返回flag
r = s.post('http://192.168.14.1/check.php',data=data) 
print(r.text)
方法二:


stop(100000)进行延迟

方法三:
import requests,re
url="http://127.0.0.1/index.php"
DATA_RE=re.compile(r"(.*?)=\?")
s=requests.Session()
content=s.get(url=url).text
n=DATA_RE.search(content).group(0).strip("=?")
n=n.replace("x","*")
data={
    "answer": eval(n)
}
flag=s.post(url="http://127.0.0.1/check.php",data=data).text
print(flag)

Flag:flag{ab786647-19b9-489e-864f-0c06436aa436}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wh1teSu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值