플레이어 데이터 해킹, 결제 해킹, 리패키징 등 다양한 해킹 방식 존재
난독화, 무결성 탐지 등 수단 통해 방어 가능...기본적인 보안 원칙 지켜야
[보안뉴스 위아람 기자] 한국콘텐츠진흥원이 펴낸 ‘2021 대한민국 게임 백서’에 따르면 게임산업 총 매출액은 2019년 15조5750억원에서 21.3% 성장한 2020년 18조8855억원에 달한다. 이 중 모바일 게임이 차지하는 비율은 57.4%로 한때 게임 산업을 지배했던 PC 게임의 비중은 절반 정도인 26%인 것과 비교된다.

[이미지=utoimage]
이처럼 모바일 게임이 대세가 된 지금, 게임 해킹은 돈을 노리기 위해 스마트폰의 권한을 탈취하는 범죄 수준에까지 도달했다. 과거 패키지 게임 시절에 ‘게임 위저드’ 툴을 이용해 플레이어 데이터를 조작하는 수준을 넘어선 것이다. 이 시절의 해킹은 그저 게임을 더 즐겁게 하기 위해서 놀이의 일부로써 이뤄졌다.
더 이상 게임 해킹을 놀이로만 볼 수 없는 시대가 됐다. 이에 여기서는 자주 발생되고 있는 모바일 게임 해킹의 주요 수단과 방어법에 대해 살펴봤다.
△플레이어 데이터 해킹
패키지 게임 시대부터 통했던 플레이어 데이터 해킹은 모바일 게임 시대에도 통용되고 있다. 플레이어 데이터 해킹은 ‘메모리 해킹’이라고도 불린다(신종 금융 사기 기법으로 금융정보를 빼내 돈을 탈취하는 ‘메모리 해킹’과는 다르다). 메모리 영역에 저장된 게임 진행에 영향을 끼치는 레벨이나 경험치, 스킬 수치를 변조하는 방식이다. 게임 소스를 변경하지 않고도 원하는 결과를 얻어낼 수 있어 난이도가 낮으면서도 치명적인 해킹 방법이다.
플레이어 데이터 해킹 방법은 해킹툴을 이용하거나 가상머신을 사용하는 방법으로 나뉜다. 해킹툴은 플레이어 데이터 해킹을 쉽게 할 수 있도록 돕기 때문에 몇 번의 단순한 조작만으로도 게임 내 수치를 변경할 수 있다. 가상머신의 경우 PC에서 모바일 환경을 구축해 애플리케이션을 구동하도록 만든 소프트웨어다. 이 기법을 이용하면 과거 PC 게임에서 이용했던 툴과 수법을 그대로 이용할 수 있기 때문에 별도의 기법을 만들어내지 않아도 된다.
플레이어 데이터 해킹은 주로 자신의 게임 플레이를 쉽게 하려는 공격기법이기 때문에 타인이나 게임 회사에 미치는 영향은 적다. 과거 놀이의 일부였던 게임 해킹의 성격에 부합하는 해킹 방식이라고 할 수 있다.
플레이어 데이터 해킹을 예방하려면 해킹 툴이 API 또는 프로세스의 메모리 파일 접근을 통해 애플리케이션 메모리에 접근하는 것을 탐지한 후 차단하는 기능이 필요하다. 이러한 기능을 추가하면 애플리케이션 내 중요한 정보의 흐름을 파악할 수 있는 디버깅과 중요 정보를 탈취하는 덤핑에 대한 방어도 가능해진다.
△리패키징
플레이어 데이터 해킹보다 좀 더 악의적인 해킹 방식으로는 리패키징이 있다. 휴대폰에서 개임 애플리케이션-APK 파일을 추출하고 리패키징 작업을 거쳐 코드를 바꾼 후, 다시 배포하는 방식이다. 주로 무료 게임의 수입원인 광고를 삭제하거나 해커가 이득을 얻을 수 있는 광고로 대체하는 방식으로 리패키징이 이뤄지곤 한다.
리패키징을 막기 위해서는 난독화를 통해서 변수나 함수를 변경하는 방식이 통용된다. 하지만 난독화 기술을 적용하기 위해서는 별도의 보안 인력이 필요하기 때문에 1인으로 이뤄진 중소 게임사의 경우에는 시도하기 어려운 방법이다. 난독화를 이용할 경우에는 시중에 나와있는 솔루션을 쓰는 것이 좋다.
무결성 탐지도 리패키징을 막을 수 있는 수단 중 하나다. 무결성 탐지는 애플리케이션 파일이 개발자가 배포한 상태의 파일인지 아니면 다른 사람이 변조한 파일인지 파악하는 기능이다. 현재 실행 중인 애플리케이션이 개발자가 직접 배포한 것이 맞는지 검사함으로써 해킹을 방어할 수 있다. 게임 내 광고를 변경하는 경우에도 무결성 탐지를 이용해 방어한다.
△인앱 결제 우회
인앱 결제 우회도 자주 사용되는 해킹 방식이다. 최근 출시되고 있는 많은 모바일 게임들은 게임 내 아이템을 결제하는 방식으로 수익을 창출한다. 해커들은 이를 공격해 무료로 모바일 게임을 즐기려고 한다. 인앱 결제 우회에도 해킹 툴을 사용하는 방식과 결제 과정을 변경해 인증을 우회하는 공격 방식이 있다.
인앱 결제 우회는 기존에 나와 있는 해킹 툴을 사용하면 간단하게 목적을 달성할 수 있다. 결제 과정을 공격하는 방식은 조작된 패킷을 이용해 불법적인 방식으로 아이템을 지급받는 방식으로 이뤄진다. 이러한 해킹 방식은 제대로 게임 비용을 지불하고 즐기는 보통 유저들에게 영향을 미친다. 해당 해킹 방식이 일반화되면 게임사들은 정상적으로 게임을 운영하기가 힘들어진다.
△결제 해킹
결제 해킹은 악의적으로 타인의 계정을 도용해 아이템을 사는 등의 행위를 가리킨다. 많은 피해자들이 수백만원에 달하는 금액의 결제 문자를 받고 놀라게 된다. 예를 들어 구글 컨텐츠 이용료는 구글 이메일과 비밀번호만 연결해두면 결제가 되는 시스템이다.
이는 핸드폰 소액 결제와 별도의 시스템으로 움직이기 때문에 계정이 도용될 경우 속수무책으로 당하게 된다. 인터넷 사용에 익숙하지 않은 장년층이나 급변하는 상황에 대처하기 힘든 유년층이 공격당하면 큰 금전적 손실을 입게 된다. 계정마다 비밀번호를 다르게 하고 주기적으로 변경하는 일반적인 보안 상식만 지켜도 이를 방지할 수 있다. 그러나 스미싱 같은 공격 기법에 의해 계정 정보가 유출된 경우에는 손 쓸 방법이 없다.
일단 피해를 입은 경우에는 결제 문자를 잘 보관해두고 플랫폼 업체에 환불 요청을 해야 한다. 이 과정에서 해당 계정이 부정하게 사용됐다는 것을 증명해야 하기 때문에 때로는 환불 요청이 받아들여지지 않는 경우가 있다.
△스피드 해킹
스피드 해킹은 시스템의 시간 관련 정보를 변경해 캐릭터의 동작으로 빠르게 혹은 느리게 변형하는 해킹이다. 이는 개인의 조작 실력이 승패에 밀접한 연관이 있는 경우 스피드 해킹을 통해 게임 캐릭터의 동작 속도를 조절하는 경우다. 이 해킹 방식도 대개 툴을 사용하기 때문에 해당 툴을 차단하거나 해당 기능을 차단하는 방식으로 방어한다.
게임 회사 측에서는 루팅을 감지하거나 블랙리스트로 해킹 툴을 감지하는 방식으로 해킹을 예방한다. 하지만 모바일 해킹이 다른 게임에 비해 손쉽다는 점 때문에 모바일 해킹은 지금 이 시간에도 쉴새 없이 이루어지고 있다. 모바일 게임은 PC 게임에 비해 수명이 짧기 때문에 개발에 많은 시간이 소요된다. 자연스럽게 보안 기술에는 소홀해질 수밖에 없다.
게임을 해킹하는 수법에는 게임 애플리케이션이 아니라 서버를 직접적으로 공격하는 것도 있다. 이런 해킹은 오랜 시간동안 준비해야 할 뿐만 아니라 유사한 공격을 당해온 게임 업체와 클라우드 서비스 제공자들이 대비를 철저히 하기 때문에 애플리케이션을 공격하는 것보다 훨씬 더 어렵다.
대개 모바일 게임을 공격하는 해커들은 기존에 나와 있는 해킹 툴을 이용하기 때문에 알려진 해킹 툴을 탐지하고 알려지지 않은 해킹 툴로부터의 접근을 차단하는 방식으로 방어를 한다. 해킹 툴을 효과적으로 막기 위해서는 해킹 툴이 제공하는 플레이어 데이터 해킹, 스피드핵, 결제 우회와 같은 대표적인 기능에 대한 방어도 필요하다.
특히, 결제 우회의 경우 게임 애플리케이션 결제 시에 발급받은 인앱 결제 영수증을 게임 서버로 보내 유효성을 체크함으로써 방어가 가능하다.
[위아람 기자(sw@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>