
문제 링크
https://dreamhack.io/wargame/challenges/6
쿠키로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다.
users = {
'guest': 'guest',
'admin': FLAG
}
guest의 비밀번호가 guest인것을 확인하고 로그인을 진행하였더니 로그인이 되었습니다.
쿠키 값을 확인 해 보았더니 다음과 같이 설정됩니다:

쿠키가 단순히 유저 이름만 담고 있다는 점을 이용해,
쿠키 값을 admin으로 바꾸어 로그인 요청을 보내봅니다:
Cookie: admin
성공적으로 admin 인증 상태가 되었고, 플래그를 획득했습니다.
쿠키 값만으로 인증 상태를 조작할 수 있는 경우, 서버 쪽 검증 없이 인증 우회가 가능하다는 것을 알게 되었습니다.
guest의 쿠키 값을 관찰해 admin도 동일한 방식일 것이라 예측하는 과정을 통해,
보안 문제 해결에는 논리적 분석뿐만 아니라 직관과 실험도 중요하다는 걸 느꼈습니다.
CTF 및 웹 보안의 입문 단계에서 이해하기 좋은 문제였습니다.