记录thinkphp5.0和5.1的getshell漏洞

发布时间 - 2020-08-12 00:00:00    点击率:

下面由thinkphp框架教程栏目给大家介绍thinkphp5.0和5.1的getshell漏洞,希望对需要的朋友有所帮助!

之前网站被提权了,那时候网站才建没几天,应该不会有人故意为之,可能是批量扫描getshell的,为了方便我找的是开源系统thinkcmf建了博客,看着挺不错的,因为thinkcmf用的是thinkphp5.0的框架开发的,我到think上去看了一下,原来有一个提权漏洞。

libaray/think/app.php文件中模块,控制器,方法使用的是/来区分开来。

然后并没有对控制器进行过滤,导致可以构造执行各种函数

我在本地建一个虚拟主机测试http://cmf.com

构造一个url访问,可以直接打印出phpinfo:

http://cmf.com/index.php?s=portal/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1

然后你可以把phpinfo换成其他函数,比如使用file_put_content函数创建各种大马小马文件。

TP官方的修复5.0方法是:

think\App类的module方法的获取控制器的代码后面加上

if (!preg_match('/^[A-Za-z](\w|\.)*$/', $controller)) {
    throw new HttpException(404, 'controller not exists:' . $controller);
}

我用的thinkcmf的版本是:ThinkCMF 5.0.180901

然后我看了一下thinkcmf的官网已经更新到5.0.190111,最新版也更新了tp5.0到最新版本5.0.24了包含了安全更新,当然也没有这个提权漏洞了。

 


# php  # thinkphp  # http  # 的是  # 看着  # 我在  # 看了  # 你可以  # 我用  # 给大家  # 那时候  # 可以直接  # 为之 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel如何配置和使用缓存?(Redis代码示例)  iOS中将个别页面强制横屏其他页面竖屏  如何破解联通资金短缺导致的基站建设难题?  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  php json中文编码为null的解决办法  如何用花生壳三步快速搭建专属网站?  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  个人摄影网站制作流程,摄影爱好者都去什么网站?  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  C语言设计一个闪闪的圣诞树  EditPlus中的正则表达式 实战(2)  Laravel如何创建自定义中间件?(Middleware代码示例)  长沙做网站要多少钱,长沙国安网络怎么样?  如何挑选最适合建站的高性能VPS主机?  javascript基本数据类型及类型检测常用方法小结  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  Laravel如何处理CORS跨域请求?(配置示例)  如何确保西部建站助手FTP传输的安全性?  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  如何在企业微信快速生成手机电脑官网?  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  在线制作视频网站免费,都有哪些好的动漫网站?  浅谈redis在项目中的应用  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何在香港服务器上快速搭建免备案网站?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何在IIS7中新建站点?详细步骤解析  如何快速搭建高效简练网站?  Android okhttputils现在进度显示实例代码  网站制作报价单模板图片,小松挖机官方网站报价?  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  网站制作壁纸教程视频,电脑壁纸网站?  如何在服务器上三步完成建站并提升流量?  Laravel怎么使用artisan命令缓存配置和视图  iOS UIView常见属性方法小结  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  如何在Tomcat中配置并部署网站项目?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  Laravel如何实现用户注册和登录?(Auth脚手架指南)  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  如何用PHP快速搭建高效网站?分步指南  高性能网站服务器配置指南:安全稳定与高效建站核心方案  详解Android——蓝牙技术 带你实现终端间数据传输