练习二-天下武功唯快不破


首先打开题目连接:
http://ctf5.shiyanbar.com/web/10/10.php

界面如下:

练习二-天下武功唯快不破
点击查看源代码:
练习二-天下武功唯快不破
其提示我们查看“响应头”,并以post形式进行提交。
于是我们打开网页的开发者工具,点开network块的headers,我们便能看到一串flag,不过其并不是我们想要的,只是一段base64密文,我们需要对其进行解码。
练习二-天下武功唯快不破
运用解码工具,解码得:P0ST_THIS_T0_CH4NGE_FL4G:fAoncj0a9
提示我们需要将其post方式提交
这时可以用多种方法进行post提交,如

  • 谷歌浏览器的postman插件
  • 直接Windows下载postman,打开应用程序选择post提交
  • 自行写python脚本,用cmd运行也可
    在这里暂且运用第三种方式,脚本内容如下:
import requests
import base64
url = "http://ctf4.shiyanbar.com/web/10.php" # 目标URL
s = requests.Session() # 获取 Session
response = s.get(url) # 打开链接
head = response.headers # 获取响应头
key = base64.b64decode(head['flag']).split(':')[1] # 获取相应头中的Flag
print flag # 打印Flag
postData = {'key': key} # 构造Post请求体
result = s.post(url=url, data=postData) # 利用Post方式发送请求 
print result.text # 打印响应内容

最终得到相应内容:
CTF{Y0U_4R3_1NCR3D1BL3_F4ST!},即flag

相关文章: