# 2FA broken logic * Bài lab này yêu cầu chúng ta bypass 2FA. Trước tiên chúng ta sẽ thực hiện từng bước đăng nhập với account `wiener:peter` được cấp. Sau khi đăng nhập vào là màn hình yêu cầu chúng ta nhập security code. ![Capture01](https://hackmd.io/_uploads/ByJc50II6.png) * Chúng ta vào Email client để tìm mail chứa security code. ![Capture02](https://hackmd.io/_uploads/Byyqq0L86.png) * Sau khi nhập security code và nhấn Submit, chúng ta đăng nhập thành công và ở màn hình My Account. ![Capture05](https://hackmd.io/_uploads/H11c9CUIp.png) * Kiểm tra Proxy bằng Burp Suite, ta thấy có một request `GET /login2` dùng để yêu cầu gửi mail chứa security code sau khi đã xác thực user. Gửi request này đến Repeater. ![Capture03](https://hackmd.io/_uploads/rkJqc0LU6.png) * Chỉnh sửa từ `wiener` thành `carlos` và gửi. Việc này để lừa hệ thống gửi security code đến email của account `carlos`. ![Capture04](https://hackmd.io/_uploads/B1yqcR8IT.png) * Ngoài ra ta còn thấy request `POST /login2` để gửi request chứa security code để xác thực. Ta sẽ dùng request này để brute-force security code của account `carlos`. ![Capture06](https://hackmd.io/_uploads/ryy59C8Lp.png) * Gửi request đến Intruder và đặt vị trí payload ở mfa-code. ![Capture07](https://hackmd.io/_uploads/rykq50LIa.png) * Payload ở đây là dạng số tự nhiên từ 0 đến 9999. Tiến hành brute-force. ![Capture08](https://hackmd.io/_uploads/H1y55R8U6.png) * Kết quả là security code của account `carlos` là 1088. ![Capture09](https://hackmd.io/_uploads/rJk99RL86.png) * Dùng Repeater để gửi request `POST /login2` với username là `carlos` và security code là 1088. ![Capture10](https://hackmd.io/_uploads/HJycq0ULp.png) * Đã vào được trang My Account của `carlos`. Hoàn thành bài lab. ![Capture11](https://hackmd.io/_uploads/ryyq9CL8a.png)