보안취약점 3

[웹 보안취약점] XSS, XPath, 악성 스크립트 방지

XSS, XPath, 악성스크립트는 내용은 조금씩 다르지만 결국 파라미터에 조작된 쿼리문이나, 스크립트 언어 등을 삽입하여 비정상적인 데이터를 호출하거나, 사용자 정보를 가로채는 등의 공격 취약점이다. 따라서 파라미터 부분에 값 검증 처리를 해주면 된다. 1) Filter 웹앱에 필터를 설정하여 파라미터의 값을 필터링하는 기능이다. 필터 기능을 할 클래스와 동작할 클래스를 만들어 webapp - WEB-INF/web.xml 에서 filter 걸어주면 된다. 자세한 내용은 XSS 필터(크로스 사이트 스크립트),Encoding 필터 -XSS 필터 웹 페이지를 만들보면 사용자의 악의적인 공격을 많이 받게되는데 이런 것들중 가장 대표적인것이 XSS 공격이다 크로스 사이트 스크립트 라는것인데 서버로 보내는 입력값..

[웹 보안취약점] HttpOnly 설정 방법 (Tomcat, WEBAPP, JAVA, PHP, IIS 10)

⊙ Tomcat - tomcat/conf/context.xml 톰캣 6 이상부터 지원한다! 5.5.28 부터도 가능할지도.. (근데 업그레이드하면 자동으로 httponly 적용이 됐던 것 같은..) 경로는..보통 홈페이지 전체에 다 거니까 path="/" 로 했당 path 부분 제외해도 됨! 그럼 전체에 되는거겠지 ⊙ WEBAPP - WEB-INF/web.xml true 이것도 톰캣 6 (or 5.5.28) 이상부터 되려나? ⊙ Java Cookie cookie = getMyCookie("myCookieName"); cookie.setHttpOnly(true); 쿠키 설정하는 부분에서 2번째 줄 처럼 설정해주면 된다. 근데 이것두 servlet 3.0 부터 지원한다ㅋㅋㅋㅋ.. 내 경우엔 2.4 여서ㅋㅋㅋ..

[웹 보안취약점] HttpOnly 확인 방법

cookie 에 HttpOnly 속성이 설정되어 있지 않으면 스크립트 언어를 이용해 쿠키 정보를 볼 수 있으므로 XSS 공격이 가능하다. 현재 적용되어있는지 확인하는 방법은 1) 개발자도구(F12) > Console > "document.cookie" HttpOnly 속성이 설정되어 있지 않으면 공격자가 "document.cookie" 를 삽입해서 쿠키정보를 사용할 수 있다. 이때 쿠키정보가 나오지 않아야 공격을 방지할 수 있겠지요~ JSSESSIONID, PHPSESSIONID, ASP.NET_SESSIONID 등등 사용자의 세션/쿠키 값이 출력되지 않아야한다. 위처럼 노출되면 HttpOnly 가 미적용된 것! 적용된 경우엔 이런식으로 아무것도 나오지 않거나, 팝업 같은 쿠키의 값만 나와야한다. 팝업같..