loading
본문으로 바로가기

* 본 내용은 정보보안 모의프로젝트 자료입니다 *

3) 인증 우회 [A-02~03]

3-1) 취약점 개념 설명

쿠키는 웹 애플리케이션에서 사용자를 구분할 때 사용하는 HTTP 프로토콜 중 하나입니다. 클라이언트가 웹페이지에 접속 시 쿠키를 부여받게 됩니다. 이를 통해 인증 없이 사용할 수 있습니다.

 

이 쿠키에 대한 보안정책을 마련하지 않는다면 공격자에 의해 쿠키가 탈취되어 클라이언트로 위장하여 사용자의 권한을 획득하여 서비스를 활용할 수 있게 됩니다.

[그림 3-13] 인증 우회 시나리오

 

3-2) 취약점 점검

(1) 쿠키 재사용 여부

[3-2] 쿠키 재사용 점검 위치

 

쿠키 재사용 여부 점검은 [3-2]의 위치에서 실시합니다.

 

[그림 3-14] Burp Suite를 이용한 쿠키 재사용 점검

 

프록시 도구인 Burp Suite를 이용하여 여러 차례의 로그인을 시도하여 쿠키 값을 잡아내었으며, 현재 Line Studio의 쿠키 값은 변하지 않고 항상 일치하였다. 별도의 암호화 없이 평문으로 노출되므로 취약한 상태 임의 확인하였습니다.

 

(2) 중요페이지 세션, 인증, 접근 체크 여부

 

[3-3] 중요페이지 세션, 인증, 접근 체크 점검 위치

 

중요 페이지 세션, 인증, 접근 체크 여부 점검은 [3-3]의 위치에서 실시합니다.

관리자 페이지는 일반 사용자에게 공개되지 않아야 하는 중요 페이지입니다.

 

[그림 3-15] Burp Suite를 세션, 인증, 접근 체크 점검

 

[그림 3-15]는 관리자 로그인 페이지로써 접근이 가능합니다.

 

3-3) 모의 침투

가로챈 쿠키 값을 이용하여 사용자의 권한을 그대로 사용할 수 있게 됩니다.

 

본 모의 침투에서는 관리자의 쿠키 값을 이용하겠습니다.

[그림 3-16] Burp Suite를 이용하여 쿠키 값 변조

 

[그림 3-20]에서 가로챈 admin 계정의 쿠키 값을 이용하여 변조, 인증을 통하여 로그인을 진행합니다.

 

결과적으로, admin 계정으로써 자유롭게 LineStudio를 사용할 수 있게 됩니다.

[그림 3-17] 관리자 페이지 입장

 

3-4) 대응 방안

(1) 토큰의 암호화

공격자가 토큰을 추측하기 어렵게 하기 위해 쿠키 값을 암호화하여 저장합니다.

 

(2) HTTPS 통신 활용

SSL 인증 기술을 이용하여 암호화 프로토콜인 HTTPS를 이용하여 전송합니다.

 

(3) 만료 정책

쿠키 정보 만료 시간을 짧게 설정하고 사용자가 로그아웃 버튼을 누르지 않아도 일정 시간 후에 자동으로 로그아웃을 진행합니다.