实验吧CTF练习题---WEB---FALSE解析

实验吧web之FALSE
flag值:CTF{t3st_th3_Sha1}
 
解题步骤:
1.点开题目链接,观察题意
2.题目提示可以用sha1函数,也可以用MD5碰撞,通过题意判断可以使用sha1函数获取flag值,也可以用MD5获取flag值,进入解题链接
3.进入解题链接后,发现是个登录界面,我们查看源代码后并没有发现什么问题,于是点击View the source code查看php代码,确定其中包含的信息
4.在这段源码中可以看出点,再下面列出
1----如果名字等于密码就输出:你的名字不能和密码一样
2----如果名字的哈希值等于密码的哈希值:输出flag值
5.从而判断,如果想要获取flag值,那么就必须上传两个值,但是值不能相等,却要让哈希值相等,但实际上是不存在两个不相等的值通过计算使哈希值变成相等的。于是我们可以使用SHA函数的一个漏洞,该函数默认传输数据类型是字符串型,那么我们就可以传输其他类型的数据,比如数组等。这样就可以通过更改URL来获取flag值了。在地址栏输入,如下图
6.按回车进行下一步发现flag值已经出现在界面上,提交就可以了
7.提交成功
 
 
附加知识点:
1----  == : 比较运算符号  不会检查条件式的表达式的类型
2----  ===:  恒等计算符 , 同时检查表达式的值与类型。(会检查表达式类型,如bool)
 

posted @ 2019-09-05 11:28  Redhskb  阅读(363)  评论(0编辑  收藏  举报