취약점진단- 불충분한 인증
불충분한 인증 및 인가이란?
웹 어플리케이션에서 개인정보 수정 페이지나 통합 로그인(SSO)과 같은 곳에서 사용자 인증이 미흡(아이디로 인증)할 경우 공격자가 파라미터로 전달되는 값을 수정하여 사용자 도용 및 개인정보 노출 문제가 발생할 수 있는 취약점
인증(Authentication): 인증이 필요한 페이지에 인증이 없는것 ex) 로그인페이지
인가(Authorization): 부여된 권한보다 더 높은 권한을 사용하는것 ex) 일반계정으로 관리자 페이지 접속
취약점 개요
점검내용 | ■ 중요 페이지 접근 시 추가 인증 요구 여부 점검 |
점검목적 | ■ 중요 페이지에 추가 인증으로 접근을 강화하여 불필요한 정보의 노출 및 변조를 차단하기 위함 |
보안위협 | ■ 중요 정보(회원정보 등) 페이지에 대한 인증 절차가 불충분할 경우 발생하는 취약점으로 권한이 없는 사용자가 중요 정보 페이지에 접근하여 정보를 유출하거나 변조할 수 있으므로 중요 정보 페이지에는 추가적인 인증 절차를 구현아여야 함 |
점검대상 및 판단기준
대상 | ■ 그누보드(localhost) |
판단기준 | 양호: 중요 정보 페이지 접근 시 추가 인증을 하는 경우 |
취약: 중요 정보 페이지 접근에 대한 추가 인증을 하지 않는 경우 | |
조치방법 | 중요 정보 페이지에 대한 추가 인증 로직 추가 구현 |
점검 및 조치 사례
1) 주요 정보(회원정보 변경) 페이지 접근 전에 재인증 여부 확인
2) 관리자 페이지에 접근시 올바른 권한인지 확인
※보안설정방법
-중요 정보(회원정보 변경) 페이지와 같은 중요 정보를 표시하는 페이지에서는 본인 인증을 재확인하는 로직을 구현하
고, 인증 후 사용자가 이용 가능 페이지에 접근할 때마다 승인을 얻은 사용자인지 페이지마다 검증하여야 함
-접근 통제 정책을 구현하고 있는 코드는 구조화, 모듀화가 되어 있어야 함
-접근제어가 필요한 모든 페이지에 통제수단(로그인 체크 및 권한 체크)을 구현해야 하며 특히, 하나의 프로세스가 여러
개의 페이지 또는 모듈로 이루어져 있을 때 춴한 체크가 누락되는 경우를 방지하기 위해서 고옹 모듈을 사용하는 것을
권장함
-인증 과정을 처리하는 부분에 Client side script(javascript, VBScript 등)를 사용하면 사용자가 임의로 수정할 수 있으므
로 Server side Script(PHP, ASP, JSP 등)를 통하여 인증 및 필터링 과정을 수행함
참고
www.kisa.or.kr/public/laws/laws3_View.jsp?cPage=6&mode=view&p_No=259&b_No=259&d_No=106&ST=T&SV=
기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원
기술안내서 가이드
www.kisa.or.kr