UPDATED. 2018-08-17 18:00 (금)
글로벌 서비스로 축적된 노하우 공유, 라인게임 보안 세미나 개최
글로벌 서비스로 축적된 노하우 공유, 라인게임 보안 세미나 개최
  • 판교=변동휘 기자
  • 승인 2018.04.05 14:34
  • 댓글 0
이 기사를 공유합니다

 

글로벌 메신저 라인(LINE)은 4월 5일 경기도 성남 판교테크노밸리 소재 경기창조혁신센터 7층 별똥별홀에서 ‘라인게임 보안 어떻게 하나?’ 세미나를 개최했다.
 

이 행사는 게임개발자(사), 앱개발자, 글로벌 런칭을 준비하는 개발사(자), 보안 이슈가 있는 개발자를 대상으로 개최됐다. 라인 플랫폼을 통해 글로벌 시장에 진출한 게임들의 보안 관련 사례를 공유하고, 개발자들에게 정보를 제공하기 위해 마련됐다.

첫 세션은 라인게임 시큐리티 전상훈 발표자의 ‘Mobile Security Vision’으로 진행됐다. 지난해 일본 및 동남아에서 라인 게임은 약 8억 건의 다운로드가 이뤄졌으며, 1,500만 명 가량의 AU를 기록했다. 그 중 ‘디즈니 쯔무쯔무’는 7,000만 건, ‘레인저스’는 5,000만 건이 이뤄졌다. 특히 보안 관련 데이터는 200G에 달했다. 

이어 그는 게임 보안의 미션에 대해 설명했다. 기존에는 수동적인 반응, 로그 기반 보호가 주 패러다임이었다면, 라인게임은 보안사고 발생 이전에 위협 요소를 제거하는 능동적 사건 반응(Active Incident Response, 이하 AIR), 게임 릴리즈 이전에 보호하는 ‘사전 보호’를 중심으로 운영하고 있다. 이는 총 3단계로 진행되는데, 먼저 ‘검사’ 단계에서는 사전에 취약점을 제거하고 오픈 소스 라이선스와 관련된 문제를 미리 인지해 제거한다. 또한 난독화, 의심 이용자 정보 전달, 어뷰징 차단 등을 행하는 ‘보호’ 단계, 연관관계를 분석하는 등의 ‘모니터링’ 단계를 거친다. 

 

이어 라인 에어고(AIRGO) 리드 정명주 발표자는 라인게임의 실제 검수과정에 대해 설명했다. 라인게임은 출시 이전에 보안 검수 단계를 거치는데, 자동 앱 분석 시스템을 통해 난독화, 취약점 분석, 오픈소스 라이선스 등을 진행한다. 

먼저 난독화는 소스코드 등을 보기 어렵도록 하는 것으로, 해커로부터 앱을 안전하게 보호하기 위함을 판단하기 위한 과정이다. 코드 등의 데이터를 의미없는 배열로 치환하고, 더미 데이터를 삽입하는 등의 방식을 포함한다. 예를 들어 안드로이드 ELF 파일의 경우 섹션, 스트링, 심볼, 함수, 암호화, 시그니처 등을 관찰하게 된다. 유니티 PE 파일은 헤더, 엔트로피, msil, 시그니처를 체크해 난독화를 검증한다. MACH-O 파일은 애플의 검수 문제로 난독화 검수를 하지 않는다. 안드로이드 자바 소스코드가 들어있는 DEX 파일은 난독화가 가장 중요한 파일이다. 유효한 매니페스트 파일의 유무와 시그니처, 섹션, 구문 등을 검증하게 된다. 

 

또한 해킹 등의 문제를 야기할 수 있는 취약점에 대해서도 진단을 하게 된다. 디컴파일, 파싱(Parsing)을 통해 취약성을 점검하며, 디컴파일 시 드러나는 다양한 파일을 분석한다. 특히 DEX 파일은 소스코드가 들어있기에 가장 중요하게 다루며, smali 파일로 변환하는 과정에서 호출 메소드와 파라미터, 구현 등의 정보를 확인한다. 총 13가지의 요소를 자동 탐지하며, 이를 묶어 하나의 그룹으로 형성, 하나의 취약점으로 대응하는 방식을 취한다. 

오픈소스 라이선스의 경우, 영세 게임사들은 검증할 수 있는 인적 자원이 부족하다. 이에 라인게임에서는 미연의 사고를 방지하기 위해 서비스 차원에서 제공하고 있다. 앱 출시 시점에서 법무팀이 라이선스를 전량 검수하며, 깃허브, 소스포지, 구글코드 등을 참고해 DB를 업데이트하고 있다. 어떤 함수 등을 사용했는지 검증하며, 주로 DEX, ELF, MACH-O, PE 파일을 살펴본다. 이어 그는 라인게임이 강세를 보이는 일본, 태국, 말레이시아, 한국 등 6개국 구글플레이 톱 100의 취약점을 분석한 사례를 설명했다.

 

2번째 세션은 라인 에어아머(AIRARMOR) 리드 정상민 발표자의 ‘Mobile Client Protect’ 강연이 이어졌다. 먼저 그는 강연을 시작하며 개발자들은 어뷰저와의 싸움에 대해 신경쓰지 않지만, 앞으로는 개발자가 직접 신경써서 차단해야 한다고 강조했다. 부정한 방법을 사용해 게임 내 밸런스를 깨는 등 다양한 활동을 하지만, 해커 등 개발자들이 막아야 한다고 생각하는 어뷰저는 일부에 불과하다. 대부분은 치팅 툴을 사용하는 유형으로, 상대적으로 가벼운 축에 속하며 조금만 신경쓰면 관리할 수 있다. 하지만, 사업적으로 앱을 변조하는 어뷰저들에게 한 번 분석 당하면 아무래 패치를 해도 쉽게 뚫리기에, 초기에 보안을 하는 것이 중요하다는 것이 그의 설명이다. 

