Security/드림핵

session-basic 문제풀이

SiriusJ 2025. 4. 21. 16:44
반응형

문제를 받아줍니다.

admin 계정의 패스워드가 FLAG 임을 확인할 수 있습니다.

코드를 보면, users 리스트에서 PW를 불러오고, 사용자가 입력한 패스워드와 if 문을 통해 비교를 합니다.

동일하다면 sessionid를 값으로 하는 session_storage를 username에 저장해줍니다. 그리고 cookie의 값을 sessionid로 저장해주고 반환해줍니다.

admin 함수에서는 session_storage의 값을 반환해주는 것을 확인할 수 있습니다.

admin

/admin으로 접속해보니, admin 계정의 세션id가 출력되는 것을 확인할 수 있습니다.

이제, burpsuite를 활용하여 admin으로 접속하도록 변조해봅시다.

open browser를 통해 http://host3.dreamhack.games:11012/login 에 들어가고, 아래와 같이 cookie에 해당하는 값을 직접 입력해준 후, forward를 해줍니다.

아래와 같이, FLAG 값을 뱉어내는 것을 확인할 수 있습니다.

 

즉, Session id 값을 확인하여 이를 쿠키값으로 변조하여 로그인하는 시도를 성공할 수 있습니다.

반응형