본문 바로가기
category/웹해킹(wargame.kr)

wargame - 6

by 자운대고라니 2020. 7. 13.
반응형

안녕하세요??

자운대 고라니입니다.

이번 글에서는 wargame 6번 문제풀이를 해보겠습니다.

렛츠 기릿!


"자바스크립트로 만들어진 게임을 해킹해보아라!!"

흡사 라이덴과 똑같이 생겼다....;

게임을 시작해본다.

너무 빨리 뒤져서 게임이 진행되는 모습을 캡처하지 못했다.

레이저가 좌 우로 움직이고, 그 안에 있는 비행기를 레이저에 닿지 않게 요리조리 피하는 게임인데,

존나 어렵다. 31337점을 맞으라고 한다.

 

내 점수는 보시다시피 12점이다..;;

뭐 게임 빡고수면 31337점을 맞을 수 있지만

난 아닌가 보다.

일단 자바스크립트를 조작해서 문제를 풀어야 할 듯하다.

보이는 것처럼 뭔 말인지 하나도 못 알아먹겠다.

이는 자바스크립트 난독화를 시킨 게 분명하다.

일단 자바스크립트 난독화 해제 사이트를 찾아보았는데,

https://www.strictly-software.com/unpack-javascript

 

Javascript Unpacker Tool - Strictly Software

This Javascript unpacker tool has now been upgraded to allow it to unpack multiple eval statements. So if your packed code has itself been packed a few times it will loop through until it finds the original source code. If you want to test this multiple ev

www.strictly-software.com

이 사이트가 가장 빠르고 좋은 듯하다.

접속해서 해당 소스코드를 복붙 해보자.

해제를 시킨다면 엄청나게 긴 소스코드가 나올 것이다.

여기서 중요한 소스코드만 따로 캡처로 저장했다.

아래쪽에도 코드가 엄청 많은데, function 명의 secureGame인 것으로 보아 중요한 코드임을

알 수 있고, 여기서도 중요한 코드를 추출해보겠다.

var _0x8618x6 은 0으로 초기화돼있고

_0x8618x8이라는 함수가 동작될 때마다 ++된다고 설명돼있다.

정확하게 알진 못하지만 _0x8618x6이라는 변수가 score을 뜻한다고 추측해볼 수 있다.

그렇다면 var 0x8618x6을 31337로 놓고 console을 이용해 스크립트를 돌려보자.

이후 게임을 실행해보면 score가 31337로 시작하고 flag값이 나오는 걸 확인할 수 있다.

문제 해결!! ^^3


흠 뭐랄까;;

이렇게 푸는 게 맞겠죠? ㅎㅎ;;

코드를 완벽히 분석해서 풀면 더 좋겠지만,

저처럼 추측을 통해서 푸는 것도 나쁘진 않은 거 같습니다.

다른 풀이도 있는지 궁금하네요. 혹시라도 있으시면 댓글점;;

글은 이만 마치겠습니다. 감사합니다.

반응형

'category > 웹해킹(wargame.kr)' 카테고리의 다른 글

wargame - 8  (0) 2020.07.15
wargame - 7  (0) 2020.07.13
webhacking - 참고 사이트  (0) 2020.07.13
wargame - 4  (0) 2020.07.08
wargame - 3  (0) 2020.07.07
wargame - 2  (0) 2020.07.07
wargame - 1  (0) 2020.07.07
wargame 시작  (0) 2020.07.07

댓글