이어 그는 어뷰저들이 사용하는 방식에 대해 설명했다. 먼저 게임을 설치해 버그 등을 스캔하고, 기존 툴을 조합하는 방식으로 공격을 한다. 이렇게 해도 공격이 쉽지 않다면 본격적으로 앱을 분석하게 된다. 파일, 네트워크, 리소스, 버그 등 게임의 구성 요소들을 모두 분석하는데, 이는 암호화, TLS, 유효성 검사, 테스트 등으로 대응 가능하다. 리버싱의 경우 시간이 많이 걸리기에 해커들이 지루해하는 과정이지만, 사용 가능한 툴이 많기 때문에 쉽게 분석할 수 있다. 대부분은 시간을 단축하기 위해 바이너리 내의 심볼을 중심으로 공격을 진행하며, 자신이 관심 있는 부분(이득을 취할 수 있는 지점)에 집중하는 경향이 있다. 

 

하지만 방어하는 입장에서는 어려운 점이 많다. 모바일 앱 자체가 사용자 친화적인 샌드박스 환경이기 때문이다. 모바일 플랫폼이 발전하면서 제안하는 API가 늘어가고, 사용자 식별 역시 차단되는 추세다. 또한 아키텍처 역시 다양하게 지원해야 하는데, 어뷰저는 그 중 하나만을 골라 공격을 진행한다는 점도 방어를 어렵게 하는 요소다. 특히 안드로이드와 iOS를 모두 지원해야 하는 모바일 개발자의 경우 더욱 방어가 어려워진다. 또한 해커에게 크래시는 별 문제가 되지 않기에 좀 더 공격적인 성향을 띠게 되며, 치팅 툴도 자기보호를 하기 시작했다. 

이에 라인은 탐지와 난독화를 진행하며, 이를 모니터링을 위한 트랩으로 활용한다. 특히 그는 차단은 보안과 같은 의미가 아니며, 관리가 더욱 중요하다는 점을 강조했다. 보안을 위한 팁으로는 심볼이나 문자열 은폐, 커스텀 인코딩 제작 등을 추천했다. 

 

마지막으로 라인 이명재 발표자가 ‘실제 모바일 위협과 대응사례’를 주제로 발표를 진행했다. 라인 게임은 동명의 메신저 유저풀을 기반으로 자체 플랫폼과 연계돼 있다. 소셜기능과 사전예약, 미션 이벤트, 게임 내 통화가 마련돼 있으며, 라인 유저 보호와 어뷰저 대응을 보안의 목표로 한다. 릴리즈 형태는 퍼블리싱, 채널링, 세미퍼브로 구성되며 다양한 언어를 지원한다.

보안 라이프사이클은 기획 검토, 개발 단계에서의 가이드 및 컨설팅, 해커 입장에서의 보안검수, 릴리즈 후 모니터링으로 구성된다. 서비스 종료 시 환불처리나 백업 등도 포함된다. 관련 업무는 크게 보안 가이드라인 제공, 모듈 제공, 검수, 모니터링 및 데이터 분석 등 4가지가 있다. 이어 그는 각 단계에서의 보안 취약점 발견 및 대응을 실제 사례를 통해 설명했다. 특히 릴리즈 전 보안검수 및 취약점 고찰은 개인정보 노출가능성, 순위에 대한 영향, 매출 영향, 유저 재현 가능성, 취약점 공개 시의 우려 등을 고려해 이뤄진다는 점을 강조했다. 릴리즈 이후에는 임계치를 정해 이상유저를 감지하는 임계치 베이스와 정규분포 상 위치를 보는 스코어 베이스 방식으로 모니터링을 진행하며, 수집된 데이터를 분석해 이상 유저를 매일 탐지한다.

 

그는 어뷰징의 목적으로 금전적 이익과 자기과시를 꼽았으며, 주요 타입으로는 통화, 스코어, 아이템, 하트 등이 있다고 설명했다. 이에 대한 라인 측의 사후대응으로는 차단 및 경고, 아이템 회수, 원인조사 및 수정을 하고 있다고 말했다. 특히 차단의 경우 국가별 법률이 다르기에 대응이 달라질 수 있으며, 원인조사 측면에서는 취약점 수정을 진행하지 않는 경우도 있으며, 모니터링이 중요하다고 강조했다.

최근의 어뷰징 경향으로는 유니티 dll 변조가 많았는데, 유니티 3D로 제작된 타이틀이 많기 때문이라는 그의 설명이다. 또한 클라이언트 측에서 중요 연산이 많으며, Assembly-CSharp.dll의 디컴파일이 쉽다는 특징이 있다. 또한 iOS 바이너리 변조가 증가했는데, 중국 타오바오에서는 관련 상품을 판매하고 있다. 이어 라인 AIR를 활용한 치팅 대응 사례를 통해 자사의 보안 솔루션이 가진 강점과 플랫폼 보호를 위한 노력을 소개했으며, 보안 관련 해외 입건사례를 들어 옥션 치팅상품 및 대행, 환불 어뷰징 등 치팅 비즈니스에 대한 경각심을 강조했다.

 

이날 첫 강연에 나섰던 전상훈 발표자는 “4년간 보안 관련 업무를 하면서 관련된 이야기를 한 적이 한 번도 없었는데, 이번 행사를 통해 다양한 경험들을 공유하고자 한다”며 “이 모든 솔루션은 라인만을 위한 것도, 게임만을 위한 것도 아니며, 모든 앱들을 위한 것”이라고 말했다.

 

[경향게임스=변동휘 기자]


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.