ctf web题 前女友

我们直接看题,看到这篇文章我就以为这就是个段子在这里插入图片描述
这篇文章的最后提到php这就给我们了一点提示,这个网页是不是php写的呢,我们在url上加上index.php点击回车,和原网页一样看来我们的猜测没有错,到这里我们还是不知道怎么做,打开源码看看在这里插入图片描述
发现这里有一个链接,我们点击进去看看在这里插入图片描述
这里的传输方式是GET我们做的就是给v1、v2、v3赋值,让它满足这个代码的要求,让它最后输入flag这里用到了1.issert(),md5(),strcmp()函数。
issert()函数的作用:
若变量不存在则返回 FALSE
若变量存在且其值为NULL,也返回 FALSE
若变量存在且值不为NULL,则返回 TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数。
2.md5() 函数计算字符串的 MD5 散列。
md5() 函数使用 RSA 数据安全,包括 MD5 报文摘要算法。
来自 RFC 1321 的解释 - MD5 报文摘要算法:MD5 报文摘要算法将任意长度的信息作为输入值,并将其换算成一个 128 位长度的"指纹信息"或"报文摘要"值来代表这个输入值,并以换算后的值作为结果。MD5 算法主要是为数字签名应用程序而设计的;在这个数字签名应用程序中,较大的文件将在加密(这里的加密过程是通过在一个密码系统下[如:RSA]的公开密钥下设置私有密钥而完成的)之前以一种安全的方式进行压缩。
其实我感觉md5就是一种字符串加密的方式.
3.strcmp()函数就是判断两个字符串是否相等。

在上面说一下这三个函数的用法,issert函数和md5函数都不能处理数组,返回值为null,所以我们让v1,v2,v3构造成数组就行了
在这里插入图片描述
如果说的有哪里不对,请大神指教。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值