안녕하세요??
자운대 고라니입니다.
이번 글에서는 wargame 6번 문제풀이를 해보겠습니다.
렛츠 기릿!
"자바스크립트로 만들어진 게임을 해킹해보아라!!"
흡사 라이덴과 똑같이 생겼다....;
게임을 시작해본다.
너무 빨리 뒤져서 게임이 진행되는 모습을 캡처하지 못했다.
레이저가 좌 우로 움직이고, 그 안에 있는 비행기를 레이저에 닿지 않게 요리조리 피하는 게임인데,
존나 어렵다. 31337점을 맞으라고 한다.
내 점수는 보시다시피 12점이다..;;
뭐 게임 빡고수면 31337점을 맞을 수 있지만
난 아닌가 보다.
일단 자바스크립트를 조작해서 문제를 풀어야 할 듯하다.
보이는 것처럼 뭔 말인지 하나도 못 알아먹겠다.
이는 자바스크립트 난독화를 시킨 게 분명하다.
일단 자바스크립트 난독화 해제 사이트를 찾아보았는데,
https://www.strictly-software.com/unpack-javascript
이 사이트가 가장 빠르고 좋은 듯하다.
접속해서 해당 소스코드를 복붙 해보자.
해제를 시킨다면 엄청나게 긴 소스코드가 나올 것이다.
여기서 중요한 소스코드만 따로 캡처로 저장했다.
아래쪽에도 코드가 엄청 많은데, 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 |
댓글