题目:看看响应头

打开网站,既然已经提示我们看响应头了,那我们就看看呗(习惯bp,也可直接F12查看)

可以看到,响应头部分有个FLAG,而且有提示:please post what you find with parameter:key

所以就将FLAG解码后post,解码之后是:P0ST_THIS_T0_CH4NGE_FL4G:omiFOwSfc

所以post:key=omiFOwSfc

这样再转码,再POST,发现是个死循环,FLAG是随机随机生成的,不管post多少次都拿不到我们要提交的flag。

于是上脚本

#coding:utf-8
import requests
import base64 url = 'http://ctf5.shiyanbar.com/web/10/10.php'
s = requests.Session()
r = s.get(url) #打开网页
head = r.headers #获取http头 f = base64.b64decode(head['flag'])
flag = str(f,encoding='utf-8').split(':')[1]
print(flag) key = {'key':flag}
result = s.post(url,data=key).text
print(result)

也提一下flag = str(f,encoding='utf-8').split(':')[1],这里base64.b64decode()后得到的是byte类型的数据,所以在split时要转成str类型的,下面是两者的转换

 # str to bytes
bytes(s, encoding = "utf8") # bytes to str
str(b, encoding = "utf-8")

 

最新文章

  1. 【MongoDB for Java】Java操作MongoDB
  2. MSMQ创建消息队列出现“工作组安装计算机不支持该操作”
  3. UVALive 7302 (最短路)
  4. Sprint1(11.20)
  5. sonarqube  安装配置
  6. MVC 基础知识
  7. IOS 开发中判断NSString是否为空字符
  8. 264分析两大利器:264VISA和Elecard StreamEye Tools
  9. Android 用MediaCodec实现视频硬解码(转)
  10. 王立平--Unity综上所述控制
  11. QConf简要搭建过程
  12. [luogu P3801] 红色的幻想乡 [线段树][树状数组]
  13. Wrong FS: hdfs://......, expected: file:///
  14. 《深入理解Bootstrap》读书笔记(一)
  15. 活代码LINQ——05
  16. A1141. PAT Ranking of Institutions
  17. springboot更换日志系统
  18. 利用useragent判断移动设备
  19. Steam API调试
  20. jquery ajax 中实现给变量赋值

热门文章

  1. Mybatis框架模糊查询
  2. 本地虚拟机搭建ES集群
  3. LeetCode中等题(一)
  4. Python 矩阵相关
  5. java中二进制反码补码的理解
  6. Day3:关于地形生成
  7. JS实现全选,取消全选,正常选择
  8. 第3节 sqoop:3、sqoop的入门测试使用
  9. 【pwnable.kr】 [simple login]
  10. sql数据库系统表和mysql系统表