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

사이트에 요상한 업로드파일이 올라와서 말썽입니다 ㅠㅠ

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

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

댓글 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개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
15년 전 조회 977
15년 전 조회 1,338
15년 전 조회 1,125
15년 전 조회 1,147
15년 전 조회 1,466
15년 전 조회 1,017
15년 전 조회 1,054
15년 전 조회 980
15년 전 조회 1,143
15년 전 조회 971
15년 전 조회 1,411
15년 전 조회 1,101
15년 전 조회 1,072
15년 전 조회 1,288
15년 전 조회 989
15년 전 조회 1,038
15년 전 조회 963
15년 전 조회 1,157
15년 전 조회 974
15년 전 조회 1,104
15년 전 조회 1,061
15년 전 조회 1,341
15년 전 조회 977
15년 전 조회 1,148
15년 전 조회 1,106
15년 전 조회 1,420
15년 전 조회 1,706
15년 전 조회 1,061
15년 전 조회 1,188
15년 전 조회 1,087
15년 전 조회 1,224
15년 전 조회 1,073
15년 전 조회 1,253
15년 전 조회 1,143
15년 전 조회 1,162
15년 전 조회 1,067
15년 전 조회 4,047
15년 전 조회 7,135
15년 전 조회 1,266
15년 전 조회 1,043
15년 전 조회 1,402
15년 전 조회 1,214
15년 전 조회 1,263
15년 전 조회 1,112
15년 전 조회 1,002
15년 전 조회 1,428
15년 전 조회 1,082
15년 전 조회 1,633
15년 전 조회 1,408
15년 전 조회 1,215
15년 전 조회 1,182
15년 전 조회 1,052
15년 전 조회 1,391
15년 전 조회 1,095
15년 전 조회 3,190
15년 전 조회 1,393
15년 전 조회 1,299
15년 전 조회 1,446
15년 전 조회 1,041
15년 전 조회 1,323
15년 전 조회 1,526
15년 전 조회 1,220
15년 전 조회 1,966
15년 전 조회 1,019
15년 전 조회 1,176
15년 전 조회 1,491
15년 전 조회 1,276
15년 전 조회 1,011
15년 전 조회 3,227
15년 전 조회 1,432
15년 전 조회 2,415
15년 전 조회 2,295
15년 전 조회 1,336
15년 전 조회 2,598
15년 전 조회 1,140
15년 전 조회 1,658
15년 전 조회 2,846
15년 전 조회 1,051
15년 전 조회 1,593
15년 전 조회 1,813
15년 전 조회 1,167
15년 전 조회 1,494
15년 전 조회 1,045
15년 전 조회 2,293
15년 전 조회 1,670
15년 전 조회 1,174
15년 전 조회 843
15년 전 조회 942
15년 전 조회 1,365
15년 전 조회 1,442
15년 전 조회 876
15년 전 조회 781
15년 전 조회 1,050
15년 전 조회 991
15년 전 조회 2,009
15년 전 조회 842
15년 전 조회 892
15년 전 조회 896
15년 전 조회 1,143
15년 전 조회 1,976