ThinkPHP在开启DEBUG的情况下会在Runtime目录下生成日志,而且debug很多站都没关的,所以影响应该很大吧
我们来看一下ThinkPHP3.2版本生成日志结构:

THINKPHP3.2 结构:Application\Runtime\Logs\Home\16_09_09.log
THINKPHP3.1结构:Runtime\Logs\Home\16_09_09.log
可以看到是 :项目名\Runtime\Logs\Home\年份_月份_日期.log
这样的话日志很容易被猜解到,而且日志里面有执行SQL语句的记录,这里我随便找几个tp站测试一下:
http://demo.xxxxx.cc/Runtime/Logs/User/16_09_06.log 成功下载,并且找到一个用户的密码

成功登录:

我们再找一个案例:http://www.xxxxxx.com/Runtime/Logs/Home/16_09_06.log

成功登录:

onethink官网测试
http://www.onethink.cn/Runtime/Logs/16_09_07.log
修复办法:
删除Runtime/Logs下的所有文件,并将APP_DEBUG设置为false
本文探讨了ThinkPHP框架在开启DEBUG模式时日志文件的生成路径及内容可能带来的安全风险,包括敏感信息泄露和潜在攻击风险,并提供了解决方案。
1181

被折叠的 条评论
为什么被折叠?



