(外挂系列四篇之四)外挂程序的解决方案
作者:寿步    本站发布时间:2005-9-25 23:08:22

                                     外挂程序的解决方案
                       ――网络游戏外挂程序法律政策问题研究系列之四

                             寿  步  黄毅峰  朱  凌  徐业伟

【编者按:本文首发于《电子知识产权》2005年第9期。文中注释略。】

【摘要】在前文讨论外挂的起源、机理、流行原因、传播途径,分析关于外挂的若干定义,给出作者对外挂的定义,阐述外挂的特征,提出外挂的五种不同分类,分析外挂相关的法律关系的基础上,本文着重讨论了外挂的解决方案,涉及两个方面:查处外挂开发者、传播者和使用者时的取证方案,网游开发商和运营商的内部控制方案。

【关键词】外挂程序 解决方案 取证 内部控制

我国网游产业链延伸广泛,网游市场商机巨大。围绕网游形成的庞大的利益网络,是以运营商为核心的产业链(如图1所示)。运营商连接了游戏开发商和销售网络。电信公司和设备供应商也与网游运营商产生商业关系:电信公司提供IDC(互联网数据中心)服务,设备供应商提供服务器用以存储网游程序(包括数据)。与游戏衍生产品和服务相关的网站、网吧和传统出版业也处在网游产业链中。 我国特有的“外挂产业”也依存于网游产业链,其利益网络也形成了一个产业链(如图2所示)。

    本文讨论外挂程序的解决方案,涉及两个方面:查处外挂开发者、传播者和使用者时的取证方案,网游开发商和运营商的内部控制方案。

一、对外挂开发者和外挂传播者的取证方案

外挂的开发者与传播者可能是同一的,也可能是分离的。不论是哪一种情况,只要找到外挂的传播者,通常就容易找到外挂的开发者。
对外挂传播者的取证,比对外挂玩家的取证相对容易一些。传播外挂通常需要有一个论坛。如果外挂没有相应的论坛,玩家要讨论该外挂的相关问题时就没有交流的平台,这样该外挂就不那么容易上手,而不容易上手的外挂显然难以广泛流传。因此,一个成熟的外挂在互联网上通常都有固定的发布点,通常也是通过网上传播。只有极少数外挂是通过网下的传统渠道销售的。
外挂网上发布点的设立分为下列三种情况:
(1)外挂传播者拥有单独的域名和论坛。例如,仙境传说外挂“KoreEasy”的www.mu20.com论坛。
(2)外挂传播者与某些网站达成协议,使用这些网站作为外挂的论坛。例如,仙境传说外挂“梦幻仙境”的论坛早先寄居于bbs.92wy.com这个游戏论坛大本营中。这个外挂论坛已于2004年部分移除,但是后来仍有不少注册用户在仙境传说的论坛中讨论梦幻仙境外挂的问题。
(3)外挂传播者向某些软件下载网上传外挂。有不少软件下载网,向网友提供软件上传的服务。一般网站都会有人进行上传软件的审查。通过审查的软件就可列入该网站的软件下载区供网友下载。
对于外挂的上述三种网上发布方式,可以通过下列方法查找:一是定期用baidu,google等搜索引擎,搜索与特定网游相关的外挂站点;二是经常访问大型游戏论坛,通过玩家的讨论或自己的提问,发现新外挂的下载点;三是登陆网游与其他玩家交流,可以获知他们使用外挂的情况。
一旦发现某外挂的网上固定发布点,就可依据其特点对论坛来源进行追踪:
如果是属于第(1)种情况,那么这个独立论坛所对应的服务器IP地址将是重要线索。我们可以从IP地址大致判断出这个论坛服务器所处的地区。具体方法是访问IP定位网站或者下载IP定位软件。IP定位网站,例如:http://dheart.51.net/ip/。IP定位软件,例如:IP地址速查表 V1.03 S_CXV。在这些网页或者软件中,我们输入IP地址,就能找到IP地址所在的位置,而且一般能精确到城市级别,有的网站还能显示这个IP是哪个宽带服务商的。一旦确定了城市或宽带服务商,就可以联系该城市的电信公司或者相应的宽带服务商,以获取关于该IP更加详细的信息。例如,IP所有者或所有单位及其地址信息。根据这些信息就可以直接追查服务器的所在地点。
如果是属于第(2)种情况,那么从与外挂开发者和传播者达成协议的网站处应当可以找到外挂开发者和传播者的相关信息。首先是寻找这个网站的所有者。此时可以参照第(1)种情况下寻找外挂传播者的做法,即通过IP地址定位查找。找到网站所有者之后,就要进一步查看该网站与外挂传播者之间的协议是在网上通过注册达成的还是书面达成的。如果是书面协议,就容易进一步查找协议的签署人。如果是网上注册达成协议的,往往就无法直接进行查找,此时,该论坛的版主有可能就是外挂传播者的重要成员或联系人,因此应该要求网站提供该版主的相关信息,网站方面所知的外挂传播者账号的登陆日志和注册信息。这些信息就是解决问题的关键。当然,这需要网站方面的配合。倘若只有账号登陆的IP地址,而没有其他有用信息,那么就可能是登陆人使用代理服务器的情况,此时的做法可参见下面的论述。
如果是属于第(3)种情况,那么查找就必须依赖于下载网对上传功能的日志记录中相应的信息,例如:IP地址。但可能存在外挂传播者使用代理服务器的情况。这时网站记录的账号登陆日志显示的就是代理服务器的地址,而不是上传人的真实地址。这样,代理服务器的日志文件就成了重要线索。可是,通常被选择的代理服务器都在境外,因此,采集相关证据的难度和成本都非常高。此时,从外挂上显示的联系方式入手可能是一个比较经济的方法。外挂传播者的最终目的一般是盈利,取证者如果以投资为由去洽谈,那么获取真实联系方式或者银行账号的可能性就很大。

