티스토리 뷰

부파일을 이용한 웹취약 공격은 지금은 웹보안 관련 검사시 단골손님이고 기본적으로 방어 해야 하는 부분입니다.

보통 클라이언트 사이드에서 할수 있는건 자바스크립트를 이용한 확장자 검색정도가 전부 입니다.

그렇기 때문에 파일 확장자를 임의로 rename 한다면 통과 쉽게 통과 시킬수 있습니다.


서버사이드에서도 기본적으로 할수 있는건 파일 확장자 검사 정도가 전부 이지만 서버에서는 파일 바이너리를 분석해서 추가적인 정보를 얻을수 있습니다.

하지만 구현을 직접 한다면 . . . _ _);


다행히도 아파치 Tika 라는 오픈소스 라이브러리가 존재 합니다.  사용 방법은 아주 심플 합니다. 

예를들어 index.jsp 라는 파일을 index.ppt 변경하고 c: 드라이브 위치 시켜놓고 테스트를 해보면

1
2
3
4
Tika tika = new Tika();
String mimeType = tika.detect(new File("c:\\index.ppt"));
 
System.out.println("I am PPT: " + mimeType);
cs


결과

I am PPT: text/x-jsp


확장자가 ppt 인 문서이지만 조회된 mime type 은 text/x-jsp 로 jsp 문서임을 확인할 수 있습니다. 

자세한 사용법은 아래링크로 이동 하시면 됩니다.

http://tika.apache.org/

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크