파일 업로드(File Upload) 취약점

by Toff

  개요
이번 포스팅에서는 파일 업로드(File Upload) 취약점에 대해서 알아보자. 기본적으로 웹 애플리케이션에서는 asp, php, jsp 와 같은 스크립트 파일은 업로드 시에 악의적인 행위를 할 수 있으므로 차단시켜야 한다. 대부분의 웹 애플리케이션에서는 jsp, png 등 과 같은 이미지 파일만 업로드를 허용시켜 놓는다. 하지만 이러한 허용된 확장자 파일이 아닌 악의적으로 행위할 수 있는 스크립트 파일 등이 웹 애플리케이션에 업로드 되는 것을 파일 업로드 취약점이라고 한다.


간단한 우회 방법을 설명하자면, IIS 환경에서는 .Cer(인증서 파일), .asx(IIS 설정 파일) 등의 확장자도 업로드 했을 때 스크립트 파일로 인식한다. 블랙리스트 방식으로 asp, php, jsp 등 만을 차단해두었다면 이러한 방법으로 우회할 수 있다. 또한 IIS 에서는 대 소문자를 구별하지 않기에 Asp, phP, JSP 등으로도 우회할 수 있다.