Thinkphp5安全漏洞修复方法(5.0,5.1)

安全漏洞更新方法:
1、使用composer或者git直接更新
2、在thinkphp/library/think/文件下找到App.php,如下图
Thinkphp5安全漏洞修复方法(5.0,5.1)_第1张图片
查找module方法,在这里插入图片描述
找到获取控制器名
在这里插入图片描述
在这句话下面添加一段代码
if (!preg_match(’/1(\w|.)*$/’, $controller)) {
throw new HttpException(404, ‘controller not exists:’ . $controller);
}
Thinkphp5安全漏洞修复方法(5.0,5.1)_第2张图片
如果没有加这句代码,我们是可以通过url地址栏进行一句话木马植入,出现phpinfo的页面,phpinfo页面暴露,我们服务器的一些敏感文件就会暴露出来,比如我们的php.ini的文件位置,还有我们的php版本都可以暴露无遗。如下图:
Thinkphp5安全漏洞修复方法(5.0,5.1)_第3张图片
一句话代码:
http://www.xxxx.com/?s=index/\think\App/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
如果修复成功,那这段代码将不会执行,thinkphp5就会有错误提示:
Thinkphp5安全漏洞修复方法(5.0,5.1)_第4张图片
本文作者原创,请勿抄袭


  1. A-Za-z ↩︎

你可能感兴趣的:(安全)