선릉역 1번 출구
취약한 인증 본문
취약한 인증: 인증 과정이 제대로 보호되어 있지 않아 공격자가 인증 과정을 우회할 수 있는 경우 발생
ex) 사용자가 로그인을 여러 번 실패하더라도 제한을 두지 않는 경우, 세션 관리의 문제로 인해 사용자의 세션 ID가 노출되어 공격자가 세션 하이재킹 공격이 가능한 경우, 세션 ID가 쉽게 유추할 수 있는 경우, 세션에 대한 타임아웃이 없어 오래된 세션ID를 사용해 인증이 가능한 경우
공격자: 사용자 계정 정보를 확인하거나 세션 토큰과 같은 인증에 사용되는 토큰 정보를 입수해 인증 과정 우회
브루트 포스(무차별 대입 공격): 로그인 실패 후 로그인 횟수에 제재를 가하지 않는 경우 사용
1. 무작위 시도: 일련의 문자들을 한번씩 대입
2. 딕셔너리: 사람들이 자주 쓰는 패스워드를 이용해 로그인 시도
DVMA를 통한 실습(security-low 설정)
login 시도 -> 여러 번 실패해도 제한은 발생하지 않음 -> 브루트포스 공격에 취약함
1. 로그인 시도를 burp suite로 잡음
proxy -> HTTP history
2. 우클릭 후 send to intruder를 클릭함
우측의 clear를 눌러 자동으로 표시된 부분을 삭제함
3. password 부분 드래그 후 Add$
해당 부분이 $$으로 감싸짐
4. payload type을 simple list 설정 후 load(usr/share/john/password.lst)
*simple list: 아랫부분의 페이로드 옵션에 등록된 문자열을 하나씩 사용해 요청을 전송함
5. start attack
6. intruder가 list를 자동으로 요청함
password만 response length가 다름 -> 비밀번호임
7. 로그인 성공
대응 방안
1. 로그인 시도 제한(locking)
2. 캡챠(captcha)
'Hacking & Security > Hacking' 카테고리의 다른 글
XSS and CSRF (0) | 2022.11.19 |
---|---|
Command Injection (0) | 2022.10.26 |
정보 수집 (0) | 2022.10.17 |
HTTP 파라미터 오염(HPP) (0) | 2022.05.17 |
Open redirect (0) | 2022.05.17 |