【CUMT-BXS】基础部分题解
不解决桥和船的问题,过河就是一句空话。
1. decode
下载得到一个压缩包,解压失败。
用记事本打开,得到一串字符,方向应该没错。
猜测是base64加密,在线解密失败,尝试base16解密,成功,得到flag。
2. 白驹过隙
其实题目已经给了提示:要抓包。
用Burp Suite抓包,放到Repeater中Go一下,得到flag。(状态码是302说明页面发生了跳转)
3. 齐白石
将图片另存为,右键-【属性】,在详细信息中没发现什么。
拖到WinHex中,查找“flag”得到结果(在最后)。
4. encode
一堆奇奇怪怪的东西。
Ctrl + A
全选,Ctrl + C
复制,F12打开【检查】,打开Console,Ctrl + V
粘贴一气呵成,alert出flag。
后来做萌萌哒那题时候了解到,这是一种神奇的JS混淆,而且Chrome控制台可以直接跑。
参见:使用ppencode/rrencode/jjencode/aaencode进行好玩的代码混淆
5. DNS解析
并不需要解析,直接打开那个网址就得到flag了。
6. forfuntoo
F12检查,Network标签下刷新,在index.png中发现了flag。
7. forfun
F12检查,在各个元素中查找“flag”,在index.css中找到。
8. 签到1
打开源代码,注释下提示了base64,把那一串复制下来,在线解密下得到flag。
9. 签到2
F12检查,Network标签下刷新,在php的header中发现了flag。
10. 超简单的密码
键盘,键盘!被那一串字母圈出来的字母连起来就是flag。
11. 滑稽
下载PPT,查看大纲视图,得到flag。
12. Fast
震惊!我居然为了这30分的题目做了一上午。
对网页GET啊POST啊,Python语言知识的缺乏啊。
借鉴了网上几个脚本,拼命查Python urllib啊requests啊GET啊POST啊!
最后在网上扒了个代码,改了改,终于得到了flag!心好累。(fast后的/
不能去,不知原因)
import requests
import base64
url = 'http://web.bxsteam.xyz/fast/'
s = requests.session()
response = s.get(url)
head = response.headers
flag = head['FLAG']
# print(flag)
data = {'key': flag}
result = s.post(url=url, data=data)
print(result.text)
其实前面还写过一个脚本,结果失败了,哭唧唧:
#coding:utf-8
import base64
import requests
from urllib import request
from urllib.parse import urlencode
url = "http://web.bxsteam.xyz//fast"
while True:
rsp = request.urlopen(url)
# print(rsp.read().decode())
header = rsp.info() #info()方法 用来获取网页头部
flag = header.get("flag")
print(flag)
values = {
'param':flag
}
data = urlencode(values).encode('utf-8')
req = request.Request(url,data=data) #POST方法
page = request.urlopen(req).read()
page = page.decode('utf-8')
if 'flag' in page or 'ctf' in page:
print(page)
感受
可能要好好学学Python吧QAQ。
本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自 ComyDream 。
本文链接:http://comydream.github.io/2018/11/18/bxs-basic/