[PHP-users 12741] Re: null byte attack

Osamu Shigematsu php-users@php.gr.jp
Wed, 22 Jan 2003 16:42:18 +0900


重松です。こんにちは。

> basename()もpreg()と同じような動作ですね。

それをいうならば、basename() も ereg() と同じような動作ですね、では。

ソースを追っていないのですが、basename() 自体が、
C のライブラリのそれを使っているのではないでしょうか?

<?php
$path = "/path/to/filename.php\0ext";
$file = basename($path);
var_dump($file);
$file = mb_ereg_replace('.*/','',$path);
var_dump($file);
?>

> php -q test.php
string(12) "filename.php"
string(16) "filename.phpext"

Solaris 2.6 + PHP 4.3.0 (CGI) で実験。

-- 
Osamu Shigematsu <m5issige@mr.hitachi-medical.co.jp>