<?
$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를 찾을 수 있다.
'war game > webhacking.kr' 카테고리의 다른 글
[webhacking.kr]57번 (0) | 2017.02.19 |
---|---|
[webhacking.kr]2번-blindsql (0) | 2017.02.19 |
[webhacking.kr]55번 left right을 이용한 blind sql (0) | 2017.01.31 |
[webhacking.kr]22번 blind sql injection binary search (0) | 2017.01.30 |
[webhacking.kr 21]blind sql injection (0) | 2017.01.30 |