实验吧天网管理系统Writeup

本文介绍了如何解决实验吧天网管理系统的CTF挑战,涉及PHP弱类型相等、serialize()与unserialize()的使用。通过寻找MD5值为0的字符串,成功绕过验证,并通过反序列化技巧构造特定数据,最终获取flag。
摘要由CSDN通过智能技术生成

实验吧天网管理系统Writeup

原题地址 实验吧–天网管理系统
用到的知识点:
1.php弱类型相等
2.php函数serialize()与unserialize()(序列化和反序列化)
这里写图片描述
首先查看源文件,发现提示:

<!-- $test=$_GET['username']; $test=md5($test); 
if($test=='0') -->

意思就是将输入的username的值进行md5加密,之后与0相等即可
php中==是只进行值的比较,不管二者的类型。当两个字符串进行==比较的时候,则比较字符串中第一个不是数字的字符之前的数字串所代表的整数值,例如”0marsguest”与”0”就是相等的。
那么下面的主要任务就是找到md5加密后是0的值,这样的例子有很多,参考链接:http://marsguest.com/2018/05/01/2018-05-01-md5-0/
我这里用的是240610708,将用户名输入240610708,得到提示:
这里写图片描述
访问这个界面。得到新的提示:


$unserialize_str = $_POST['password'];
     $data_unserialize = unserialize($unser
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值