전체 글 38

[웹 보안취약점] 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 가 미적용된 것! 적용된 경우엔 이런식으로 아무것도 나오지 않거나, 팝업 같은 쿠키의 값만 나와야한다. 팝업같..

list null empty

VO 에 list get set 을 설정하고 클래스에서 불러와 사용하는데, list 의 공백을 확인할 때 null 인지, empty 인지 확실치 않아서 서치를 했더니 어디는 null 로 쓰고, 어디는 null 안된다고 empty 로 해야된다고.. 결론은 둘 다 사용가능이다! null - List li = null; 이런식으로 초기화를 했을 때고, empty - List li = new ArrayList(); 이런식으로 했을 때다. 기본적이고 당연한 얘기이긴한데..ㅋㅋㅋ 그동안 null 로 초기화해서 null 로 비교하고 있어서 empty 를 사용하는 줄 몰랐다..ㅎㅋ

WEB/Java 2021.03.08

siren24 사이렌24 본인인증 오류

발생 오류 : result 에서 본인인증 쪽에서 받은 enc_retInfo 에서 * 값이 들어가 복호화 과정에서 한글 깨짐 및 한자 발생으로 인한 오류 1. reqNum, iv 고정 최종 결과값 복호화를 위한 SecuKey 인 reqNum 값을 랜덤으로 생성하여 세션이나 쿠키에 담아서 사용 → 브라우저 이슈로 인해 세션이나 쿠키에 담으면 값이 변하는 경우 발생 → sample, result 에서의 iv 값이 달라지니 오류 → sample, result 에서 각각 reqNum, iv 고정값(8-10자리 정도) 세팅 보통은 iv 값이 달라서 생기는 오류라 reqNum, iv 를 고정하여 사용하면 해결된다고 함 더보기 ※ reqNum, iv을 고정하는 이유 원래는 랜덤값으로 생성되어 세션에 담아 넘기고 받아서..

JavaScript 기초 및 객체 리터럴

주석- Java 와 같은 '/* */'(영역 주석), '//'(한 줄 주석)- 자바스크립트 주석은 소스보기에서 공개되기 때문에 공개되면 안되는 주석은 삭제 필요 문자열- 작, 큰 따옴표 필요할 경우 => 역슬래시var str = 'ABC "DEF" \'GHI\'.'; - 역슬래시가 필요할 경우 => 역슬래시 2번var str = 'ABC \\DEF\\ GHI.'; 비교연산자 ==같다, 데이터타입 고려X '5' == 5 (T) ===데이터타입까지 같다. '5' === 5 (F) !==데이터타입까지 같지않다. '5' !== 5 (T) 함수선언123456789101112function Func(value1, value2) { // 함수 호출 전, 후에 선언 } var Func = function(value1,..