ThinkPHP使用不当可能造成敏感信息泄露
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