note 115069 added to function.posix-setuid
| From: | Leigh | Date: | Thu, 22 May 2014 02:09:00 +0000 |
| Subject: | note 115069 added to function.posix-setuid | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-199588@lists.php.net to get a copy of this message | ||
Note that on unix, if your target user does not have a valid shell, some php functions (eg: tempnam)
will not work correctly:
$ grep www-data /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
$ cat test.php
#!/usr/bin/php -q
<?php
$info=posix_getpwnam("www-data");
$id=$info["uid"];
$file=tempnam("/tmp","something");
print "PRE SetUID: $file\n";
$SETUID=posix_setuid($id);
$file=tempnam("/tmp","something");
print "POST SetUID: $file\n";
?>
$ sudo ./test.php
PRE SetUID: /tmp/somethingrsb1qZ
POST SetUID:
----
Server IP: 27.50.85.3
Probable Submitter: 118.208.30.83
----
Manual Page -- http://php.net/manual/en/function.posix-setuid.php
Edit -- https://master.php.net/note/edit/115069
Del: integrated -- https://master.php.net/note/delete/115069/integrated
Del: useless -- https://master.php.net/note/delete/115069/useless
Del: bad code -- https://master.php.net/note/delete/115069/bad+code
Del: spam -- https://master.php.net/note/delete/115069/spam
Del: non-english -- https://master.php.net/note/delete/115069/non-english
Del: in docs -- https://master.php.net/note/delete/115069/in+docs
Del: other reasons-- https://master.php.net/note/delete/115069
Reject -- https://master.php.net/note/reject/115069
Search -- https://master.php.net/manage/user-notes.php