jarvis OJ web babyphp

匿名 (未验证) 提交于 2019-12-02 22:11:45

babyphp

考完二级后我又要回归web狗了
今天做到一道web题
上题:
http://web.jarvisoj.com:32798/

进入后:
发现应该有git泄露
因此我们使用githack进行获得源码

打开cmd 输入:python2 GitHack.py http://web.jarvisoj.com:32798/.git/ #这里的python2是我设置的用于区分python3 即这个脚本要使用python2 

之后我们得到源码:

当然如果我们直接在打开flag.php的话没用的,因为emmm标志被注释掉了

我们重点来看这里:
assert()函数

这个我也不算太懂,但是只要是这一句话
如果assertion是字符串,那么此字符串会被当做php代码执行
因此我们就可以进行php注入(我的第一次php注入)
我们在url后面输入

?page='. system("cat templates/flag.php").' 

这个代码的意思是打开flag.php 所在的templates文件中的此文件
为什么知道他在那里,因为有:

输入payload后我们查看源代码得到flag

为什么要查看源码才能看到了,因为标志被注释了呀(源代码的那部分是绿色的)

文章来源: https://blog.csdn.net/qq_43677324/article/details/88980644
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!