这个writeup只是为了方便我自己理解所有题目,官方的通常都是跳过原理直接过程以及结果。
学了两礼拜 第一次做ctf 37题能做15题我觉得还不错
A dark room
挺好玩的一个文字游戏 想跳过可以直接F12 或者右键-inspect 直接看网页源码
FLAG: BaseCTF{b53e5398-0fa6-473f-b447-fba829baadd4}
HTTP 是什么
简单来说截包,然后重新编辑包,再发送出去
这里的知识点
GET- 不能有body
POST-可以有body
工具我们用Burpsuite
这里截取了包,之前说过GET 是没有body ,而POST可以有body
那我们把request method 改成POST 再把参数传进去
、
GET参数因为不能放body可以直接放query
Cookie 可以直接加到cookie的地方
剩下的可以跟着改,我们把User-Agent 改成Base ,另外再加个referer Header , 然后把IP地址改一下
这里就大功告成
发完之后下一个包就是flag,用base解密一下然后你就能拿到key了
MD5绕过哎
这个比较容易 做的时候网上稍微搜了一下
MD5 有两种比较 弱比较以及强比较
弱比较 ==
强比较 ===
虽说有弱和强但是都是挺容易的
弱-只需要构造出MD5值为0e开头的字符串,这样的话弱类型比较会认为是科学技术法,0的多少次方都是0,因此可以绕过
强-0e用不了 这个时候只要用数组就可 比如 string[]=1&string[]=2 这样子全部传回值就是null
通常这些题我喜欢一点一点做 从代码开头做下去
这里要求是name,password,name2,password2全赋值了
所以我们用burpsuite 来传入那些值
放到了repeater 然后传入随便数值 这里我们看到回显是错了错了 而不是没看到参数, 这就说明第一条代码的条件已经符合了
现在我们来看第二条代码
这里是个弱md5
所以我们可以用0e数值来赋值
赋值后可以发现回显是再看看 证明第二个条件符合了
然后来看看第三个
是个强md5
这个时候就要用数组了
我们可以看到flag已经显示出来了
还有34个writeup 等会补上