bypass open_basedir 简约方法

作者: print("") 分类: 信息安全 发布时间: 2021-03-10 11:21

一、open_basedir的配置

解锁:

chattr -i .user.ini

加锁:

chattr +i .user.ini

.user.ini配置

open_basedir=/项目路径/:/tmp/:/proc/     

例:  open_basedir=/www/aaa/:/tmp/:/proc/ 

二、突破配置

在二级目录新建一个文件 例如aa/.user.ini  内容如下:

open_basedir=/

一定得访问一下aa目录下的php文件。然后才能生效

然后访问aa/aa.php 

三、思考为什么能bypass open_basedir 

这个首先是一个fastcgi 的机制导致的。因为可以重复注册 open_basedir  导致的一个任意子目录下面都能引用这个配置。

四、解决这个问题

在fastcgi 配置中添加如下的配置

fastcgi_param PHP_VALUE "open_basedir=$document_root:/tmp/"

里面的一个具体原理。可以看看一下源码。这里就不多做阐述

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注