CTF通关录

CTF通关录-php_rce

从字面上来  php-rce  PHP remote cmd execution  中文翻译:远程代码执行
这就给了我们第一个思路,解题思路:远程代码执行

打开题目:
在这里插入图片描述ThinkPHP 5.0 欧克欧克,这个框架版本确实存在远程代码执行漏洞
此漏洞影响版本:
ThinkPHP 5.0系列 < 5.0.23
ThinkPHP 5.1系列 < 5.1.31

漏洞描述:
由于ThinkPHP5框架对控制器名没有进行足够的安全检测,导致在没有开启强制路由的情况下,黑客构造特定的请求,可直接GetWebShell
漏洞利用:
简要来说控制controller类来实例化任意对象,利用其再调用invokeFuction方法,进行特殊构造的payload达到代码执行目的
那么怎么传入的payload?,var_pathinfo的默认配置为s,我们可以用
$_GET[‘s’]来传参
构造payload

?s=index/\think\App/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=php -r “system(‘ls’);”

在这里插入图片描述通过回显,可以看到确实执行了ls的命令,接下来找flag
你可以用…/一级一级目录向上跳然后配合find命令来查看flag文件

这里我找到了。一直跳到了根目录才发现的flag
然后接着用cat命令,查看flag文件的内容
在这里插入图片描述
flag到手,天下我有

还有不对的地方,请各位师傅指出!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

0XAXSDD

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

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

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

打赏作者

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

抵扣说明:

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

余额充值