wargame.kr 포스트는 이해한 내용과 복습을 위한 목적으로 작성되었습니다.

이번 포스트에서는 fly_to_the_moon 문제에 대한 이해와 풀이를 진행해보도록 하겠습니다.


이번 문제에서는 앞서 소개드렸던 문제들보다 보다 추가적인 이해가 요구됩니다.


그래도 큰 어려움은 없으니 차근차근 설명해보도록 하겠습니다.



 

 문제 이해


문제는 다음과 같습니다.


문제에서는 javascript game이며, clear를 하거나 우회를하여 클리어하라고 말합니다.

저는 시간이 남아돌아서 게임좀 해보려는데 겁나 어렵더군요....


게임을 하다보면, 아래의 스코어와 재시작 버튼이 있는 것을 알 수 있습니다.

31337 스코어까지 어떻게 올리지... 하지 말고 fiddler를 켜서 문제를 살펴보도록 합시다.



 

 문제 풀이


문제에서 POST 데이터로 token과 score를 보내는 것을 볼 수 있습니다.

token은 주기적으로 바뀌는 인증데이터로 보이고, score는 우리가 조작해야 하는 값입니다.


그러나 아래와 같이 유효하지 않은 token을 가지고 score를 전송하면 토큰 에러를 뱉어냅니다.


토큰은 주기적으로 GET 메소드 형태로 응답이 돌아오게 됩니다.


때문에 토큰이 도착했다! 싶으면 바로 거기에 맞춰서 POST 형태의 데이터를 조작하여 보내주도록 합니다.



이로 인해 문제가 풀리게 됩니다.



+ Recent posts