程序员

注册

 

发新话题 回复该主题

ThinkPHP框架代码审计 [复制链接]

1#
第一弹

ThinkPHP3.x/5.x框架任意文件包含ThinkPHP简介

ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于年初,原名FCS,年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。

漏洞简述

ThinkPHP在加载模版解析变量时存在变量覆盖的问题,且没有对$cacheFile进行相应的消*处理,导致模板文件的路径可以被覆盖,从而导致任意文件包含漏洞的发生。

环境准备

下载thinkphp框架在“thinkphp\library\think\Controller.php”文件中写入如下代码:

在“application\index\view\index”目录下建立一个index.html文件,不建立会出现模板文件不存在错误。

至于其他配置数据库连接文件以及thinkphp框架结构,可参考文章:代码审计

ThinkPHP5.0.x框架SQL注?

漏洞分析

攻击者可以通过POST方式访问链接:

分享 转发
TOP
发新话题 回复该主题