Bug #73708 [Opn->Nab]: php .user.ini conf file design issue resulting in bypass

From: Date: Tue, 16 Mar 2021 12:26:07 +0000
Subject: Bug #73708 [Opn->Nab]: php .user.ini conf file design issue resulting in bypass
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-232776@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=73708&edit=1

 ID:                 73708
 Updated by:         cmb@php.net
 Reported by:        tr3jer at gmail dot com
 Summary:            php .user.ini conf file design issue resulting in
                     bypass
-Status:             Open
+Status:             Not a bug
 Type:               Bug
 Package:            *Configuration Issues
 Operating System:   all
 PHP Version:        Irrelevant
-Assigned To:        
+Assigned To:        cmb
 Block user comment: N
 Private report:     N

 New Comment:

> Yes, a setting in default/bypass/.user.ini will override a
> setting in default/.user.ini. That is how it is supposed to work.

That.


Previous Comments:
------------------------------------------------------------------------
[2016-12-11 07:48:43] tr3jer at gmail dot com

but this is .user.ini fault, .user.ini set open_basedir=/home/wwwroot/default, just It should not
cross the directory!

------------------------------------------------------------------------
[2016-12-10 12:26:05] requinix@php.net

Yes, a setting in default/bypass/.user.ini will override a setting in default/.user.ini. That is how
it is supposed to work.
If an attacker is able to create files on the server then PHP cannot stop them. If open_basedir is a
problem then it should be set at the server level (eg, php.ini).

------------------------------------------------------------------------
[2016-12-10 12:01:31] tr3jer at gmail dot com

os is all

------------------------------------------------------------------------
[2016-12-10 11:50:29] tr3jer at gmail dot com

Description:
------------
hello! php security team.I find one .user.ini vulnerabilityinfluences all have .user.ini php
versionstest verision = php5.4.user.ini Can be configured open_basedir,so...here i use
open_basedir as exampleimage1:http://7xiw31.com1.z0.glb.clouddn.com/QQ20161210-1@2x.pngSo
that attackers can not cross this directory and read system fileimage2:http://7xiw31.com1.z0.glb.clouddn.com/QQ20161210-0@2x.pngI
think .user.ini just The current directory takes effect,so...again write one .user.ini And the
original Do not conflict?

Test script:
---------------
We just have upload file Permissions:image3:http://7xiw31.com1.z0.glb.clouddn.com/QQ20161210-4@2x.pngcreate
new directory and write new .user.ini:open_basedir=/image4:http://7xiw31.com1.z0.glb.clouddn.com/QQ20161210-1@2x.pngyep!don't
need restart,just wait a few minutes,can bypass .user.ini limit:image5:http://7xiw31.com1.z0.glb.clouddn.com/QQ20161210-3@2x.png



------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=73708&edit=1


Thread (5 messages)

« previous php.bugs (#232776) next »