CTF中很多需要Python脚本来解决的题目 以前这类题目看到以后就会放弃。
越来越感觉无力,打不动ctf 代码基础不行 而ctf对代码的要求越来越高
暑假准备闭关好好学习一下了
今天抽时间总结一下 ,也顺便巩固了一下Python。
代码写的炒鸡烂 大佬勿喷呀!!!
速度要快
bugku ctf的一道题目
http://123.206.87.240:8002/web6/
查看源代码发现 需要post一个margin参数
抓包查看响应头发现flag字段
是一段base64加密的值 手工解密后发现还需要在解码一次 出现明文
flag的在短时间内会不断变化,我们需要两次解密flag字段 在flag密文没变的情况下把明文post提交方可得到flag。
这尼玛要不用Python 就算是单身一百年也没有用吧。
贴上脚本
1 | import requests |
web 13
ctf论剑场里面的一题 和上题类似
解密Password
之后 POST
提交
还是用Python来写一下
代码都差不多就不贴出来咯 动手打一下印象会更深的吧
web 2
也是ctf论剑场的一题 上星期做了一下这里的web题把需要用Python脚本解的题目都留在今天进行总结。
公式在不停的变化 需要在没有变化之前快速计算出结果并提交
靠手速的话是不可能的
1 | import requests |
运行脚本拿到flag
我怎么感觉这题代码写的好烂呢?
web 20
动态密文。需要在变化之前 把密文通过get传给key
经过测试发现解题脚本是有几率爆出flag的所以我们需要多次尝试
1 | import requests |
天下武功唯快不破
来自实验吧的题目与上面第一题非常相似又比第一题简单
1 | import requests |
第一题写了注释所以这里就不写了 都是一个道理呀!!
秋名山老司机
题目要求两秒钟之内计算出表达式的值
计算出来后通过通过post提交给value参数后可拿到flag
1 | import requests |
正则我写的。。。简直不忍直视 换上一个比较正常的正则
1 | value = re.search(r'(\d+[+\-*])+(\d+)',req) |
不了解正则的可以看一下
火眼金睛
题目链接火眼金睛
文本演示框两秒一更新 需要Python脚本来获取moctf个数后自动提交
总结
上面一些都是我自己经常遇到的一些问题 特意来总结一下 另外说一句 搞安全的代码基础一定要过关。老是吃亏在代码功底上面。本人文笔 水平有限 脚本写的确实lj (没错我自己也发现了 手动滑稽) 大佬勿喷