二、对外挂玩家的取证方案

对外挂玩家的取证主要可以从网游服务器端入手。

1.使用特殊的游戏功能
在服务器端识别重要的虚拟物品时,采用特殊的“身份识别”信息,以保证所有重要的物品都有唯一的身份识别码。因此,玩家看来一模一样的两件装备实际上具有不同的编号。游戏还有记录日志,其中信息包括所有道具的产生时间、来源(产生于游戏中某张地图的某个位置,购买获得或是怪物丢掉的等等)以及易手情况(什么时间在什么地点由谁交易给了谁等等)。
具有复制功能的外挂是利用了网游软件的漏洞而不是实际侵入网游的服务器端,一般只是复制某个特定装备,连同这个装备包括“身份识别”信息在内的所有信息。这样,只要搜索数据库就能发现这些 “身份识别”信息相同的装备。如果再配合日志记录,就能发现复制装备(指复制产生的装备)的产生和流转情况,特别是复制装备的来源账号。如果这个账号上的真实装备(指依据游戏规则获得的装备)和游戏货币也很多,那么暂停这个账号的使用就可以迫使该玩家与网游的客服部门联络。但现在复制装备的销售者往往使用新的账号进行装备的复制。因此即使暂停账号也无济于事。这时就需要关注:① 真实装备在交易给进行装备复制的账号之前所在的那个账号;② 服务器中销售复制装备的那个账号以及该账号的资金和装备流去的新的账号。针对这两类账号的处理方法仍可采用“冻结并等待”的方式。当然,如果用户的注册信息是真实的,就不必如此大费周折。但是注册信息真实的可能性通常很小。

