I. 서론
온라인 게임 산업의 보안 이슈가 점점 확대되고 있으며 보안 이슈의 가장 큰 문제로는 게임 봇을 이용한 불량사용자의 현금거래를 들 수 있다. 현금거래는 온라인 게임 내의 게임머니를 수집하여 이를 현실 세계의 재화로 바꾸는 행위이다. 게임 봇을 이용한 불량사용자의 현금거래는 게임 내 경제 균형을 깨뜨리며, 이는 온라인 게임 사업에 큰 영향을 미친다.
게임 봇은 자동화된 불법 프로그램을 사용하여 사람없이 게임을 플레이 할 수 있도록 하는 프로그램이다. 게임 봇은 일반사용자에 비해 많은 시간을 플레이하기 때문에 게임머니를 얻는데 더욱 효율적이다. 봇의 확산과 함께 게임 봇은 개인에서 조직으로 점차 확장되었으며, 이러한 불량조직을 작업장이라 한다. 작업장은 게임머니를 통한 현금거래를 주목적으로 하는 전문적인 조직으로, 많은 수의 게임 봇을 이용하여 게임머니를 습득, 판매하여 게임 경제에 큰 영향을 미친다.
온라인 게임의 필수요소로 게임 플레이어들이 모여 그룹을 이루는 컨텐츠로 길드가 있다. 길드를 통해 게임 플레이어는 길드 창고 등의 편리한 컨텐츠와 게임을 편리하게 할 수 있는 효과를 부가적으로 얻을 수 있다. 대부분의 길드 컨텐츠는 일반 플레이어들이 이용하지만, 길드로 인한 부가적인 효과를 얻기 위해 작업장을 이루는 봇 길드가 존재한다. 봇 길드로 인해 온라인 게임의 경제 균형이 무너지며, 봇들을 통한 상대적 박탈감을 느낀 정상적인 사용자들의 이탈은 게임 수명을 단축시키기 때문에 온라인 게임 사업자는 손실을 안게 된다.
온라인 게임 사업자는 게임 내 보안을 위해 게임 봇을 탐지하며, 불량 사용자들의 계정을 제재하고 있다. 이러한 탐지 방법을 통해 많은 게임 봇을 탐지했지만, 제재된 게임 봇은 봇 길드의 일부분이다. 봇길드는 일부 계정이 탐지되더라도, 손쉽게 다른 계정 및 캐릭터를 길드에 추가할 수 있기 때문에 큰 효과를 얻을 수 없다. 봇 길드 탐지를 위해, 게임 봇으로 게임 내 소셜 커뮤니티인 길드를 구성하는 작업장을 봇 길드로 정의하고, 일반 길드와 봇 길드를 분리하여 봇 길드를 제재하는 방법이 필요하다.
본 연구에서는 작업장의 활동을 제재하기 위해 봇 길드를 이루는 작업장을 탐지하는 방법을 제안한다. 봇 길드 탐지를 위한 방법으로, 일반 길드와 봇 길드의 소셜 행위 패턴을 기반으로 국내 유명 온라인 게임 AION의 실제 데이터 샘플에 적용하여 분석하였다.
II. 관련 연구
게임 봇을 탐지하기 위해 많은 연구들이 이루어지고 있었으며, 사용된 방법론을 기반으로 여섯 가지로 분류하고 내용을 분석하였다. 분류된 방법론은 오랜 기간 연구된 사용자 행동기반, 이동경로 기반, 트래픽 기반, HOP (Human Observation Proofs) 기반, CAPTCHA (Completely Automated Public Test to tell Computers and Humans Apart) 기반의 다섯 가지 방법론과 최근 활발하게 연구 중인 소셜 네트워크 기반으로 나뉜다.
사용자 행동기반 탐지는 사람과 게임 봇의 행동 패턴에는 차이가 있을 것으로 예측하고, 플레이시간 및 소셜 네트워크 분석을 사용하는 방법이며[1-4], 이동경로 기반 탐지는 게임 봇은 프로그램으로 지정된 경로를 이용할 것을 기초로 한 분석 방법이다 [5,6]. 트래픽 기반 탐지는 패킷의 정보와 패턴을 이용하는 방법이며[7,8], HOP 기반 탐지는 사용자의 키보드, 마우스 입력 패턴을 분석하는 방법이다[9,10]. CAPTCHA 기반 탐지는 사람은 쉽게 해결할 수 있지만, 게임 봇은 해결할 수 없는 방법을 이용한 방법이다[11,12].
최근에는 소셜 네트워크 기반으로 한 연구들이 많이 이루어졌는데, 채팅 패턴 분석을 통한 봇 탐지와 거래 패턴 분석을 통한 봇 탐지, 파티플레이 분석을 통한 봇 탐지가 있다. 파티플레이는 온라인 게임에서 두 명 이상의 사용자들이 모여 같이 활동하는 그룹을 의미한다. 소셜 요소인 채팅과 거래, 파티플레이의 패턴에서 사람과 봇이 크게 다른 점이 나타나는 것을 이용한 방법이다[13-15]. 게임 봇 탐지 방법론에 따른 분류와 간단한 설명은 Table 1.과 같다.
Table 1. Taxonomy of game bot detection method
본 논문에서는 소셜 네트워크 기반인 길드를 중점으로 일반 길드와 봇 길드의 다양한 소셜 패턴의 차이를 이용한 봇 길드 탐지 분석 모델을 제안한다.
III. 봇 길드 탐지 방법론
3.1 봇 길드 탐지 모델
온라인 게임의 봇 길드 탐지를 위한 분석 모델을 제안한다. 제안하는 모델은 Fig. 1.과 같다.
Fig. 1. Bot guild detection model
첫 단계는 데이터 수집으로 게임 로그로부터 길드 가입/탈퇴 로그, 유저 간 거래 로그, 경매장을 통한 거래 로그, 채팅로그를 수집하였다.
다음 단계로, 길드 분석과 봇 길드 탐지에 필요한 피쳐 추출을 수행하였다. 길드 로그를 분석하여 길드 단위로 모든 길드들의 이름과 구성원을 포함하여 길드 데이터셋을 구성하였으며, 거래, 경매장, 채팅 로그로부터 의미있는 피쳐들을 추출하였다.
마지막으로, 봇 길드 탐지 모델의 성능을 평가하기 위해 random forest, naive bayesian, logistic regression, SVM (Support Vector Machine)의 네 가지 분류 알고리즘을 사용하여 봇길드를 탐지하였다. Random forest는 앙상블(ensemble) 학습 기법을 사용하는 모델이다. 앙상블 학습은 주어진 데이터로부터 여러 개의 모델을 학습한 다음, 예측 시 여러 모델의 결과들을 종합해 정확도를 높이는 기법을 말한다. 일반적으로 성능이 뛰어나고 과적합(overfitting) 문제를 피할 수 있는 분류 알고리즘이기 때문에 봇 길드와 일반 길드를 분류하기에 적합하였다. Naive bayesian은 피쳐들을 독립 가정으로 베이즈(bayes) 정리를 적용한 간단한 확률 분석 기법을 말한다. 대부분의 기계 학습에 사용되는 기법으로 다른 모델과의 성능평가를 위해 선정하였다. Logistic regression은 예측기의 선형 함수를 이용하여 이진 종속 변수의 결과를 예측하기 위해 사용된다. 일반 길드와 봇 길드를 구분하는 선형함수의 생성이 잘 이루어지는지 확인하기 위해 분류 알고리즘으로 선정하였다. SVM은 서로 다른 분류에 속한 데이터 간에 간격이 최대가 되는 평면을 기준으로 데이터를 분류하는 모델이다. Naive bayesian과 SVM은 기존의 기계학습에서 많이 사용하는 모델이며, 의사결정트리(decision tree)를 사용하는 random forest와 회귀 선형 분석을 통해 분류하는 logistic regression을 이용하여 봇 길드 탐지 성능을 비교하였다.
3.2 봇 길드 정의
길드 단위의 데이터셋으로부터 봇 길드를 정의하기 위해 봇 제재 리스트와 봇 제재 로그를 이용하였다. 봇 제재 리스트는 실제 온라인 게임 내에서 봇으로 제재된 게임 계정 리스트이며, 봇 제재 로그는 게임 봇의 패턴을 나타낸 계정에 남는 로그이다.
일반 길드와 봇 길드를 분류하기 위한 길드 분석 모델은 Fig. 2.와 같다. 길드 데이터셋에 제재 리스트와 제재 로그를 적용하여 일반 길드와 봇 길드를 분류하였다. 일반 길드와 봇 길드를 분류하기 위해 Fig. 2.에서 각 길드의 봇 비율을 측정하였다. 측정된 봇 비율에 대한 각 길드의 분포도는 Fig. 3.과 같다. 가로축은 각각의 길드를 의미하며, 세로축은 길드 내 봇의 비율을 나타낸다. 96%에 해당하는 길드의 봇 비율이 평균 7%이며 Fig. 3.의 아래 부분의 밀집된 점들을 나타낸다. 나머지 4%는 붉은 동그라미에 포함되는 점으로, 대부분이 90%에 가까운 봇 비율을 나타낸다. Fig. 3.에 나타난 길드 내 봇 비율의 분포를 통해 길드 내 봇 비율 80% 이상을 기준으로 하여 봇 길드를 정의하였으며, 그 외에는 일반 길드로 정의하였다.
Fig. 2. Process of guild analysis
Fig. 3. Bots ratio distribution in guild
3.3 피쳐 추출
온라인 게임 내 봇 길드를 탐지하기 위해, 일반 길드와 봇 길드를 구분 할 수 있는 피쳐들이 필요하다. 봇 길드는 일반 길드와 달리 현금거래를 위한 게임 내 재화 수집만을 목적으로 삼기 때문에, 각 길드에 대해서 소셜 요소인 유저 간 거래 로그, 경매장 거래 로그, 채팅 로그를 분석하여 차이점을 살펴보았다. 세 가지 종류의 로그를 분석을 통해 일반 길드와 봇 길드를 구분할 수 있는 피쳐들을 선별하고자 하였으며, 최종적으로 16개의 피쳐를 선정하였다. 선정된 피쳐는 Table 2.에 기술하였다.
Table 2. Features list
3.3.1 유저간 거래 로그
작업장을 이루는 봇 길드는 현금거래를 위해 각각의 게임 봇으로부터 벌어들인 재화를 소수의 계정으로 옮긴다[15].
재화를 모은 소수의 계정을 뱅커(banker)라고 하며, 주로 뱅커 계정을 통해 작업장은 돈을 벌어들인다. 이 과정에서, 봇 길드는 길드 내 봇 계정들 간의 거래가 많이 일어나는 반면, 길드 외의 계정들 간의 거래는 적게 일어난다. 그러나 일반 길드의 게임 플레이어들은 길드 내, 외 구분 없이 자유롭게 거래를 한다. 따라서 봇 길드와 일반 길드를 구분하기 위해 길드 내 거래비율, 길드 내 거래횟수, 길드 외 거래횟수를 피쳐로 사용하였다. 길드 내 거래비율은 길드 내 거래횟수 / 전체 거래횟수이다. Fig. 4.는 일반 길드와 봇 길드의 길드 내 거래비율에 대한 그래프로 일반 길드의 95%는 길드 내 거래비율이 60% 이하로 나타났지만, 봇 길드는 35%에 해당하는 길드만 거래 비율이 60% 이하를 나타내었다.
Fig. 4. Cumulative distribution function of trade ratio in guild
3.3.2 경매장을 통한 거래 로그
온라인 게임에는 경매장이라는 거래소가 있어, 대부분의 플레이어들은 경매장을 이용하여 게임 내 아이템을 구입, 판매한다. 봇 길드는 게임 봇을 이용하여 획득한 대량의 아이템을 경매장 판매를 통해 많은 수익을 얻는 반면, 경매장을 통한 구매가 적다. 따라서 봇 길드와 일반 길드를 구분하기 위해 경매장에 등록, 경매장 정산, 경매장 구입과 관련된 5개를 피쳐로 사용하였다. Fig. 5.는 일반 길드와 봇 길드의 경매장에 등록한 아이템 수량을 나타낸다. 일반 길드의 95%는 아이템을 20,000개 이하를 경매장에 등록하지만, 봇 길드는 50%에 해당하는 길드만 20,000개 이하를 등록하며, 나머지 50%는 20,000개 이상을 등록하는 것을 확인할 수 있다.
Fig. 5. Cumulative distribution function of amount of registered items at auction
3.3.3 채팅 로그
온라인 게임의 플레이어들은 대부분 다른 플레이어와 채팅을 하며 게임을 플레이한다. 채팅에는 일반 채팅, 파티 채팅, 길드 채팅 등이 있으며, 대부분의 일반 길드에 속한 플레이어는 길드 채팅을 통해 길드 플레이어와 의사소통한다. 반면에, 봇 길드는 게임 봇으로만 이루어져 있기 때문에, 주로 자동사냥과 채집 등의 활동만 할 뿐, 길드 채팅을 거의 하지 않는다[13]. 따라서 봇 길드와 일반 길드를 구분하기 위해 각각의 길드의 구성원에 대한 길드 채팅과 일반 채팅에 관련된 8개의 피쳐를 선정하였다. Fig. 6.은 일반 길드와 봇 길드의 길드 채팅에 참여하는 플레이어의 비율에 대한 분포도이다. 분포도를 보면 일반 길드는 대부분이 90% 이상의 유저가 길드 채팅에 참여하였으며, 봇 길드는 길드 채팅에 참여하는 유저가 없거나, 30% 이하의 길드 채팅을 하는 것을 확인할 수 있었다.
Fig. 6. Guild chatting user ratio distribution
IV. 실험 및 평가
본 논문에서 제안하는 봇 길드 탐지 모델을 국내 유명 온라인게임인 AION의 실제 데이터에 적용하여 그 효용성을 평가하였다. 게임 데이터로부터 수집한 길드 로그를 통해 길드 멤버의 구성이 10명 이상인 417개의 길드 데이터셋을 얻었으며, 이 중 401 개는 일반 길드, 16개는 봇 길드이다.
게임 데이터에서 수집한 거래, 경매장, 채팅 로그로부터 피쳐를 추출하여 417개의 길드 데이터셋에 random forest, naive bayesian, logistic regression, SVM의 분류기를 이용하였으며, 데이터셋을 랜덤하게 10등분하여 9개의 서브셋으로 학습하고 나머지 1개 서브셋으로 평가를 수행하는 10-fold cross validation 기법을 사용하여 봇 길드를 탐지하였다.
분류기에 따른 정확도는 Table 3.과 같이 나타난다. 각 분류기에 대하여 봇 길드 탐지에 대한 precision, recall, F-measure, 을 측정하였다. Precision은 분류된 봇 길드 중 실제 봇 길드의 비율을 의미하며, 이 값이 1에 가까울수록 오탐이 적다고 할 수 있다. Recall은 실제 봇 길드 중 제대로 탐지된 비율을 의미하며, 이 값이 1에 가까울수록 미탐이 없다고 할 수 있다. F-measure는 precision과 recall을 통합하여 정확도를 나타내는 지표로 두 값에 가중치 0.5를 주어 나타내었다. 분류기의 정확도는 전체 길드 중 일반 길드는 일반 길드로, 봇 길드는 봇 길드로 정확하게 탐지한 비율로 나타내었으며 random forest, naive bayesian, SVM 모두 높은 정확도를 얻을 수 있었다. Logistic regression의 경우 일반 길드의 경우 전의 세 가지 분류기보다 더 정확하게 분류하여 봇 길드 탐지에 대한 오탐을 줄일 수 있었다. 탐지에 사용된 네 가지 분류기의 정확도가 거의 유사하게 나왔는데, 이는 피쳐 선택단계에 있어서 봇 길드와 일반 길드를 구분할 수 있는 유의미한 피쳐들이 많이 포함되어 그 피쳐들로 인해 유사한 결과가 나온 것으로 보인다. 모든 분류기는 일반 길드와 봇 길드 분류에 있어 99% 이상의 높은 정확도를 보였으며, 그 중 logistic regression분류기를 이용한 탐지 결과는 99.7%의 가장 높은 정확도를 보였다.
Table 3. Evaluation results
결과적으로, 본 연구의 봇 길드 탐지 모델은 99.7%의 정확도를 나타내었으며, 봇 길드 탐지에 사용된 피쳐들은 대부분의 온라인 게임에서 추출할 수 있기 때문에 다른 온라인 게임에도 적용 할 수 있을 것으로 보인다.
V. 결론
본 논문은 온라인 게임에서의 일반 길드와 봇 길드를 구분하는 다양한 소셜 행위로부터 피쳐를 추출하여 높은 성능의 봇 길드 탐지 모델을 제안하였으며, 온라인 게임 내 작업장을 봇 길드를 통해 탐지하는 첫 번째 시도이다.
기존 연구는 온라인 게임 내 사냥 봇, 채집 봇 등의 하나의 게임 봇을 다양한 방법을 이용하여 탐지하였으나, 본 논문에서 제안한 봇 길드 탐지 모델은 하나의 봇이 아닌 길드 단위로 탐지할 수 있다. 이를 통해 다수의 게임 봇을 제재 및 관리 할 수 있으며, 탐지한 봇 길드를 통해 작업장의 일부 계정뿐만 아니라 전체적인 계정 리스트를 확보할 수 있다.
국내 유명 온라인 게임인 AION의 거래, 경매장, 채팅 패턴 분석을 통하여 봇 길드를 탐지할 수 있는 피쳐를 선정하였고, 제안한 탐지 시스템에 적용하였다. 또한, 다양한 분류기로 성능 비교를 하였으며, 봇길드 탐지에 있어서 99% 이상의 정확도를 보였다.
참고문헌
- Thawonmas, Ruck, Yoshitaka Kashifuji, and Kuan-Ta Chen, "Detection of MMORPG bots based on behavior analysis," Proceedings of the 2008 International Conference on Advances in Computer Entertainment Technology. ACM, pp. 91-94, Dec. 2008.
- M. Varvello and G.M. Voelker, "Second life: a social network of humans and bots," Network and Operating Systems Support for Digital Audio and Video. ACM, pp. 9-14, June. 2010.
- Hyukmin Kwon and Huy Kang Kim, "Self-similarity based Bot Detection System in MMORPG," Proceedings of the 3th International Conference on Internet. pp. 477-481, May. 2011.
- Jina Lee, Jiyoun Lim, Wonjun Cho and Huy Kang Kim, "In-game action sequence analysis for game BOT detection on the big data analysis platform," the 18th Asia Pacific Symposium on Intelligent and Evolutionary System, pp. 1-13, Nov. 2014.
- van Kesteren, Marlieke, Jurriaan Langevoort, and Franc Grootjen. "A step in the right direction: Botdetection in MMORPGs using movement analysis." Proc. of the 21st Belgian-Dutch Conference on Artificial Intelligence (BNAIC 2009), pp. 129-136, Oct. 2009.
- S. Mitterhofer, C. Platzer, C. Kruegel and E. Kirda, "Server-side bot detection in massively multiplayer online games," IEEE Security & Privacy, vol. 7, no. 3, pp. 29-36, June. 2009.
- K.T. Chen, J.W. Jiang, P. Huang, H.H. Chu, C.L. Lei, W.C. Chen, "Identifying MMORPG bots: A traffic analysis approach," EURASIP Journal on Advances in Signal Processing, vol. 2009, Jan. 2009.
- S. Hilaire, H. Kim, C. Kim, "How to deal with bot scum in MMORPGs?," Communications Quality and Reliability, pp. 1-6, June. 2010.
- R.V. Yampolskiy, V. Govindaraju, "Embedded noninteractive continuous bot detection," Computers in Entertainment, vol. 5, no. 4, pp. 1-11, Mar. 2008.
- P. Golle, N. Ducheneaut, "Preventing bots from playing online games", Computers in Entertainment, Vol.3, No.3, pp. 3-3, July. 2005.
- B Keegan, MA Ahmed and D Williams, "Sic Transit Gloria Mundi Virtuali? Promise and Peril in the Computational Social Science of Clandestine Organizing," WebSci Conference, pp. 1-8, June. 2011.
- K. Woo, H. Kwon, H. Kim, C. Kim and H.K. Kim, "What Can Free Money Tell Us on the Virtual Black Market," ACM SIGCOMM Computer Communication Review 41.4, pp. 392-393, Aug. 2011. https://doi.org/10.1145/2043164.2018484
- Kang, Ah Reum, Huy Kang Kim, and Jiyoung Woo. "Chatting pattern based game BOT detection: do they talk like us?," KSII Transactions on Internet and Information Systems (TIIS) 6.11, pp. 2866-2879, Nov. 2012. https://doi.org/10.3837/tiis.2012.10.007
- AR Kang, J Woo, J Park and HK Kim. "Online game bot detection based on party-play log analysis," Computers & Mathematics with Applications 65.9, pp. 1384-1395, May. 2013. https://doi.org/10.1016/j.camwa.2012.01.034
- Hyukmin Kwon, Kyungmoon Woo, Hyun-chul Kim, Chong-kwon Kim and Huy Kang Kim, "Surgical strike: A novel approach to minimize collateral damage to game BOT detection," Proceedings of Annual Workshop on Network and Systems Support for Games. IEEE Press, pp. 1-2, Dec. 2013.