본 문제의 목표는 admin 계정으로 로그인을 성공하는 것이다.
위 코드를 보면 가장 먼저 계정이 guest와 admin이 있는 것을 알 수 있다.
guest의 경우 비밀번호가 guest인 것을 알 수 있으나 admin의 비밀번호는 FLAG로 되어있으며 알 수 없다.
index 엔드포인트 코드를 보면 request.cookies.get('username', None)이 코드가 쿠키에서 username을 가져오는 것을 알 수 있는데 어떤 뜻인지 확인해보기 위해 먼저 guest로 로그인 해보았다.
username과 비밀번호를 각각 guest, guest로 입력하면 로그인이 되어 위와 같은 페이지가 나온다.
guest계정이고, admin계정이 아니라는 것을 주는 것 같다.
쿠키를 확인해보면 쿠키의 이름은 username 값은 guest로 되어 있는 것을 확인할 수 있다.
즉, 위 index 엔드포인트에서 request.cookie.get이 뜻하는 것이 쿠키에서 username을 가져온다는 것이다.
그럼 쿠키 값을 admin으로 바꾼다면, 쿠키에서 admin계정의 쿠키를 가져오는 것이기 때문에 admin으로 로그인이 가능할 것이다.
해당 쿠키 값을 admin으로 바꾸고, 새로고침한다.
admin 계정으로 로그인되며 flag 값을 획득하였다.
728x90
반응형
'Web Hacking > Dreamhack' 카테고리의 다른 글
Level: 1 [session-basic] (0) | 2024.03.05 |
---|---|
Level: 1 [ROT128] (0) | 2023.09.11 |
Level: 1 [login-1] (0) | 2023.09.10 |
Level: 1 [Apache htaccess] (0) | 2023.09.09 |
Level: 1 [tmitter] (0) | 2023.08.27 |