게임가디언 |
1. 개요
GameGuardian은 Android 모바일 게임을 변조할 수 있는 프로그램이다. 2012년에 출시되었고, LUA 언어를 기반으로 한다.루팅이 된 휴대폰만 사용 가능하다. 단, 가상 머신(Virtual Machine, Emulator) 혹은 가상 공간 (Virtual Space) 등의 앱을 사용하면 루팅 없이도 사용할 수 있다.
안드로이드에서도 가상 머신을 사용할 수 있다. VPhoneGaGa, VMOS, X8 Sandbox 등의 앱을 사용하는 방식이다.
2. 상세
상술했듯이, GameGuardian은 게임을 변조하는 앱이다. Cheat Engine처럼 게임의 메모리 주소를 찾아 그 값을 변경하는 방식이다. 예를 들자면,- 게임 안에서 재화 100개를 가지고 있는다.
- GameGuardian을 실행하여 숫자 '100'을 검색한다.
- 재화의 정확한 주소를 찾기 위해 상점에 가서 아이템을 구매한다.
- 변경된 재화의 값을 입력하고 '수정' 버튼을 누른다.
- 만일 뜨지 않는다면, 계속해서 산 다음 매번 변경된 값을 입력하여 수정한다.
- 값을 찾았다면, 그 값을 자신이 원하는 대로 수정한다.
GameGuardian은 변수 검색 시 타입을 지정할 수 있는데, 대표적으로는 A:Auto, D:Dword, Q:Qword, B:Byte F:Float 등이 있다. Auto의 경우 입력값에 따라 적절한 타입을 사용하며 Dword는 정수값, Qword는 그보다 큰 숫자, Byte는 작은 숫자, Float는 소수점이 있는 숫자로 이해하면 편하다.
유튜브에서는 냥코 대전쟁이나 Roblox, 카파킹[1] 등을 주제로 한 해킹 영상이 많이 올라온다.
3. 문제점
이러한 프로그램은 게임 제작사에 막대한 피해를 주며, 따라서 적발 시 계정 영구 정지, 고발 등 핵을 사용한 자신에게도 피해가 올 수도 있다.온라인 게임은 거의 해킹이 불가능하다. 서버와 통신을 하지 않거나, 통신을 해도 장치에만 값을 저장하는 게임은 값 변조가 쉽지만, 이외 브롤스타즈, 배틀그라운드 등 대부분의 온라인 서버형 게임은 서버에서 데이터를 저장하기 때문에 아무리 클라이언트에서 값을 변경해도 실제 서버의 값은 변경되지 않는다. 오히려 이 변경사항을 감지해 해킹 시도를 확인, 계정만 정지될 수 있다.
오프라인 게임 역시 해킹을 방지하기 위해 주소의 값을 뒤죽박죽 섞어놓고, 메모리 값을 암호화하는 등 보안 작업을 하고 있다. 상술했던 보석 값을 예로 들면, 100을 저장하는 대신, 연산을 거친 다른 값을 저장하는 식이다. 이경우 아무리 100을 검색해도 진짜 보석값이 저장된 메모리 주소는 나오지 않는다. 다만 이 역시 초기값 모름을 선택한 뒤 보석을 소모하며 변경되는 값을 체크하는 것으로 우회할 수 있다.
또한 일부 게임은 GameGuardian을 사용하지 못하게 감지한다. 하지만 GameGuardian은 임의의 앱 이름으로 재설치를 진행하는 방법으로 감지를 우회하고 있다.
이외에도 스크립트, 로더 등 다양한 방식의 해킹 방법이 존재한다.
4. 피해 사례
자세한 내용은 데스티니 차일드/사건 사고 문서 참고하십시오.2021년 데스티니 차일드 네이버 공식 카페에 중국인으로 추정되는 유저가 이 앱을 사용해 값을 변조하는 영상을 업로드하며 단속을 요청하며 논란이 되기도 했다.
[1] 이쪽은 차량의 외관이나 성능을 뜯어고치는 경우가 많다.