인증 CTF 1 - Get Admin
드디어 처음 해킹을 시작합니다. 두근두근하네요.
챌린지 첫 번째 문제는 사이트 오류로 인해 패스!!
두 번째 문제 인증 CTF - Get Admin 시작합니다.
사용 툴은 Burp Suite(버프라 부르겠습니다.)입니다.
사전 정보 : 여러분들의 계정은 mario입니다. 비밀번호는 mariosuper 이구요!
하지만, admin 계정으로 로그인해야 합니다.
일단 사이트를 들어가 봅시다.
로그인 사이트가 나오네요. 일단 사전 정보에서 저의 계정은 mario라고 했으니 로그인해 볼게요.
로그인을 하면 User Name : mario라고 나와있듯이 mario 계정임을 확인할 수 있네요.
요청/응답에서 취약점을 한번 있는지 확인해야겠네요. 클라이언트와 서버의 요청/응답으로 버프에 쌓인 로그를 한번 확인하기 위해 Proxy-HTTP history 탭에서 보러 가보죠.
여기 주소 보니깐 login.php라 쓰여있는 것을 보니 로그인 페이지네요.
요청을 보시면 제가 입력한 ID와 비밀번호가 들어있네요.
POST로 보내서 URL엔 ID와 비밀번호가 노출이 안된 것을 알 수 있습니다.
아래 로그는 응답을 보시면 아시겠지만 로그인된 페이지입니다.
login.php에서 index.php로 바뀌었네요.
요청을 보니 쿠키가 의심이 되네요. Repeater로 보내서 수정해 볼게요.
Repeater에서 아까 의심된 쿠키에 있는 UserID를 mario에서 admin으로 수정하고 Send 보내서 요청 보내봅시다.
그럼 로그인 계정이 mario가 아닌?
Congrats!!! 라며 저를 축하하고 있네요.
관리자계정을 탈취했습니다!!
방안
네트워크 경로를 암호화(SSL, VPN 등)하거나 쿠키 정보를 암호화하는 방법이 있습니다. 유추가 어려운 알고리즘 사용과 추측이 어려운 데이터를 입력 값으로 사용하여 쿠키 값을 생성하는 방법이 있습니다.
※ 위에는 제가 생각해낸 대책방안이기 때문에 구글링하면 더 많은 보안 대책방안이 있을 겁니다.
ㄲ!!
'개발자 (Developer) > Hacking CTF' 카테고리의 다른 글
(SQL Injection CTF 풀이1) Login Bypass 1 - 인증과 식별 1 (0) | 2023.04.26 |
---|---|
(SQL Injection CTF 풀이4) DB 데이터 추출 2 - Error Based SQL Injection (0) | 2023.04.23 |
(SQL Injection CTF 풀이3) DB 데이터 추출 1 - UNION SQL Injection (0) | 2023.04.22 |
(인증 CTF 풀이3) 로그인 우회 - Referer 변조 (0) | 2023.04.10 |
(인증 CTF 풀이2) OTP 우회 (0) | 2023.04.09 |
댓글