Day20

flag.php


地址:http://123.206.87.240:8002/flagphp/
  点了login咋没反应 提示:hint  Bugku-CTF之flag.php(点了login咋没反应) 随笔 第1张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第2张           本题要点:代码审计、反序列化、cookie       打开链接发现: Bugku-CTF之flag.php(点了login咋没反应) 随笔 第3张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第4张 查看源码什么也没有   Bugku-CTF之flag.php(点了login咋没反应) 随笔 第5张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第6张       注意,题目说明中    提示是hint,试试get一个hint参数,得到源码   Bugku-CTF之flag.php(点了login咋没反应) 随笔 第7张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第8张   代码审计: (参考了很多大佬们的题解,相关链接见本文参考资料)   我们可以看到 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第9张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第10张   代码逻辑是传入的cookie参数的值反序列化后等于KEY就输出Flag,一开始以为$KEY的值是最下面的ISecer:www.isecer.com,结果忙活了半天发现这里其实上面$KEY的值还没有被定义,上面代码中$KEY的值应该是NULL,而不是下面的值,所以应该是反序列化的值为NULL.   若unserialize($cookie)全等于$KEY,这里注意有双引号,大体意思是:cookie的参数为ISecer,值为$KEY的序列化  之所以序列化的$KEY不为'ISecer:www.isecer.com',是因为定义的$KEY在后面,所以执行的$KEY为NULL    用在线的php代码测试网站测试一下 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第11张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第12张   可以看到serialize($KEY)的值为 s:0:""       Bugku-CTF之flag.php(点了login咋没反应) 随笔 第13张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第14张   现在我们来用bp抓包   Bugku-CTF之flag.php(点了login咋没反应) 随笔 第15张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第16张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第17张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第18张   (这里不知道什么原因没有抓到cookie,求大佬们指教) 所以手动在headers里添加了cookie   Go一下就得到了flag   Bugku-CTF之flag.php(点了login咋没反应) 随笔 第19张 Bugku-CTF之flag.php(点了login咋没反应) 随笔 第20张     也可以通过hackbar插件来完成此操作   构造cookie :ISser = s:0:""; 但是注意;(分号)在cookie中不会被正确的上传到服务器,构造URL编码 ;的URL编码为%3B 于是在火狐的HackBar插件中传入Cookie ISser = s:0:""%3B     完成!     参考资料: https://blog.csdn.net/qq_39629343/article/details/80119126 https://blog.csdn.net/qq_40860784/article/details/79600372        

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。