본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


전체 글674

18. 세션고정(SF) 세션 고정 취약점은 사용자 로그인 시 항상 일정하게 고정된 세션ID가 발급되는 경우 해커의 세션 ID 탈취로부터 비인가자의 접근 및 권한 우회가 가능한 취약점을 의미 합니다. #방법1 세션 생성과 관련된 설정은 각각의 어플리케이션 서버에서 동작하게 되어 있습니다. 또한 로그아웃이나 브라우저의 종료 행위에 따라서 세션을 clear하거나 remove를 해 준다면 세션 아이디 값을 초기화 할 수 있습니다. 아래 샘플코드처럼 사용자의 접속 종료 행위에 대해서는 세션내용을 제거 해 주도록 합니다. public static void removeSessions(HttpSession session) { Enumeration names= session.getAttributeNames(); while(names.hasMo.. 2021. 12. 8.
리엑트 파이어베이스 데이터 저장소 연동(React firebase firestore) 리엑트에서 파이어베이스 데이터 저장소를 연동하는 방법을 소개 합니다. 파이어베이스에서 제공하는 데이터베이스는 클라우드형식의 저장소로 어디서는 접근이 가능한 장점이 있기 때문에 포트폴리오나 간단한 웹으로도 많이 쓰이는 것 같습니다. : - ) 연동단계는 아래와 같습니다. 파이어베이스 가입 > 프로젝트 생성 > 저장소 생성 > 인증정보 획득 > 로그인 등록 > 리엑트 프로젝트에 Lib 설치 > 사용 > 인증 써 놓고보면 단계가 상당하지만 천천히 하다보면 그렇게 어렵지 않습니다. #1. 파이어베이스 가입 > 프로젝트 생성 > 저장소 생성 > 인증정보 획득 먼저 파이어베이스에 가입해야 합니다. 네이버나 구글 검색엔진에 "firebase" 라고 입력을 한 뒤 가입하도록 합니다. 이때 구글계정이 필요합니다. 그리고.. 2021. 12. 8.
17. 불충분한 세션만료(SC) 불충분한 세션만료 취약점은 세션의 값이 계속해서 존재하는 것을 의미 합니다. 세션의 만료 기간을 정하지 않거나, 만료일자를 너무 길게 설정하여 해커에게 만료되지 않은 세션 활용이 가능하게 되어 각종 정보탈취 및 변조가 가능 합니다. #방법1 세션을 활용한 로그인 방식이라면 어플리케이션 서버에서의 세션 유지시간 설정을 통해서 쉽게 가능 합니다. 어플리케이션 서버인 톰캣을 예로 들어보겠습니다. * 샘플 대상 파일 : web.xml 30 위 설정방법은 세션의 유지시간을 30분으로 설정한 샘플 입니다. 물론 어플리케이션 영역(Application Context)에서의 객체를 가져와 설정 할 수도 있습니다. //import 생략.. public LoginController { @RequestMapping(valu.. 2021. 12. 7.
16. 불충분한 인가(IN) 불충분한 인가 취약점은 페이지 접근을 위한 인증기능이 구현되지 않을 경우, 해커나 인가되지 않는 사용자가 페이지에 접근 및 중요 정보의 변조를 할 수 있는 취약점 입니다. 불충분한 인증과 비슷한 개념의 취약점 입니다. 어떤 페이지에 권한이 없는 사용자가 접근할 수 있거나 변조(수정,삭제)를 할 수 있다면 불충분한 인가 취약점이 존재한다고 할 수 있습니다. #방법1 가장 먼저 페이지에 이동을 할 때 단순한 키 값을 노출시켜 이동 하는지 확인하여야 합니다. 가령 게시판에서 게시판 목록의 세부 글 보기 기능이 단순한 숫자값을 가지고 조회하는 경우가 있겠습니다. 이러한 경우에 다른 게시글의 키 값인 숫자값을 가지고 수정 및 삭제 할 때 해당 값을 바꾸어 버리는 경우가 생깁니다. 그러므로 가급적 세부 글 보기 기.. 2021. 12. 7.
15. 세션 예측(SE) 세션 예측 취약점은, 단순히 숫자가 증가하는 방법이나 일정 패턴등을 활용하여 공격자가 세션의 ID를 예측하여 세션을 가로챌 수 있는 취약점 입니다. 브라우저와 서버는 세션과, 세션쿠키를 활용하여 서로의 정보를 일치시킵니다. 따라서 세션이름과 값을 공격자가 패턴을 분석하지 못하게 조치를 해야 합니다. #방법1 세션을 활용한 로그인 및 정보저장 기능에서는 세션 예측을 방지하기 위하여 어플리케인서버의 버전을 향상된 버전으로 업그레이드 할 필요가 있습니다. 가령 운용중인 서비스가 대표적 어플리케이션 서버인 톰캣을 사용하는데 버전이 3.0, 4.0인 경우 매우 취약하므로 이러한 어플리케이션 서버의 버전을 올려주는 것 입니다. #방법2 해커가 스크립트코드를 통하여 세션쿠키값을 가져가지 못하도록 세션쿠키에 옵션을 주.. 2021. 12. 7.
14. 크로스 사이트 리퀘스트 변조(CSRF) 크로스 사이트 리퀘스트 변조는 사이트간 요청위조를 의미 합니다. 피해자의 권한으로 피해자 모르게 해커가 요청을 수행 하도록 만드는 것을 의미 합니다. 웹 취약점에서 자주 언급되면서 반드시 조치가 되어야 합니다. 특히 "결재"와 관련된 웹 어플리케이션에서는 필수이며 가장 강력한 수준의 조치가 요구 됩니다. * 해커가 악성스크립트를 통하여 원치않는 결재, 결재정보노출 등을 할 수 있기 때문 입니다. #방법1 가장 첫번째 방지는 크로스 사이트 스크립팅(XS)이 되지 않도록 조치하는 것 입니다. 크로스 사이트 리퀘스트 변조(CSRF)도 결국엔 크로스 사이트 스크립팅(XS)을 통해 실행되는 취약점이기 때문 입니다. * 참고 : 크로스 사이트 스크립팅(XS) 대비 https://lts0606.tistory.com/.. 2021. 12. 6.