반응형
문제 링크
https://portswigger.net/web-security/authentication/multi-factor/lab-2fa-simple-bypass
목표 & 사용 도구
목표: 이중 인증을 우회하여 피해자의 계정으로 My account 페이지에 접근하는 것입니다.
사용도구: Burp Suite
문제 설명
해당 랩은 이중 인증을 우회할 수 있다고 하며 이미 유효한 유저 이름과 비밀번호를 얻은 상태라고 합니다. 하지만 2FA 인증 코드 가 있어서 접근을 불가능한 상태이며 Carlos의 account 페이지에 접근하여 랩 문제를 해결할 수 있다고 합니다. 이때 계정 정보는 아래와 같습니다.
자신의 계정: wiener:peter
피해자의 계정: carlos:montoya
문제 풀이
- 계정 정보를 확인하고 ACCESS THE LAB을 클릭하여 랩에 접속합니다.

- My account를 클릭합니다.

- 사용자 이름과 비밀번호를 입력하고 로그인을 시도합니다.

- 4자리 숫자 코드를 입력해야 하며 이중 인증을 사용하고 있다는 것을 알 수 있습니다. Email client를 클릭합니다.

- Email을 확인해 보면 4자리 숫자 코드를 알 수 있으며 해당 숫자 코드를 복사합니다.

- 복사한 4자리 숫자 코드를 숫자 코드 입력하는 곳에 기입합니다.

- 정상적으로 로그인되는 것을 볼 수 있고 피해자의 계정으로 로그인을 시도하기 위해 로그아웃을 합니다.

- 피해자의 계정으로 로그인을 시도 합니다.

- 피해자의 계정인 carlos 계정으로 로그인을 했을 때 4자리 숫자 코드를 입력하라고 하며 피해자의 이메일 주소를 모르기 때문에 숫자 코드를 알 수 없는 상황입니다.

- 이때 숫자 코드를 입력하지 않고 URL 입력창에 계정 정보를 볼 수 있는 /my-account 페이지를 입력하고 접근합니다.

- 이중 인증을 하지 않고 우회하여 carlos 계정으로 로그인이 되어있는 것을 볼 수 있고 2단계 인증을 하지 않고도 로그인된 사용자가 접근할 수 있는 My account 페이지에 접속이 가능해지면서 랩 문제도 해결된 것을 볼 수 있습니다.

| [설명] 해당 랩에서는 1단계 인증을 하고 나서의 세션과 2단계 인증을 하고 나서의 세션이 다른 것을 볼 수 있습니다. -1단계 인증 후 세션 ![]() -2단계 인증 후 세션 ![]() 세션이 서로 다름에도 불구하고 1단계 인증 세션을 가지고도 2단계 인증을 해야 접속할 수 있는 페이지에 접근을 할 수 있었는데 이는 서버가 2단계 인증까지 했다는 것을 제대로 검증하지 않고 있거나 2단계 인증을 했다는 근거가 반영되지 않은 걸로 추정됩니다. 그렇기 때문에 2단계 인증 단계에서 입력해야 하는 숫자 코드를 몰라도 아이디, 비밀번호로 발급받은 1단계 인증 세션만으로도 2단계 인증을 우회할 수 있었습니다. |
반응형
'[WEB] CTF & Wargame > PortSwigger Web Security Academy' 카테고리의 다른 글
| Lab: File path traversal, simple case (0) | 2026.07.20 |
|---|---|
| Lab: DOM XSS in document.write sink using source location.search (0) | 2026.07.20 |
| Lab: CSRF where token validation depends on request method (0) | 2026.07.17 |
| Lab: SSRF with whitelist-based input filter (0) | 2026.06.26 |
| Lab: SSRF with blacklist-based input filter (0) | 2026.06.23 |
| Lab: SSRF with filter bypass via open redirection vulnerability (0) | 2026.06.21 |

