TP3.2.3疑似运行日志漏洞?

浏览:715 发布日期:2018/08/15 分类:站务建议 关键字: 漏洞
今天本人在测试用TP3.2.3搭建的网站、查看运行日志时发现一个漏洞:
如果你的应用目录可以被浏览器访问的话,那么通过浏览器可以直接访问TP的运行日志,以本人自己的网站为例,访问http://localhost/应用名称/Runtime/Logs/组名/18_08_15.log:[ 2018-08-15T10:17:21+08:00 ] 127.0.0.1 /应用名称/index.php/组名/Index/index
INFO: [ app_init ] --START--
INFO: Run Behavior\BuildLiteBehavior [ RunTime:0.000018s ]
INFO: [ app_init ] --END-- [ RunTime:0.017883s ]
INFO: [ app_begin ] --START--
INFO: Run Behavior\ReadHtmlCacheBehavior [ RunTime:0.025058s ]
INFO: [ app_begin ] --END-- [ RunTime:0.025137s ]
SQL: SHOW COLUMNS FROM `数据表名` [ RunTime:0.0294s ]
NOTIC: [8] A session had already been started - ignoring session_start() Z:\phpstudy\WWW\应用名称\Home\Controller\HandleController.class.php 绗� 6 琛�.
NOTIC: [8] Undefined index: file_id Z:\phpstudy\WWW\应用名称\Home\Controller\IndexController.class.php 绗� 13 琛�.
SQL: SELECT COUNT(*) AS tp_count FROM `数据表名` WHERE ( 1 ) LIMIT 1   [ RunTime:0.0010s ]
SQL: SELECT * FROM `数据表名` WHERE ( 1 ) ORDER BY id LIMIT 0,15   [ RunTime:0.0004s ]
INFO: [ view_parse ] --START--
INFO: [ template_filter ] --START--
INFO: Run Behavior\ContentReplaceBehavior [ RunTime:0.000111s ]
INFO: [ template_filter ] --END-- [ RunTime:0.000157s ]
INFO: Run Behavior\ParseTemplateBehavior [ RunTime:0.103416s ]
INFO: [ view_parse ] --END-- [ RunTime:0.103474s ]
INFO: [ view_filter ] --START--
INFO: Run Behavior\WriteHtmlCacheBehavior [ RunTime:0.011475s ]
INFO: [ view_filter ] --END-- [ RunTime:0.011526s ]
INFO: [ app_end ] --START--
INFO: Run Behavior\ShowPageTraceBehavior [ RunTime:0.014994s ]
INFO: [ app_end ] --END-- [ RunTime:0.015096s ]
从上述日志可以直接得到网站的服务器系统、文件位置,数据库等信息,对黑客攻击提供了帮助。
本人还对我已知的5个用TP搭建的网站分别进行了测试,除了一个网站因为版本较旧找不到日志路径,其他四个网站通过输入http://域名/应用名(默认为Application,很多开发者不会改它)/Runtime/Logs/组名(默认为Home或者Index,很多开发者不会改它)/18_08_15.log的方式即可访问日志文件

推荐解决方法:
1、仅让入口文件和公共文件能够被web浏览器访问,其他文件一律移至服务器根目录外或者设置为403禁止访问
2、在生产环境下请关闭对外的任何错误提示
3、修改应用名称,不为默认值
最佳答案
评论( 相关
后面还有条评论,点击查看>>