2.额外的侦测程序
在服务器端增加异常数据侦测程序,对数据流进行监控和记录,有利于查找使用外挂的玩家。因为,一旦有外挂产生超出游戏规则的行为,必然引发数据流状态的异常。要分析出“数据流的状态异常”,需要进行包括合法性检查和合理性检查在内的必要检查。合法性检查是指是否这个数据包含有非法的、超出游戏属性值范围的值;合理性检查是指通过查验先前的数据来分析从过去状态到当前状态的变化是否合理。
例如,如果外挂进行了违规的“瞬间移动”,那么游戏数据包中存放人物位置的信息必然有所变化,这种变化可以通过比较先前的位置状态分析出存在“突变”,从而证明有外在因素修改了数据包。
又如,外挂中的变速器如果修改计算机系统时钟频率而导致网游客户端发送数据包的速度改变的情况是比较容易识别的,因为网络外部环境的变化一般会使数据包的送达时间间隔变大或变得不规则。如果服务器收到数据包的速度稳定,证明网络相对稳定,就排除了网络的干扰因素,那么服务器接到数据包的时间间隔等于网游客户端发出数据包的时间间隔,此时,如果在客户端发出数据包之前再在数据包中加入发出时的客户端时间信息(即类似于邮戳的一种时间戳),那么通过计算和比较服务器端收到数据包的时间间隔和先后到达的两个数据包内的时间戳,就能确定是否使用了加速类的外挂。网络的情况尽管复杂,但仍能通过进行多次的采样比较分析得出结论。当然,如果玩家还同时使用了其他外挂,那么,时间戳也可能被修改。这是纯粹的技术问题,这里不再赘述。
这里要指出的是,额外的侦测程序可以识别任何外挂的使用。这些侦测程序可以安装在服务器端,也可以根据网游运行商与玩家的协议下载到客户端并随时更新以有效识别外挂(如对于自动练功型外挂可能就需要把侦测程序安装到客户端)。虽然这会增加网游开发商或运营商的开发成本或运营成本,但确实行之有效。如果网游存在可能被恶意程序所利用的漏洞,那么通过技术上的侦测手段弥补这些漏洞显然是必要的。
当然,如果证据只存放在运营商处,那么,当玩家起诉网游运营商侵权时,原告玩家可能会质疑运营商提供的证据本身的真实性。因此,采用数据定期备份并异地存放的方法,可能会是一种经济而有效的增加证据可信度的途径。这时,数据备份需要存放的时间、存放的方式等等具体问题都值得进一步讨论。
但是,进行网游数据库和侦测程序日志文件的备份的方法并非在任何情况下都能保障证据的可信度。因为网游运营商内部人员可能进行修改这些数据欺诈。因此,还需要加强网游运营商的内部控制。

三、网游运营商设法消除内部人员欺诈

加强网游运营商内部控制的一个途径是设法消除网游运营商内部人员的欺诈。内部人员严格按照职责分工进行工作。侦测程序日志文件复查人员、游戏数据库维护人员、网游管理员应分别由不同的人担任。
应当认为,运营商假造证据诽谤玩家对运营商本身没有益处。更可能的情况是,运营商内部员工将非法操作数据的行为转嫁给玩家。如果运营商有良好的内部控制机制,这种风险就会大大下降。美国Sarbanes-Oxley 法案对公司内部控制的有效性就有强制要求,其中职责分工是一项非常重要的指标。当然,可以通过审计来进一步增强内部数据的可信度。

四、网游开发商和运营商防范恶性外挂的技术措施

早期可选择的网游数量较少,玩家因而常常以辅助程序来弥补网游中的缺陷。随着时间的推移,越来越多在设计和娱乐方面得到进一步强化的优秀网游不断出现,使得用外挂的玩家越来越少,同时将恶性外挂边缘化,甚至可以避免恶性外挂赖以生存的基础即网游的漏洞。
加强网游开发商和运营商内部控制的另一个途径是,采取技术措施,防范恶性外挂。可能采取的技术措施如下:
(1)做好游戏的设计和维护。网游开发商应对游戏软件的客户端与服务器端进行良好的设计,使用安全稳定的架构以避免留下漏洞为恶性外挂利用。韩国《天堂》系列游戏在这一方面做得比较出色。该系列游戏已经运行数年,玩家众多,但只是出现了一些简化操作的外挂,对游戏规则本身并没有很大的破坏性。
(2)使用第三方的反外挂程序。网游开发商在人力财力有限的情况下,可以直接购买第三方的反外挂程序。例如,《奇迹》、《天堂》采用nProtect保护系统,《精灵》采用了金山公司的防火墙,都可屏蔽大量通用型外挂。
(3)自行研发反外挂程序。有的网游开发商已有专门研发人员进行反外挂程序研发。首先获取外挂,然后分析外挂,再根据外挂的漏洞或特征研发反外挂程序。与外挂开发商相比,网游开发商处于相对不利的位置。因为网游运行时,运营商可能是几个人在进行保护工作,同时却有上千人在进行对程序的破解工作。
(4)利用玩家反馈。这是当国内网游运营商比较依赖的途径,有不少网游主页上都有“玩家举报”这一专门页面。但是,在玩家举报时的举证效力值得注意。例如,某网游要求举报外挂时需附上游戏截图以证明玩家举报属实。事实上,截图是否真实到足以确认外挂的使用仍然是值得研究的。因为对未经加密的电子证据很容易进行修改。




( 说明:文中的观点或信息与本网站主办单位无关)