2010-01-24 4 views

답변

1

가장 좋은 방법은 업로드 디렉토리가 웹 루트 외부에 있는지 확인하는 것입니다. 웹 서버에 읽기/쓰기 액세스 권한이 있으면 실행 파일 업로드에 대해 걱정할 필요가 없습니다. 이것은 here on stackoverflow으로 논의되었습니다.

+0

+1 좋은 답변 ... 웹 루트 아래에 업로드하지 않는 것이 가장 좋은 방법은 아마도 해당 디렉토리에 대해 PHP를 완전히 사용 중지하는 것입니다. 이런 종류의 설명은 (자세한 내용은 문서를 살펴볼 정도로 충분합니다.) http://www.faqts.com/knowledge_base/view.phtml/aid/128/fid/35 – Fredrik

1

가장 좋은 방법은 업로드 할 때 파일의 확장명을 확인하는 것입니다. jpg/png/gif/etc가 아닌 경우이를 닫으십시오. 웹 서버가 파일을 PHP 파일로 해석하도록 잘못 구성된 것이 아니라면이 방법을 사용하면 두통이 거의없고 아주 간단하게 구현할 수 있습니다.

-3

파일 유형이 업로드되었는지 확인하지 않으면 위험 할 수 있다고 생각합니다. "해커"는 모든 httpdocs 파일을 삭제하거나 많은 파일이나 큰 파일을 업로드 할 수있는 PHP 파일을 업로드합니다.

0

사용자가 원하는대로 업로드하도록 허용하는 경우에만 위험합니다. 오직 결정은 안전하며 아무 것도 차단할 필요가 없습니다.

1

업로드되는 파일이 양질의 확장자 (.gif, .mp3 등)인지 확인하고 다른 것을 휴지통으로 만드십시오. 여분의 sekrit 보호를 위해 데이터베이스에서 파일의 원래 이름을 캡처 한 다음 (나중에 참조 할 수 있도록) 파일 이름을 암호화합니다 (그리고 그 파일도 저장합니다). 업로드 한 내용은 업 로더가 파일 이름으로 찾을 수 없습니다.

+0

이것은 그것을하는 방법. 내가 원하는 것을 만들어서 .mp3 파일로 저장할 수 있기 때문에 ... 두 번째 제안은 꽤 영리합니다. – Joe

+0

mp3 확장명으로 서버에 업로드 한 경우 서버는 다시 호출 될 때 서버를 실행하지 않습니다. 암호화를 사용하면 실제로는 아무런 문제가 없습니다. –

관련 문제