Buu刷题Day2

[MRCTF2020]Ez_bypass

他说F12里有东西,那我们就打开

I put something in F12 for you include 'flag.php'; $flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}'; if(isset($GET['gg'])&&isset($GET['id'])) { $id=$GET['id']; $gg=$GET['gg']; if (md5($id) === md5($gg) && $id !== $gg) { echo 'You got the first step'; if(isset($POST['passwd'])) { $passwd=$POST['passwd']; if (!is_numeric($passwd)) { if($passwd==1234567) { echo 'Good Job!'; highlight_file('flag.php'); die('By Retr_0'); } else { echo "can you think twice??"; } } else{ echo 'You can not get it !'; } } else{ die('only one way to get the flag'); } } else { echo "You are not a real hacker!"; } } else{ die('Please input first'); } }Please input first

可读性真差,在F12里双击它会变得好看一点

第一个点是md5($id) === md5($gg) && $id !== $gg

简单的md5强比较,用数组

md5强比较没有规定字符串如果这个时候传入的是数组不是字符串,md5()函数无法解出其数值并且不会报错,就会得到数值相等;

第二个点is_numeric是弱比较数字只需要1234567a就可以绕过,注意是post方式

 

总结

我一开始没仔细看,以为是弱比较,然后发现不对,找了找问题发现原来是强比较。。。

弱比较和强比较都可以用数组!但是我一开始用的0e

[GYCTF2020]Blacklist

我上一次刷题居然漏了一个注入!!!

fuzz一下发现过滤的比强网杯更严格了

preg_match("/set|prepare|alter|rename|select|update|delete|drop|insert|where|./i",$inject)

堆叠还是可以用的!

又学习了堆叠的骚操作!!

HANDLER ... OPEN可以打开一个表

HANDLER ... READ可以访问,并在会话中调用HANDLER ... CLOSE或者绘画结束前不会关闭,前提是该表对象未被其它会话共享

payload

1';HANDLER%0aFlagHere%0aOPEN;HANDLER%0aFlagHere%0aREAD%0aFIRST;HANDLER%0aFlagHere%0aCLOSE;#

总结

又收获了堆叠注入的骚姿势

上传一个马试一试,发现后缀不能有ph

上传shell.Php也不行看来大小写一样

上传shell.shtml和shell.pwml说我太露骨

那我就修改一下Content-Type为image/jpeg

上传他说我还是php文件,那我把<?php改为<php

上传成功了,但是shtml没解析pwml也是

(一下就过滤了php / php5 / pht / phtml / shtml / pwml / phtm)

因为上传目录下没有php文件,所以.user.ini失效了

本来看了一下这是nginx不是apache就没想到用.htaccess,但是发现wp就是用.htaccess!学到了新知识!原来nginx也是支持.htaccess的!

.htaccess文件内容为

AddType application/x-httpd-php .mochu

然后上传图片马会被当做php解析,连接菜刀或者直接文件读取就行啦!

文件读取时候发现cat不出来,于是我看了看phpinfo的disable_functions禁用了好多系统函数

于是找到了show_source(filename,return)

show_source()函数对文件进行语法高亮显示(是highlight_file()的别名

语法:show_source(filename,return)

其中filename必须return可选,如果设置为true,则返回高亮处理的代码!而不是输出它们!(比如写了一段计算的代码,会返回代码本身而不是计算结果)否则,若成功,则返回 true,失败则返回 false。

总结

原来不只是apache支持.htaccess文件!

学到了show_source()函数!

终于!buu开始做第二页了,拖到现在终于算告一段落,我们下一章见!

感谢buu提供题,也感谢勤劳的自己!债见!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

姜小孩.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值