<?
$hidden_dir
="???";

$pw="???";

if(
$_FILES[up])
{
$fn=$_FILES[up][name];
$fn=str_replace(".","",$fn);
if(
eregi("/",$fn)) exit("no");
if(
eregi("\.",$fn)) exit("no");
if(
eregi("htaccess",$fn)) exit("no");
if(
eregi(".htaccess",$fn)) exit("no");
if(
strlen($fn)>10) exit("no");
$fn=str_replace("<","",$fn);
$fn=str_replace(">","",$fn);
$cp=$_FILES[up][tmp_name];

copy($cp,"$hidden_dir/$fn");

$f=@fopen("$hidden_dir/$fn","w");
@
fwrite($f,"$pw");
@
fclose($f);

echo(
"Done~");

}


?>


warning메시지가 노출될 수가 있는데 이를 이용해서

마지막에 필터링되는 문자열을 넣어서 ('<>'같은)문자를 넣어서
fn을 아무것도 없게 만들어주면 
b>Warning</b>:  copy(dkanehdkftndjqtsmsdlfmadmlvhfejzzzzzzzzzkkkkkkkkggggggggg/) [<a href='function.copy'>function.copy</a>]
이와같은 warning메시지를 보여주게 된다. 여기서 $hidden_dir를 알아낼수 있고
아무 파일이나 만들어서 디렉토리로 들어가서 보면flag를 찾을 수 있다.


+ Recent posts