????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 216.73.216.238 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/phar/tests/ |
Upload File : |
--TEST-- Phar: create with illegal path --SKIPIF-- <?php if (!extension_loaded("phar")) die("skip"); ?> <?php if (!extension_loaded("spl")) die("skip SPL not available"); ?> --INI-- phar.readonly=0 phar.require_hash=1 --FILE-- <?php $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.php'; $pname = 'phar://' . $fname; @unlink($fname); file_put_contents($pname . '/a.php?', "query"); file_put_contents($pname . '/b.php?bla', "query"); var_dump(file_get_contents($pname . '/a.php')); var_dump(file_get_contents($pname . '/b.php')); function error_handler($errno, $errmsg) { echo "Error: $errmsg"; } set_error_handler('error_handler'); $count = 0; $checks = array( '/', '.', '../', 'a/..', 'a/', 'b//a.php', "Font\xE5\x84\xB7\xE9\xBB\x91pro.ttf", //two valid multi-byte characters "\xF0\x9F\x98\x8D.ttf", // valid 4 byte char - smiling face with heart-shaped eyes "Font\xE9\xBBpro.ttf", //Invalid multi-byte character - missing last byte "Font\xBB\x91pro.ttf", //Invalid multi-byte character - missing first byte "Font\xC0\xAFpro.ttf", //Invalid multi-byte character - invalid first byte "Font\xF0\x80\x90\x90pro.ttf", //Invalid multi-byte character - surrogate pair code point "\xFC\x81\x81\x81\x81pro.ttf", //RFC 3629 limited char points to 0000-10FFFF aka 5 byte utf-8 not valid ); foreach($checks as $check) { $count++; echo "$count:"; file_put_contents($pname . '/' . $check, "error"); echo "\n"; } $phar = new Phar($fname); $checks = array("a\0"); foreach($checks as $check) { try { $phar[$check] = 'error'; } catch(Exception $e) { echo 'Exception: ' . $e->getMessage() . "\n"; } } ?> ===DONE=== --CLEAN-- <?php unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.php'); ?> --EXPECTF-- string(5) "query" string(5) "query" 1:Error: file_put_contents(phar://%s//): failed to open stream: phar error: file "" in phar "%s" cannot be empty 2:Error: file_put_contents(phar://%s/.): failed to open stream: phar error: file "" in phar "%s" cannot be empty 3:Error: file_put_contents(phar://%s/../): failed to open stream: phar error: file "" in phar "%s" cannot be empty 4:Error: file_put_contents(phar://%s/a/..): failed to open stream: phar error: file "" in phar "%s" cannot be empty 5: 6: 7: 8: 9:Error: file_put_contents(phar:///%s): failed to open stream: phar error: invalid path "%s" contains illegal character 10:Error: file_put_contents(phar:///%s): failed to open stream: phar error: invalid path "%s" contains illegal character 11:Error: file_put_contents(phar:///%s): failed to open stream: phar error: invalid path "%s" contains illegal character 12:Error: file_put_contents(phar:///%s): failed to open stream: phar error: invalid path "%s" contains illegal character 13:Error: file_put_contents(phar:///%s): failed to open stream: phar error: invalid path "%s" contains illegal character Error: Phar::offsetSet() expects parameter 1 to be a valid path, string given===DONE===