合天 第四周 Check your source code

Check your source code

题目描述:目标机:Centos7 IP地址:10.1.1.147:5004

攻击机:Kali IP地址:随机分配

要求:获取目标flag

提示:flag格式为flag{}

1.登陆该网站(10.1.1.147:5004),查看源码:
在这里插入图片描述
在这里插入图片描述
2.代码注释这里发现了一个叫做source.txt的文件。我们打开这个文件看看。
在这里插入图片描述
3.试图理解这些代码,百度PHP:
1)isset():作用是检查变量是否设置,并且不为null,加个!,表示取反的意思。
链接: https://www.php.net/manual/zh/function.isset.php
empty():作用是检查变量是否为空。 链接:https://www.php.net/manual/zh/function.empty.php
$_COOKIE:作用是设置或获取cookie值。链接:https://www.php.net/manual/zh/reserved.variables.cookies.php
$_POST:作用是用于收集来自method =“ post”的表单中的值。
链接: https://www.php.net/manual/zh/reserved.variables.post.php
urldecode():对字符串进行url解码。 链接:https://www.php.net/manual/zh/function.urldecode.php
base64_encode():对字符串进行base64编码。 链接:https://www.php.net/manual/zh/function.base64-encode.php
setcookie():作用是发送cookie。 链接:https://www.php.net/manual/zh/function.setcookie.ph
. 是php中的字符串拼接符号。
4.从上面代码中,我们知道,想要得到flag。必须满足3个条件。
check这个cookie的值不能为空。
username解码后的值必须是admin,并且password解码后的值不能为admin。
check这个cookie的值必须等于secret经过base64编码后,拼接字符串adminadmin解码的值。
5.进行抓包:
在这里插入图片描述
6.从抓包的结果中,我们可以看见发送的cookie ahash的值为0DhhZG1pbmFkbWlu。
并且没有cookie check的值。因此我们还需要去修改数据包。并且从源码中,我们知道admin和1经过url编码后的值就是username和password的值。
解码过后secret的值为88
将admin进行url编码,结果是:%61%64%6d%69%6e;1经过编码后结果是:%31;再将88进行base64编码。

7.然后我们开始构造check,username,password。然后go
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XXX_WXY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值