Upload Fake Image(가짜 이미지, 피싱스크립트) 의 검증
단순히 업로드 파일의 확장자로 구분되지 않는 phishing(피싱)파일을 제거하기 위해서 사용 가능
https://tika.apache.org/ , a content analysis toolkit.
tika-app1.14.jar Library를 다운로드 ( https://tika.apache.org/download.html )
예제 소스
import java.io.File; import java.io.FileInputStream; import java.io.IOException; import org.apache.tika.Tika; public class TestMain { public static void main(String[] args) throws Exception { //File f = new File("fakeTest.png"); // text/html //File f = new File("jpgTest.jpg"); // image/jpeg File f = new File("pngTest.png"); // image/png //File f = new File("gifTest.gif"); // image/gif System.out.println( f.toString()); System.out.println( f.getAbsolutePath() ); String allowFileExt = "image/jpg;image/jpeg;image/png;image/gif;"; if ( f.isFile() ) { Tika tika = new Tika(); try { String detectedType = tika.detect( new FileInputStream(f) ); System.out.println("Type : " + detectedType ); if (allowFileExt.indexOf(detectedType) == -1) { throw new Exception("Use only Type : JPG, JPEG, PNG, GIF"); } } catch (IOException e) { e.printStackTrace(); } } else { System.out.println("-not-" ); } } }
'Web Tech. > Spring Framework' 카테고리의 다른 글
Java, Ip Address 가져오기 (0) | 2017.02.07 |
---|---|
awk print (0) | 2017.02.01 |
2개의 war 비교하기 (0) | 2017.01.25 |
2017년 1월 스타트업에서 구인할때 주로 원하는 개발 기술 (0) | 2017.01.24 |
HMAC SHA-256 이해 (0) | 2017.01.24 |