KR101725067B1 - 온라인 게임의 비정상 유저 검출 방법 및 시스템 - Google Patents

온라인 게임의 비정상 유저 검출 방법 및 시스템 Download PDF

Info

Publication number
KR101725067B1
KR101725067B1 KR1020150068167A KR20150068167A KR101725067B1 KR 101725067 B1 KR101725067 B1 KR 101725067B1 KR 1020150068167 A KR1020150068167 A KR 1020150068167A KR 20150068167 A KR20150068167 A KR 20150068167A KR 101725067 B1 KR101725067 B1 KR 101725067B1
Authority
KR
South Korea
Prior art keywords
user
bot
suspicious
transaction
program
Prior art date
Application number
KR1020150068167A
Other languages
English (en)
Other versions
KR20160134309A (ko
Inventor
김윤동
임윤섭
Original Assignee
주식회사 엔씨소프트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엔씨소프트 filed Critical 주식회사 엔씨소프트
Priority to KR1020150068167A priority Critical patent/KR101725067B1/ko
Publication of KR20160134309A publication Critical patent/KR20160134309A/ko
Application granted granted Critical
Publication of KR101725067B1 publication Critical patent/KR101725067B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

온라인(on-line) 게임에서 게임 재화의 비정상 거래를 수행하는 비정상 유저를 검출하기 위해, 기존 방식으로 검출된 데이터를 기반으로 봇 의심 유저를 선별한 후, 온라인 게임에서 발생하는 거래 정보를 통해 자동으로 봇 의심 유저의 범위를 확대하고, 이들 봇 의심 유저에 대한 프로그램 로그 및/또는 거래 로그를 분석하여 실시간으로 봇 유저 및 봇 연관 유저를 검출하는 방법 및 시스템이 개시된다.

Description

온라인 게임의 비정상 유저 검출 방법 및 시스템 {Method and system for detecting abnormal user in on-line game}
본 발명은 온라인(on-line) 게임에서 봇(BOT) 프로그램을 사용하여 게임 재화의 비정상 거래를 수행하는 봇 유저 및 봇 연관 유저를 포함하는 비정상 유저를 검출하는 방법 및 시스템에 대한 것이다.
온라인 게임의 게이머들은 온라인 게임 내에서 플레이어 캐릭터를 조작하여 게임을 진행하게 되며, 게임 플레이 과정에서 아이템을 획득하거나 게임 내에서 통용되는 화폐인 게임 머니를 지불하여 게임의 NPC(Non-Player Character)로부터 아이템을 구입하기도 한다. 아이템과 게임 머니 같은 것들을 게임 재화라고 하는데, 게임 내에서 플레이어들 간에 이들 게임 재화를 거래하는 경제활동이 이루어지고 있다. 온라인 게임 내에서 플레이어들 간의 게임 재화 거래 채널에는 교환창, 우편(택배), 경매(시장) 등이 있다.
아이템과 게임 머니는 온라인 게임의 진행을 용이하게 해 줄 뿐만 아니라, 게임의 즐거움을 배가시키는 요소로서 일부 인기있는 MMORPG(Massively Multiplayer Online Role Playing Game)의 경우에는 게임 내 희귀 아이템이나 게임 머니를 게이머들끼리 실제 현금으로 사고파는 일이 벌어지기도 한다.
아이템이나 게임 머니의 오프라인 상의 현금 거래가 빈번하게 이루어지면서 아이템이나 게임 머니를 자동으로 수집하는 봇(BOT) 프로그램이 기승을 부리고 있다. 또한, 다수의 컴퓨터를 구비하여 집단적으로 봇 프로그램을 구동함으로써 대량으로 아이템이나 게임 머니를 수집하고 이를 일반 게이머들에게 판매함으로써 수익을 올리는 이른바 작업장이 등장하기도 하였다. 봇 프로그램이나 작업장에 속하는 뱅커(banker) 캐릭터는 비정상적으로 많은 수의 플레이어 캐릭터들로부터 게임 머니를 모으며, 이러한 비정상 유저들은 온라인 게임의 정상적인 운영에 지장을 주고 있다.
봇 프로그램을 사용하는 봇 유저(BOT user)를 탐지하기 위해 패턴 기반 프로그램 탐지와 사용자 행동 기반 탐지 방법이 사용되고 있다.
패턴 기반 프로그램 탐지 방법에 따르면, 온라인 게임 운영자는 미리 봇 프로그램을 확보하여 분석함으로 봇 프로그램의 패턴을 입수할 필요가 있으며, 보안 프로그램을 통해 봇 의심 계정 및 사용 프로그램을 추출하고, 추출된 프로그램으로부터 봇 프로그램의 패턴을 추출함으로써 봇 프로그램을 탐지하게 된다.
사용자 행동 기반 탐지 방법에 따르면, 게임 유저들의 행동 로그를 기반으로 봇 프로그램을 사용하는 것으로 의심되는 봇 의심 유저를 분석하고 봇의 행동 패턴에 해당하는 패턴으로 활동하는 봇 유저를 추출하게 된다.
그러나, 상기와 같은 종래의 방법에 의하면 실시간으로 봇 유저를 검출하기 어렵고 봇 유저들 간의 상관관계를 파악하기 힘들며, 통상적인 봇 유저 외에 작업장, 뱅커 캐릭터, 게임 재화를 집중적으로 모으는 역할을 하는 이른바 봇의 여왕벌 등 봇과 연관된 비정상 유저들까지 파악하는데 어려움이 있다.
본 발명은 상기와 같은 종래 기술의 문제점을 해소하기 위한 것으로, 기존의 방법에 의해 봇 프로그램을 사용하는 것으로 의심되는 봇 의심 유저를 선별하고, 이후 온라인 게임 내에서 발생하는 거래 정보를 통해 봇과 연관된 것으로 의심되는유저를 검출함으로써 실시간으로 봇 의심 유저를 확대하고, 실시간으로 봇 의심 유저들의 봇 프로그램 사용 여부를 검출하는 비정상 유저 검출 방법 및 시스템을 제공하기 위한 것이다.
또한, 본 발명은 봇 의심 유저들의 거래 정보를 분석함으로써 자동으로 봇 의심 유저 목록의 범위를 확대하고, 봇 의심 유저들 간의 상관관계를 확보할 수 있는 비정상 유저 검출 방법 및 시스템을 제공하기 위한 것이다.
또한, 본 발명은 봇 의심 유저들의 거래 정보를 통한 분석과 보안 프로그램을 통한 스캔 결과를 조합하여 더 효율적으로 봇 유저 및 봇 연관 유저를 검출할 수 있는 비정상 유저 검출 방법 및 시스템을 제공하기 위한 것이다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 온라인 게임의 비정상 유저를 검출하는 방법은, 봇 의심 유저로 판단되는 적어도 하나의 유저를 봇 의심 유저 목록에 초기 등록하는 단계와, 상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 거래 상대방을 상기 봇 의심 유저 목록에 추가로 등록하여 상기 봇 의심 유저 목록을 확대하는 단계와, 상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득하는 단계와, 상기 획득된 봇 의심 프로그램에 대한 데이터를 이용하여 봇 유저를 검출하는 단계를 포함할 수 있다.
상기 비정상 유저 검출 방법은, 상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 상기 거래에 대한 데이터를 제1 로그에 적재하는 단계와, 상기 제1 로그에 적재된 거래 데이터를 이용하여 온라인 게임 내 재화흐름 관계도를 생성하는 단계와, 상기 생성된 재화흐름 관계도를 이용하여 봇 의심 유저를 추출하고 추출된 봇 의심 유저를 상기 봇 의심 유저 목록에 추가 등록하는 단계를 더 포함할 수 있다.
상기 봇 의심 프로그램에 대한 데이터를 획득하는 단계는, 상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트로 봇 의심 프로그램 추출 명령을 전송하는 단계와, 상기 명령에 대한 응답으로, 상기 게임 클라이언트의 보안 프로그램에 의해 확인된 봇 의심 프로그램 로그를 수신하는 단계와, 상기 수신된 봇 의심 프로그램 로그를 제2 로그에 적재하는 단계를 포함할 수 있다.
상기 봇 유저를 검출하는 단계는, 상기 제2 로그에 적재된 봇 의심 프로그램 로그 중 상기 제1 로그의 분석에 의해 추출된 봇 의심 유저에 해당하는 로그에서 봇 유저를 확인하는 단계를 포함할 수 있다.
상기 봇 의심 유저 목록을 확대하는 단계와 상기 거래 데이터를 제1 로그에 적재하는 단계는, 온라인 게임에서 유저들 간의 게임 재화 거래에 대응하는 이벤트가 발생될 때마다 수행될 수 있다.
상기 비정상 유저 검출 방법은, 상기 생성된 재화흐름 관계도를 이용하여 봇 프로그램은 사용하고 있지 않지만 봇 유저와 관계가 있는 봇 연관 유저를 추출하는 단계를 더 포함할 수 있다.
상기 비정상 유저 검출 방법은, 상기 생성된 재화흐름 관계도를 이용하여 복수의 봇 의심 유저 또는 봇 유저로부터 게임 재화를 모으는 봇 의심 유저 또는 봇 유저를 추출하는 단계를 더 포함할 수 있다.
상기 비정상 유저 검출 방법은, 상기 봇 의심 유저 목록에 등록된 유저들 중 봇 프로그램을 사용하고 있는 봇 유저 또는 봇 유저와 관계가 있는 봇 연관 유저가 아니라 판단되는 유저를 상기 봇 의심 유저 목록으로부터 제거하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에 따른 온라인 게임의 비정상 유저 검출 시스템은, 봇 의심 유저 목록을 저장하는 봇 의심 목록 저장 수단과, 봇 의심 유저로 판단되는 적어도 하나의 유저를 상기 봇 의심 유저 목록에 초기 등록하는 봇 의심 유저 초기화 수단과, 상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 거래 상대방을 상기 봇 의심 유저 목록에 추가로 등록하여 상기 봇 의심 유저 목록을 확대하는 봇 의심 유저 확대 수단과, 상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득하고, 상기 획득된 봇 의심 프로그램에 대한 데이터를 이용하여 봇 유저를 검출하는 봇 검출 수단을 포함할 수 있다.
상기와 같은 본 발명에 의하면, 게임 재화의 거래 발생시마다 자동으로 봇 의심 유저를 획득할 수 있으므로, 온라인 게임의 진행 중 실시간으로 봇 의심 유저들에 대한 분석을 수행함으로써 봇 유저를 검출하여 대응할 수 있게 된다.
또한, 본 발명에 의하면 봇 의심 유저들 간의 상관관계를 확보할 수 있으므로 봇 유저와 봇 연관 유저를 쉽게 검출할 수 있다.
또한, 본 발명에 의하면 봇 의심 유저의 거래 분석에 의해 봇 의심 유저 목록을 지속적으로 갱신할 수 있으며, 거래 로그 분석과 보안 프로그램에 의한 봇 프로그램 스캔을 조합하여 효율적으로 비정상 유저를 검출할 수 있다.
도 1은 온라인 게임의 일반 유저와 비정상 유저를 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 비정상 유저 검출 시스템의 구성을 설명하기 위한 기능 블록도이다.
도 3은 본 발명의 일 실시예에 따른 비정상 유저 검출 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 다른 실시예에 따른 비정상 유저 검출 시스템의 구성을 설명하기 위한 기능 블록도이다.
도 5는 본 발명의 일 실시예에 따른 재화흐름 관계도를 설명하기 위한 도면이다.
도 6은 도 5의 재화흐름 관계도에서 작업장 부분을 확대한 도면이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...수단", "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 온라인 게임의 일반 유저와 비정상 유저를 설명하기 위한 도면이다.
도 1을 참조하면, 게이머들은 PC, 스마트폰 등의 단말에 설치된 게임 클라이언트를 이용하여 온라인 게임 서버(100)에 접속하여 온라인 게임을 진행한다. 게이머들은 대부분 정상적인 방법으로 온라인 게임을 즐기는 일반 유저군(110)에 속하나, 일부는 다수의 컴퓨터를 구비하여 집단적으로 봇 프로그램을 구동함으로써 대량으로 아이템이나 게임 머니를 수집하고 이를 일반 게이머들에게 판매함으로써 수익을 올리는 이른바 작업장(120)에 속하는 유저일 수 있다.
작업장(120)에는 봇 프로그램을 구동하는 봇 유저들(122, 123, 124, 125)이 포함되며, 이들 중에는 재화를 집중적으로 모으는 역할을 하는 이른바 여왕벌이 존재할 수 있다. 또한, 작업장(120)에는 봇들이 모은 게임 재화를 취합하는 뱅커(121)가 포함될 수 있다.
본 발명에서 봇 유저는 봇 프로그램을 구동하는 유저를, 봇 의심 유저는 봇 유저로 추정되는 유저를 의미한다. 또한, 봇 연관 유저는 봇 프로그램을 구동하지는 않지만 봇 유저로부터 게임 재화를 취합하거나 봇 유저를 지휘하는 계정을 사용하는 유저를 의미한다. 또한, 비정상 유저는 봇 유저 및 봇 연관 유저를 포함하여 비정상적인 거래를 행하는 유저를 의미하며, 정상적인 방법으로 게임을 즐기는 일반 게이머를 제외한 유저를 말한다.
도 2는 본 발명의 일 실시예에 따른 비정상 유저 검출 시스템의 구성을 설명하기 위한 기능 블록도이고, 도 3은 본 발명의 일 실시예에 따른 비정상 유저 검출 방법을 설명하기 위한 순서도이다.
도 2를 참조하면, 비정상 유저 검출 시스템(200)은 봇 의심 유저들의 목록을 저장하기 위한 봇 의심 유저 목록 저장 수단(210), 봇 의심 유저 목록 저장 수단(210)에 봇 의심 유저를 등록하는 봇 의심 유저 초기화 수단(220) 및 봇 의심 유저 확대 수단(230), 봇 의심 유저 목록을 이용하여 봇 유저를 검출하는 봇 검출 수단(240)을 포함할 수 있다.
도 2 및 도 3을 참조하면, 봇 의심 유저 초기화 수단(220)은 온라인 게임 유저들 중에서 봇 의심 유저로 판단되는 적어도 하나의 유저를 추출하여 봇 의심 유저 목록에 초기 등록한다(S302). 봇 의심 유저 목록 저장 수단(210)에 저장되는 초기 봇 의심 유저의 추출 방법은 특정 방법으로 한정되지 않으며, 게임 클라이언트에 설치된 보안 프로그램을 이용하여 봇 프로그램의 패턴을 추출하는 방법, 온라인 게임 유저들의 행동 로그를 사후 분석하여 봇 유저의 행동 패턴을 가지는 유저를 봇 의심 유저로 판단하는 방법 등이 사용될 수 있다.
다음으로, 게임 유저들 간의 게임 재화 거래가 발생하면, 봇 의심 유저 확대 수단(230)은 상기 거래가 봇 의심 유저 목록에 등록된 유저와의 거래인지 확인한다. 봇 의심 유저 목록에 등록된 유저와의 거래인 경우, 봇 의심 유저 확대 수단(230)은 상기 게임 재화 거래의 거래 상대방을 봇 의심 유저 목록 저장 수단(210)에 저장함으로써 봇 의심 유저 목록에 추가로 등록하며, 결과적으로 기존의봇 의심 유저 목록이 확대된다(S304). 이때 거래 상대방이 봇 의심 유저 목록에 기존재하는 유저인 경우는 봇 의심 유저 목록의 확대 없이 종료 단계로 나아갈 수 있다.
거래 상대 유저가 봇 의심 유저 목록에 추가로 등록된 경우, 봇 검출 수단(240)은 추가 등록된 유저의 게임 클라이언트로 봇 프로그램 추출 명령을 전달하고, 추출 명령에 대한 응답으로써 게임 클라이언트의 보안 프로그램에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득한다(S306).
봇 검출 수단(240)은 상기에서 획득한 봇 의심 프로그램에 대한 데이터를 분석하여 봇을 사용하는 봇 유저를 검출한다(S308).
대부분의 온라인 게임 서버는 유저의 액티비티에 대한 데이터를 포함하는 로그를 저장한다. 이 로그를 사후적으로 분석함으로써 특정 유저가 게임 내 특정 좌표에서 몹을 공격했다거나, 아이템을 획득했다거나, NPC(Non-Player Character)와 인터랙션(interaction)했다거나, 다른 유저와 아이템이나 게임 머니를 주고 받았다는 등의 정황을 파악할 수 있다.
본 발명의 일 실시예에 따른 비정상 유저 검출 시스템은 이러한 온라인 게임 서버에 구현되거나, 온라인 게임 서버와 통신 가능한 별도의 서버로 구현될 수도 있다. 또한, 온라인 게임 서버는 물리적으로 단일한 서버로 이루어질 수도 있지만, 다수의 게임 클라이언트와의 동시 접속을 담당하는 서버, 로그를 저장하는 서버 등 복수의 서버로 구성될 수도 있는바, 본 발명에 따른 비정상 유저 검출 시스템도 반드시 물리적으로 단일한 서버 내에 구현되어야 하는 것은 아니다.
도 4는 본 발명의 다른 실시예에 따른 비정상 유저 검출 시스템의 구성을 설명하기 위한 기능 블록도이다.
도 4를 참조하면, 비정상 유저 검출 시스템은 봇 의심 유저들의 목록을 저장하기 위한 봇 의심 유저 목록 저장 수단(420), 봇 의심 유저 목록 저장 수단(420)에 봇 의심 유저를 등록하는 봇 의심 유저 초기화 수단(410) 및 봇 의심 유저 확대 수단(430), 봇 의심 유저에 관련된 거래 로그 및 봇 의심 프로그램 로그를 저장하기 위한 로그 저장 수단(450), 로그 저장 수단(450)의 로그를 분석하여 봇 유저 및 봇 연관 유저를 검출하기 위한 봇 검출 수단(440)을 포함할 수 있다.
봇 의심 유저 목록 저장 수단(420)에 저장되는 봇 의심 유저 목록은 초기 봇 의심 유저 목록(421)과 이를 기초로 생성되고 확대되는 확대된 봇 의심 유저 목록(422)으로 구성될 수 있다.
봇 의심 유저 초기화 수단(410)은 소정의 방법을 사용하여 온라인 게임 유저들 중 봇 의심 유저의 샘플을 추출한다. 추출된 봇 의심 유저 샘플은 초기 봇 의심 유저 목록(421)에 저장된다. 봇 의심 유저 초기화 수단(410)은 봇 의심 유저 샘플의 추출을 위해, 봇 의심 프로그램을 스캔하기 위한 보안 프로그램을 통해 봇 의심 유저를 추출하기 위한 수단(411)과 사용자의 행동을 기반으로 봇 의심 유저를 추출하기 위한 수단(412)을 포함할 수 있다.
봇 의심 유저 확대 수단(430)은, 유저들 간의 게임 재화 거래에 의해 발생되는 거래 이벤트를 수신하기 위한 거래 이벤트 수신 수단(431)과, 거래 이벤트 발생시마다 해당 거래에 대한 정보를 분석하여 봇 의심 유저를 검출하기 위한 봇 의심 유저 검출 수단(432)을 포함할 수 있다. 본 발명에 따른 비정상 유저 검출 시스템이 온라인 게임 서버와 별도로 구현되는 경우, 거래 이벤트 수신 수단(431)은 온라인 게임 서버로부터 거래 이벤트 및 거래 정보를 전달 받을 것이다.
봇 의심 유저 검출 수단(432)은 초기 의심 유저 목록(421)을 참조하여, 발생된 게임 재화 거래가 봇 의심 유저 목록에 등록된 봇 의심 유저와의 거래인지 판단한다. 봇 의심 유저와의 거래인 경우는 거래 상대방을 봇 의심 유저로 판단하고, 해당 유저가 초기 봇 의심 유저 목록(421)이나 확대된 봇 의심 유저 목록(422)에 포함되어 있지 않은 경우 확대된 봇 의심 유저 목록(422)에 해당 유저를 추가함으로써 봇 의심 유저의 범위를 확대한다.
추후 다시 거래 이벤트가 발생되는 경우, 봇 의심 유저 검출 수단(432)은 초기 의심 유저 목록(421)과 확대된 봇 의심 유저 목록(422)을 모두 참조하여, 발생된 게임 재화 거래가 봇 의심 유저와의 거래인지 판단하게 될 것이다. 결과적으로, 봇 의심 유저가 관련된 거래가 발생될 때마다 자동으로 봇 의심 유저로 등록되는 유저가 증가하게 될 것이며, 봇 유저를 검출하기 위한 감시 대상 유저가 많아지게 된다.
한편, 봇 의심 유저와의 재화 거래인 것으로 판단되는 경우, 해당 거래에 대한 데이터는 봇 의심 유저 거래 로그(451)에 적재될 것이다.
재화흐름 관계도 생성 수단(441)은 봇 의심 유저 거래 로그(451)에 적재된 로그를 이용하여, 봇 의심 유저의 거래에 의한 게임 재화의 흐름을 나타내는 관계도를 생성한다.
재화흐름 관계도는, 봇 의심 유저 거래 로그(451)에 적재되어 있는 각 거래의 거래 관계를 노드(node)와 에지(edge)로 표시하여 거래 흐름을 한눈에 볼 수 있는 네트워크 그래프로 나타내질 수 있다. 노드는 네트워크를 구성하고 있는 사람, 조직, 사물 등을 나타내는 것으로, 거래 흐름 네트워크에서는 거래의 주체가 되는 유저를 나타낸다. 에지는 노드 간의 연결 관계를 나타내는 것으로 거래 흐름 네트워크에서는 캐릭터들 간의 거래 방향 즉 게임 재화가 이동되는 방향을 나타낼 수 있다.
본 발명에 따른 재화흐름 관계도는 온라인 게임 내 유저들 간의 거래 관계 전체를 나타내는 것이 아니라, 봇 의심 유저가 관련된 거래에 대한 재화 흐름만을 나타내는 것이므로 봇 의심 유저와 연관된 비정상 유저를 검출하기에 더 효율적일 것이다. 또한, 본 발명에 따른 재화흐름 관계도를 이용하면 봇 의심 유저들 간의 상관관계를 확보할 수 있다.
재화흐름 관계도 분석 수단(442)은 생성된 재화흐름 관계도로부터 정상적인 대가가 오고 가지 않았거나 봇의 행동 유형을 보이는 비정상적인 거래 패턴을 찾아낼 수 있다. 예를 들어, 게임 재화에 대한 거래를 짧은 시간 또는 동일 시간 간격으로 반복 수행하는 패턴, 자신이 소유한 게임 머니를 전량 거래하는 패턴, 동일한 금액의 게임 머니를 연속하여 거래하는 패턴 등을 보이는 유저를 봇 의심 유저로 판단하고, 초기 봇 의심 유저 목록(421) 또는 확대된 봇 의심 유저 목록(422)에 추가 등록할 수 있다.
한편, 재화흐름 관계도 분석 수단(442)은 봇 의심 유저 목록에 등록된 유저 중 일정 요건을 만족하여 정상적인 일반 사용자임이 판단된 유저를 봇 의심 유저 목록에서 제거함으로써, 봇 유저 검출 대상에서 제외시킬 수 있다.
도 5는 본 발명의 일 실시예에 따른 재화흐름 관계도를 설명하기 위한 도면으로, 일반 유저들의 정상적인 재화 흐름(500)과 작업장에서의 재화 흐름(510)은 다른 패턴을 보임을 알 수 있다.
도 6은 도 5의 재화흐름 관계도에서 작업장에서의 재화 흐름 부분(510)을 확대한 것으로, 작업장에서는 많은 수의 봇 유저들로부터 뱅커 계정(610)으로 재화의 흐름이 집중되는 것을 알 수 있다. 이러한 뱅커 계정(610)은 봇 프로그램을 사용하고는 있지 않지만 봇 연관 유저로서 제재의 대상이 될 수 있는 유저에 해당한다.
또한, 봇 의심 프로그램 수신 수단(443)은 확대된 봇 의심 유저 목록(422)에 신규로 추가되는 유저의 게임 클라이언트(401)에 봇 의심 프로그램 추출 명령을 보낸다. 봇 의심 프로그램 수신 수단(443)은 상기에서 전달된 명령에 대한 응답으로 게임 클라이언트(401)로부터 봇 의심 프로그램 로그를 수신하여, 봇 의심 프로그램 로그(452)에 적재한다. 게임 클라이언트(401)로부터 수신되는 봇 의심 프로그램 로그는 게임 클라이언트(401)에 설치된 보안 프로그램에 의해 확인된 데이터일 것이다.
봇 의심 프로그램 분석 수단(444)은 봇 의심 프로그램 로그(452)에 적재된 로그를 분석하여 봇을 사용하는 봇 유저를 검출한다. 이때, 특정 작업장에서 사용하는 것으로 생각되는 봇 프로그램의 패턴을 확인함으로써 해당 작업장에 속하는 봇 유저들을 검출할 수 있다. 또한, 상기 봇 프로그램의 패턴과 다른 유형의 봇을 사용하는 유저나 일반 유저로 판단되는 유저를 봇 의심 유저 목록에서 제거하여 검출 대상에서 제외시킬 수 있다. 또한, 봇 의심 프로그램 분석 수단(444)은 봇 의심 프로그램 로그(452)에 적재된 로그 중, 재화흐름 관계도 분석 수단(442)에 의해 추출된 봇 의심 유저에 해당하는 로그에서 봇 유저를 확인할 수 있다.
한편, 봇 의심 유저 확대 수단(430)에 의한 거래 이벤트 수신 및 봇 의심 유저 검출에 의한 봇 의심 유저 확대, 그리고 기존의 봇 의심 유저와의 거래에 대한 데이터를 봇 의심 유저 거래 로그(451)에 저장하는 과정은, 온라인 게임 서버의 동작 중 유저들 간의 게임 재화 거래에 대응하는 이벤트가 발생될 때마다 수행될 수 있다. 상기 과정이 수행될 때마다 봇 의심 유저의 범위는 확대되고 그에 관계된 재화 거래 로그가 모두 적재될 것이다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.
200: 비정상 유저 검출 시스템
210: 봇 의심 유저 목록 저장 수단
220: 봇 의심 유저 초기화 수단
230: 봇 의심 유저 확대 수단
240: 봇 검출 수단

Claims (16)

  1. 온라인 게임 서버가 온라인 게임의 비정상 유저를 검출하는 방법에 있어서,
    봇 의심 유저로 판단되는 적어도 하나의 유저를 봇 의심 유저 목록에 초기 등록하는 단계와,
    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 거래 상대방을 상기 봇 의심 유저 목록에 추가로 등록하여 상기 봇 의심 유저 목록을 확대하는 단계와,
    상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득하는 단계와,
    상기 획득된 봇 의심 프로그램에 대한 데이터를 이용하여 봇 유저를 검출하는 단계를 포함하며,

    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면,
    상기 거래에 대한 데이터를 제1 로그에 적재하는 단계와,
    상기 제1 로그에 적재된 거래 데이터를 이용하여 온라인 게임 내 재화흐름 관계도를 생성하는 단계와,
    상기 생성된 재화흐름 관계도를 이용하여 봇 의심 유저를 추출하고 추출된 봇 의심 유저를 상기 봇 의심 유저 목록에 추가 등록하는 단계를 더 포함하며,

    상기 재화흐름 관계도는,
    상기 봇 의심 유저 및 확대된 봇 의심 유저가 관련된 거래에 대한 재화흐름만을 나타내며,
    상기 제1 로그에 적재되어 있는 각 거래의 거래 관계를 노드(node)와 에지(edge)로 표시하며,

    상기 노드는 거래의 주체가 되는 유저이며,
    상기 에지는 재화의 이동 방향을 나타내는 것을 특징으로 하는 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 봇 의심 프로그램에 대한 데이터를 획득하는 단계는,
    상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트로 봇 의심 프로그램 추출 명령을 전송하는 단계와,
    상기 명령에 대한 응답으로, 상기 게임 클라이언트의 보안 프로그램에 의해 확인된 봇 의심 프로그램 로그를 수신하는 단계와,
    상기 수신된 봇 의심 프로그램 로그를 제2 로그에 적재하는 단계를 포함하는 것을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 봇 유저를 검출하는 단계는,
    상기 제2 로그에 적재된 봇 의심 프로그램 로그 중 상기 제1 로그의 분석에 의해 추출된 봇 의심 유저에 해당하는 로그에서 봇 유저를 확인하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 봇 의심 유저 목록을 확대하는 단계와 상기 거래 데이터를 제1 로그에 적재하는 단계는, 온라인 게임에서 유저들 간의 게임 재화 거래에 대응하는 이벤트가 발생될 때마다 수행되는 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 생성된 재화흐름 관계도를 이용하여 봇 프로그램은 사용하고 있지 않지만 봇 유저와 관계가 있는 봇 연관 유저를 추출하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 생성된 재화흐름 관계도를 이용하여 복수의 봇 의심 유저 또는 봇 유저로부터 게임 재화를 모으는 봇 의심 유저 또는 봇 유저를 추출하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 봇 의심 유저 목록에 등록된 유저들 중 봇 프로그램을 사용하고 있는 봇 유저 또는 봇 유저와 관계가 있는 봇 연관 유저가 아니라 판단되는 유저를 상기 봇 의심 유저 목록으로부터 제거하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  9. 온라인 게임의 봇 유저를 검출하는 방법을 실행하기 위해 기록매체에 기록된 컴퓨터 프로그램에 있어서,
    온라인 게임 서버에 의해 수행되는 상기 방법은,
    봇 의심 유저로 판단되는 적어도 하나의 유저를 봇 의심 유저 목록에 초기 등록하는 단계와,
    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 거래 상대방을 상기 봇 의심 유저 목록에 추가로 등록하여 상기 봇 의심 유저 목록을 확대하는 단계와,
    상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득하는 단계와,
    상기 획득된 봇 의심 프로그램에 대한 데이터를 이용하여 봇 유저를 검출하는 단계를 포함하며,

    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면,
    상기 거래에 대한 데이터를 제1 로그에 적재하는 단계와,
    상기 제1 로그에 적재된 거래 데이터를 이용하여 온라인 게임 내 재화흐름 관계도를 생성하는 단계와,
    상기 생성된 재화흐름 관계도를 이용하여 봇 의심 유저를 추출하고 추출된 봇 의심 유저를 상기 봇 의심 유저 목록에 추가 등록하는 단계를 더 포함하며,

    상기 재화흐름 관계도는,
    상기 봇 의심 유저 및 확대된 봇 의심 유저가 관련된 거래에 대한 재화흐름만을 나타내며,
    상기 제1 로그에 적재되어 있는 각 거래의 거래 관계를 노드(node)와 에지(edge)로 표시하며,

    상기 노드는 거래의 주체가 되는 유저이며,
    상기 에지는 재화의 이동 방향을 나타내는 것을 특징으로 하는 컴퓨터 프로그램.
  10. 온라인 게임의 비정상 유저 검출 시스템에 있어서,
    봇 의심 유저 목록을 저장하는 봇 의심 목록 저장 수단과,
    봇 의심 유저로 판단되는 적어도 하나의 유저를 상기 봇 의심 유저 목록에 초기 등록하는 봇 의심 유저 초기화 수단과,
    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 거래 상대방을 상기 봇 의심 유저 목록에 추가로 등록하여 상기 봇 의심 유저 목록을 확대하는 봇 의심 유저 확대 수단과,
    상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트에 의해 추출된 봇 의심 프로그램에 대한 데이터를 획득하고, 상기 획득된 봇 의심 프로그램에 대한 데이터를 이용하여 봇 유저를 검출하는 봇 검출 수단을 포함하며,

    상기 봇 검출 수단은,
    상기 봇 의심 유저 목록에 등록된 유저와의 거래가 발생하면, 상기 거래에 대한 데이터를 제1 로그에 적재하고, 상기 제1 로그에 적재된 거래 데이터를 이용하여 온라인 게임 내 재화흐름 관계도를 생성하는 재화흐름 관계도 생성 수단과,
    상기 생성된 재화흐름 관계도를 이용하여 봇 의심 유저를 추출하고 추출된 봇 의심 유저를 상기 봇 의심 유저 목록에 추가 등록하는 재화흐름 관계도 분석 수단을 포함하며,

    상기 재화흐름 관계도는,
    상기 봇 의심 유저 및 확대된 봇 의심 유저가 관련된 거래에 대한 재화흐름만을 나타내며,
    상기 제1 로그에 적재되어 있는 각 거래의 거래 관계를 노드(node)와 에지(edge)로 표시하며,

    상기 노드는 거래의 주체가 되는 유저이며,
    상기 에지는 재화의 이동 방향을 나타내는 것을 특징으로 하는 시스템.
  11. 삭제
  12. 제10항에 있어서,
    상기 봇 검출 수단은,
    상기 봇 의심 유저 목록에 추가로 등록된 유저의 게임 클라이언트로 봇 의심 프로그램 추출 명령을 전송하고, 상기 명령에 대한 응답으로, 상기 게임 클라이언트의 보안 프로그램에 의해 확인된 봇 의심 프로그램 로그를 수신하여 제2 로그에 적재하는 봇 의심 프로그램 수신 수단을 더 포함하는 것을 특징으로 하는 시스템.
  13. 제12항에 있어서,
    상기 봇 검출 수단은,
    상기 제2 로그에 적재된 봇 의심 프로그램 로그 중 상기 제1 로그의 분석에 의해 추출된 봇 의심 유저에 해당하는 로그에서 봇 유저를 확인하는 봇 의심 프로그램 분석 수단을 더 포함하는 것을 특징으로 하는 시스템.
  14. 제 10항에 있어서,
    상기 재화흐름 관계도 분석 수단은,
    상기 생성된 재화흐름 관계도를 이용하여 봇 프로그램은 사용하고 있지 않지만 봇 유저와 관계가 있는 봇 연관 유저를 추출하는 것을 특징으로 하는 시스템.
  15. 제 10항에 있어서,
    상기 재화흐름 관계도 분석 수단은,
    상기 생성된 재화흐름 관계도를 이용하여 복수의 봇 의심 유저 또는 봇 유저로부터 게임 재화를 모으는 봇 의심 유저 또는 봇 유저를 추출하는 것을 특징으로 하는 시스템.
  16. 제10항에 있어서,
    상기 봇 검출 수단은,
    상기 봇 의심 유저 목록에 등록된 유저들 중 봇 프로그램을 사용하고 있는 봇 유저 또는 봇 유저와 관계가 있는 봇 연관 유저가 아니라 판단되는 유저를 상기 봇 의심 유저 목록으로부터 제거하는 것을 특징으로 하는 시스템.
KR1020150068167A 2015-05-15 2015-05-15 온라인 게임의 비정상 유저 검출 방법 및 시스템 KR101725067B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150068167A KR101725067B1 (ko) 2015-05-15 2015-05-15 온라인 게임의 비정상 유저 검출 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150068167A KR101725067B1 (ko) 2015-05-15 2015-05-15 온라인 게임의 비정상 유저 검출 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20160134309A KR20160134309A (ko) 2016-11-23
KR101725067B1 true KR101725067B1 (ko) 2017-04-10

Family

ID=57542107

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150068167A KR101725067B1 (ko) 2015-05-15 2015-05-15 온라인 게임의 비정상 유저 검출 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101725067B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101996018B1 (ko) * 2018-08-13 2019-10-01 넷마블 주식회사 비정상 유저 검출 장치 및 방법
KR102017475B1 (ko) * 2019-03-11 2019-09-03 넷마블 주식회사 분석 장치, 분석 장치의 동작 방법, 및 분석 장치를 포함하는 분석시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101211765B1 (ko) * 2011-01-07 2012-12-12 주식회사 엔씨소프트 온라인 게임내 자산의 거래 경로 추적장치 및 그 방법
KR101746684B1 (ko) * 2011-01-07 2017-06-15 주식회사 엔씨소프트 온라인 게임 내 자산의 거래특성 분석을 통한 비정상 캐릭터 검출시스템 및 그 방법
KR20130040048A (ko) * 2011-10-13 2013-04-23 주식회사 네오플 비정상 계정 검출 장치 및 방법
KR20130099786A (ko) * 2012-02-29 2013-09-06 한국전자통신연구원 불법 사용자 검출 장치 및 방법

Also Published As

Publication number Publication date
KR20160134309A (ko) 2016-11-23

Similar Documents

Publication Publication Date Title
JP5886972B2 (ja) 異常アカウント検出装置及び方法
JP2021517292A (ja) オンラインゲーム環境内のチートソフトウェアの使用を自動的に減らすこと
Bursztein I am a legend: Hacking hearthstone using statistical learning methods
JP2006006473A (ja) オンラインゲーム不正検出方法
JP5939596B2 (ja) 異常アカウント検出装置及び方法
KR101211832B1 (ko) 클러스터링 기법을 이용한 온라인 게임 내 비정상 캐릭터 검출 시스템 및 그 방법
Oh et al. Bot detection based on social interactions in MMORPGs
KR101746684B1 (ko) 온라인 게임 내 자산의 거래특성 분석을 통한 비정상 캐릭터 검출시스템 및 그 방법
KR101725067B1 (ko) 온라인 게임의 비정상 유저 검출 방법 및 시스템
KR101596191B1 (ko) 온라인 게임 내 개별 캐릭터의 거래 속성 분석 방법 및 장치
US20150209675A1 (en) Method and apparatus for detecting game bot account
Drachen Behavioral telemetry in games user research
KR101211765B1 (ko) 온라인 게임내 자산의 거래 경로 추적장치 및 그 방법
KR101872345B1 (ko) 온라인 게임 내 위치 특성 분석을 이용한 비정상 캐릭터 검출 시스템 및 방법
Park et al. Show me your account: detecting MMORPG game bot leveraging financial analysis with LSTM
KR101652259B1 (ko) 온라인 게임의 액티비티 로그 가공 시스템 및 그 방법
CN111273834A (zh) 信息处理方法及装置、存储器及处理器、电子设备
JP7053931B1 (ja) 不具合原因を推定するための方法、プログラム、システム、及び装置
KR20090015421A (ko) 피싱 게임 운영시스템 및 그 방법 그리고 이를 실행하기위한 프로그램을 기록한 기록매체
KR101231626B1 (ko) 온라인 게임의 로그정보를 이용한 계정 도용 방지 방법
KR20130099786A (ko) 불법 사용자 검출 장치 및 방법
KR20130082777A (ko) 스마트폰 위치정보를 이용한 스마트폰과 온라인 게임의 연동시스템 및 그 방법
KR101277982B1 (ko) 온라인 게임에서의 도용계정 검출시스템 및 그 방법
KR101765432B1 (ko) 게임 대회 운영을 위한 게임 승패 결정 방법
Wong et al. Detection on auto clickers in mobile games.

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200206

Year of fee payment: 4