[ Broken Authentication: 인증 취약점] 이란?
: 취약한 세션 관리나 인증 관리 허점을 이용해 공격자가 일반 사용자 또는 관리자로 위장 가능한 웹 어플리케이션 취약점.
인증 및 세션 관리에 대한 취약점 유형
1. 쿠키 변조
: 쿠키 값을 변조해 타 사용자로 로그인을 시도할 수 있는 경우
2. 세션 쿠키 타임아웃
: 세션에 타임아웃이 지정되지 않을 경우 사용자가 로그아웃 하지 않으면 공용 pc 환경에서 다른 사람이 해당 세션을 사용할 수 있는 문제
3. 다중세션 사용
: 여러 pc에서 로그인이 가능한 경우
공격 형태
: 공격자는 암호나 키, 세션 쿠키, 기타 인증 관련 토큰을 공격해 인증을 우회하고 다른 사용자의 ID를 가장
-세션 관리 공격 유형
1. 세션 하이재킹
: 정상적으로 사용하는 사용자의 세션을 가로채는 일련의 행위
ex. 사용자 로그아웃 x=> 공격자 그대로 서비스 이어서 사용
TCP 세션 하이재킹 공격: 공격자가 중간에서 연결을 가로챔=> 공격자와 서버 간 통신.
2. Session ID URL Rewriting Exploit
: 세션 id가 url 상 노출될 때 가능한 공격
ex. 줌바밍: 온라인 원격 수업에 무단으로 침입해 음란 영상을 내보내는 공격
3. 세션 고정 취약점 공격
: 로그인 하기 전 발급된 세션 id가 로그인 후에도 재사용되는 것을 이용한 취약점
-취약한 인증 공격 유형
1. 크리덴셜 스터핑 공격
:노출된 인증정보를 이용해 다른 사이트에 적용
->일반적으로 동일한 계정과 암호를 여러 사이트에 사용하기에 이와 같은 공격이 가능함
2. 패스워드 스프레이 공격
: 사람들이 많이 사용하는 패스워드를 사용자 계정에 무차별 대입해 인증을 무너뜨리는 공격
3. 피싱
: 사람을 속여 정보를 얻어내는 사회공학적 기법
: 특정 타깃을 노리는 스피어 피싱 & 타겟팅 공격
ex. 위장 사이트
취약점 점검 유형
1. JAVASCRIPT: document.cookie로 점검
2. DB 서버에 저장된 사용자 정보의 raw 데이터 열람 가능
3. 계정의 패스워드를 유추할 수 있는 지 점검
4. 쿠키 인증 시 쿠키 값의 변조로 인증을 통과할 수 있는지 점검
대응방법
1. 다중 인증 도입
2. 강력한 패스워드 정책
2. 전송 중의 자격 증명 보호
: .SSL과 같은 로그인 트랜젝션 전체를 암호화
3. 서버 측 인증 기술 사용
: Hidden Field, Client Side Cookie << Server Side Session ID 사용
4. 인증 관련 정보
: Get 방식 << Post 방식
5. 동시 로그인 금지 및 암호화 채널 사용
[실습]
'HACKING > WEB' 카테고리의 다른 글
[OWASP] 1. INJECTION (0) | 2021.09.16 |
---|---|
[1. 입력 데이터 검증 및 표현] 5. Path Traversal (0) | 2021.08.03 |
[1. 입력 데이터 검증 및 표현] 4. OS Command Injection (0) | 2021.08.03 |
[OWASP] 7. XSS (0) | 2021.07.31 |
[1. 입력 데이터 검증 및 표현] 2.File Upload (0) | 2021.07.31 |