hoony's web study

728x90
반응형

아주 오래전에 만들었던 사이트에서 연락이 왔습니다.
웹취약점 점검으로 문서를 보내주더군요.
거기서 발견하고 수정한건데 참고하세요 
jsp나 기타 웹어플리케이션의 경우 파일다운로드를 이용해서 웹어플리케이션의 특정파일을 받아서 
그것을 가지고 해킹의 위험이 있다고 합니다.
이를 위해서는 파일의 확장자를 허용된 것만 받도록 하는게 중요하다고 하네요 

String filecheck = filename.substring(filename.length()-3);

    filecheck.trim();


  if( !filecheck.equals("doc")

  && !filecheck.equals("hwp")

  && !filecheck.equals("xls")

  && !filecheck.equals("jpg")

  && !filecheck.equals("peg")

  && !filecheck.equals("gif")

  && !filecheck.equals("bmp")

  && !filecheck.equals("mp3")

  && !filecheck.equals("pdf")

  && !filecheck.equals("ppt")

  && !filecheck.equals("tif")

  && !filecheck.equals("txt")

  && !filecheck.equals("wmv")

  && !filecheck.equals("zip")

  && !filecheck.equals("asf")

  && !filecheck.equals(".AI")

  && !filecheck.equals(".ai")){

%>

 <script>

    alert("선택하신 파일은 다운받으실수 없습니다.");

    history.back();

 </script>

 <noscript>

    <pre> 선택하신 파일은 다운받으실수 없습니다. </pre>

    <a href="<%=return_page%>">이전 페이지로 이동</a>

 </noscript>

위의 코드로 하시면 허용된 확장자로 된 것들만 다운로드가 됩니다.

정말 오래간만에 jsp에 관련된 포스팅을 하게 되네요 
그럼 개발자들이여 즐거운 코딩을 !~ 




728x90

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading