타

파일업로드 하는 곳의 보안문제좀 알려주세요 ^^

· 2010-11-18 (목) 12:52:36 · 1486 · 4
사이트에 요상한 업로드파일이 올라와서 말썽입니다 ㅠㅠ

업로드 하는 곳에 파일명검사(제한)를 하면 된다는 팁을 얻었는데요.

보통 어떤 파일만 올라가도록 하시는지 고수님들의 팁을 듣고싶습니다. 도와주세요 ㅠㅠ
|

댓글 4개

#cat > .htaccess
php_admin_flag engine off
#chmod 404 .htaccess
if($_FILES['upload_file']['name'][$i]){//if 1
$file=$_FILES['upload_file']['tmp_name'][$i];
$file_name=$_FILES['upload_file']['name'][$i];
$file_size=$_FILES['upload_file']['size'][$i];
$file_name_div=explode(".",$file_name);
$file_dot_check=$file_name_div[sizeof($file_name_div)-1];
if($file_size=="0") message("업로드".($i+1)."에 업로드하실 파일의 경로가 올바르지 않습니다.","-1");
if(preg_match("/.php$|.ph$|.php3$|.php4$|.jsp$|.asp$|.pl$|.js$|.html$|.htm$|.phtml$|.shtm$|.ztx$|.dot$|.cgi$|.inc$|.txt$|.exe$|.com$|.bat$/i", $_FILES['upload_file']['name'][$i]) || substr($_FILES['upload_file']['name'][$i],0,1)=='.'){
message("업로드가 불가능한 파일(확장자)입니다.\\n\\n파일을 압축하여 업로드를 하시기 바랍니다.","-1");
}
}

구닥다리지만 잘 돌갑니다.
우선 정책을 정하셔야 될 것 같은데요.
업로드시 어떤 파일들만 허락할 것인지 용도가 무엇인지
따라서 제한을 해야 될 것 같습니다.
이미지만 업로드하는 게시판이 있을 수도 있고 문서파일만 업로드 할 수 있을 수도 있고
그리고 업로드 제한을 서버단에서 할 수도 있고 클라이언트 자바스크립트에서도 제어할 수도 있습니다.
이점 유의해서 작업을 하시면 될 것 같네요.
좋은 말씀 갑사합니다 ^^
댓글을 작성하시려면 로그인이 필요합니다.

토크

3,606건

오픈소스 관련 다양한 이야기를 자유롭게 나눠요

+
제목 글쓴이 날짜 조회
10-11-23 조회 1,635
10-11-23 조회 1,369
10-11-23 조회 1,378
10-11-23 조회 1,142
10-11-23 조회 1,664
10-11-23 조회 1,224
10-11-23 조회 1,281
10-11-23 조회 1,315
10-11-23 조회 1,403
10-11-23 조회 1,210
10-11-22 조회 1,459
10-11-22 조회 1,782
10-11-22 조회 1,431
10-11-22 조회 1,382
10-11-22 조회 1,297
10-11-22 조회 1,388
10-11-22 조회 1,136
10-11-22 조회 1,421
10-11-22 조회 1,258
10-11-22 조회 1,184
10-11-21 조회 1,262
10-11-21 조회 1,884
10-11-21 조회 1,759
10-11-21 조회 1,409
10-11-20 조회 1,411
10-11-20 조회 1,285
10-11-19 조회 1,516
10-11-19 조회 1,644
10-11-18 조회 1,598
10-11-18 조회 1,487