protecting games

Transcription

protecting games
PROTECTING GAMES:
A SECURITY HANDBOOK
FOR GAME DEVELOPERS AND
PUBLISHERS
STEVEN B. DAVIS
Charles River Media
A part of Course Technology, Cengage Learning
Australia, Brazil, Japan, Korea, Mexico, Singapore, Spain, United Kingdom, United States
PROTECTING GAMES: A SECURITY HANDBOOK
© 2008 IT GlobalSecure, Inc.
FOR GAME DEVELOPERS AND PUBLISHERS
STEVEN B. DAVIS
Publisher and General Manager,
Course Technology PTR: Stacy L. Hiquet
Associate Director of Marketing: Sarah Panella
Manager of Editorial Services: Heather Talbot
ALL RIGHTS RESERVED. No part of this work covered by
the copyright herein may be reproduced, transmitted,
stored, or used in any form or by any means graphic,
electronic, or mechanical, including but not limited to
photocopying, recording, scanning, digitizing, taping, Web
distribution, information networks, or information storage
and retrieval systems, except as permitted under Section
107 or 108 of the 1976 United States Copyright Act, without
the prior written permission of the publisher.
Marketing Manager: Jordan Casey
Senior Acquisitions Editor: Emi Smith
Project/Copy Editor: Kezia Endsley
PTR Editorial Services Coordinator: Jen Blaney
Interior Layout: Shawn Morningstar
Cover Designer: Mike Tanamachi
For product information and technology assistance,
contact us at
Cengage Learning Customer and Sales Support,
1-800-354-9706
For permission to use material from this text or
product, submit all requests online at
cengage.com/permissions
Further permissions questions can be emailed to
[email protected]
Indexer: Valerie Haynes Perry
Proofreader: Ruth Saavedra
The information contained in this publication is
not intended to convey or constitute legal advice
on any subject matter. Readers should not rely on
the information presented in this publication for
any purpose without seeking the legal advice on
the specific facts and circumstances at issue from a
licensed attorney. Readers should not consider
the information presented in this publication to be
an invitation for an attorney-client relationship,
and providing the information in this publication is
not intended to create an attorney-client relationship between you and any author or contributor to
this publication. The information in this publication contains general information that is intended,
but cannot be guaranteed, to be always up-to-date,
complete and accurate. Any representation or warranty that might be otherwise implied is expressly
disclaimed. The authors and contributors expressly
disclaim all liability or responsibility in respect to
actions taken or not taken based on any or all of
the information contained in this publication.
Material in this book may include discussion regarding issues reported in the public media and public legal system regarding services, products, and other material that may be
subject to laws granting copyright protection. These issues
are discussed for illustrative purposes only and the facts presented are limited to that purpose. Those wishing to seek
further information about any illustrative point discussed
are encouraged to engage further research.
All trademarks are the property of their respective owners.
Library of Congress Control Number: 2008932480
ISBN-13: 978-1-58450-670-6
ISBN-10: 1-58450-670-9
eISBN-10: 1-58450-687-3
Course Technology, a part of Cengage Learning
20 Channel Center Street
Boston, MA 02210
USA
Cengage Learning is a leading provider of customized
learning solutions with office locations around the globe,
including Singapore, the United Kingdom, Australia,
Mexico, Brazil, and Japan. Locate your local office at:
international.cengage.com/region
Cengage Learning products are represented in Canada by
Nelson Education, Ltd.
Printed in the United States of America
1 2 3 4 5 6 7 12 11 10 09
For your lifelong learning solutions, visit courseptr.com
Visit our corporate website at cengage.com
For my parents, sisters, family, friends, teachers, and colleagues.
Thank you for your patience.
Acknowledgments
irst, I would like to thank Emi Smith, Kezia Endsley, and the team at Cengage
Learning for taking the chance to publish a book on game security.
F
Thank you to my readers at PlayNoEvil.com who, through their interest and
engagement, have sustained me through the past several years.
Thank you to Cheryl Campbell, my great friend and business partner for over
10 years at IT GlobalSecure and also my tireless editor.
A special thank you to Joseph Price and Marcus Eikenberry, for their contributions to this book.
Thank you to Adam Martin, Pierre Laliberte, Alexandre Major, Marc-André
Hamelin, and the other industry professionals who provided invaluable editorial
input to the book.
Thank you to Richard Davis and Eleanor Lewis for their editorial help.
Thank you to my teachers, mentors, friends, and colleagues at the National
Security Agency (especially my coworkers in R56, V6, and C7) who instilled in me
a passion for the security field and an appreciation for how security “fits” in to the
rest of the world. Specifically, Mark U., Brian S., Tim W., Bill M., Cecil S., Sid G.,
Tanina G., Bill U., Nancy G., Jim A., Ed G., Ed D., Robert W., Bob D., and many
others.
Finally, thank you to the game industry and gaming industry professionals who
have welcomed a strange “security guy” into their midst.
Although many people have contributed, the final responsibility for the form,
style, content, and everything else related to this work is ultimately mine.
iv
About the Author
Steven Davis has over 22 years of IT and IT security expertise and has focused on
the security issues of the gaming industry for more than a decade. He advises game
companies, governments, and regulators around the world. Mr. Davis has written
numerous papers and speaks at conferences on all aspects of game security. He is
the author of the game security and industry blog, PlayNoEvil (http://www.
playnoevil.com/).
Mr. Davis has international patents on game security and IT security techniques, most notably the anti-cheating protocols that underlie the SecurePlay
(http://www.secureplay.com) anti-cheating library. He has designed several games,
including DiceHoldem (http://www.diceholdem.com), and acts as a design consultant.
He is the CEO of IT GlobalSecure (http://www.itglobalsecure.com), which
develops game security products and provides game security, IT security, and game
design and evaluation services. Mr. Davis’ experience includes security leadership
positions at the U.S. National Security Agency (NSA), CSC, Bell Atlantic (now
Verizon), and SAIC. He has extensive cryptographic and key management design
experience, including work on Nuclear Command and Control systems, the
Electronic Key Management System, and numerous other commercial and
government projects. Mr. Davis has a BA in Mathematics from UC Berkeley and a
Masters Degree in Security Policy Studies from George Washington University.
v
About the Contributors
Joseph Price is an Associate in the Antitrust and Telecommunications practice
groups at Kelley Drye & Warren LLP, with a track record of successfully representing companies in strategic mergers and acquisitions, and is especially adept at
working with companies to structure transactions and achieve business goals with
competition and antitrust issues.
With a particular expertise on counseling companies in regulated industries, Mr.
Price has helped clients protect interests threatened by consolidation in the communications industry. He has obtained FTC and DOJ Antitrust Division clearance
on numerous transactions, and provides Hart-Scott-Rodino Premerger Notification
counseling, preparation, and filing on behalf of many clients, including technologyrelated entities, equity funds, investment funds, and targets of investments.
Mr. Price represents clients in public and nonpublic DOJ and FTC investigations
and has served as counsel in public and nonpublic FBI, FCC, and State Attorneys
General investigations and enforcement matters, including formal and informal
administrative complaint proceedings.
Mr. Price also provides a full range of legal services for clients that provide technology and broadband services. He works to assist clients achieve business goals,
whether they involve access to cutting-edge technologies, growth of market share,
product development, or expansion of distribution channels.
Mr. Price speaks and writes frequently on antitrust, technology, media, telecommunications, and network security subjects, including the Communications
Assistance for Law Enforcement Act (CALEA). His analyses have been quoted in a
variety of publications, including Wired, BoardWatch, and Light Reading.
Previously, Mr. Price served as a law clerk to Judge Edwin H. Stern of the New
Jersey Appellate Division. While earning his J.D. at Catholic University, he served
as Editor-in-Chief of the law journal, CommLaw Conspectus: Journal of Communications
Law and Policy, and received an advanced certificate from the Communications
Law Institute.
vi
About the Contributors
vii
Marcus Eikenberry is a serial entrepreneur. He makes his living dealing in intangible goods and services within online video games. His companies sell huge volumes
of game registration codes and game time codes as well as providing anti-fraud
solutions for other sellers within these online gaming markets.
Back in 1990 when the Internet was just for universities and the government,
Mr. Eikenberry was doing computer hardware sales to the public. Fraud was very
rare and not something that needed much attention.
In 1993 when Mosaic hit the public, he attempted to start doing business on the
web. In 1994, he published computer hardware sales sheets and started doing mail
order sales. Because he didn’t like dealing with physical products, he looked for
other products to sell that did not require shipping. In December of 1997, he found
the perfect item to sell: intangible goods within online video games. Marcus is a
pioneer of sales of these intangible video game items and services.
Today, Mr. Eikenberry owns Markee Dragon Inc., which includes several companies, including:
TrustWho (www.TrustWho.com)—Anti-fraud services providing transaction
processing and payment verification for companies experiencing high fraud
rates.
Markee Dragon (www.MarkeeDragon.com)—The largest site in the world for
the buying, selling, and trading of online game accounts. It is estimated that
over 2.5 million dollars worth of accounts and services trade hands in this site’s
forums monthly without any charges to the members.
Shattered Crystal (www.ShatteredCrystal.com)—Where new game codes, upgrades, and game time have been sold to several hundred thousand satisfied
customers since 2002.
Contents
Introduction
xv
The Protection Game
1
1
Game Security Overview
What Is Game Security?
References
2
3
5
2
Thinking Game Protection
Independence
Lazy, Cheap, or Stupid
Threats, Vulnerabilities, and Risk
Beyond Protect, Detect, React
Asymmetric Warfare
Process, Testing, Tools, and Techniques
Second Grader Security
References
Part I
Part II
viii
6
7
8
12
13
15
17
19
20
Piracy and Used Games
21
3
Overview of Piracy and Used Games
22
4
The State of Piracy and Anti-Piracy
Determining the Scope of Piracy
Trusted Brand Security: Nintendo and ADV
Anti-Piracy Innovators: Nine Inch Nails and Disney
Going Forward
References
23
24
28
29
30
31
5
Distribution Piracy
Preventing Duplication
Detecting Duplication
Collectables, Feelies, and Other Stuff
Disk as Key
License Keys
32
32
33
34
34
35
Contents
ix
Splitting and Key Storage
Busted Pirate: Now What?
References
39
42
43
6
DRM, Licensing, Policies, and Region Coding
The Basics of DRM
Why DRM Doesn’t Work
Types of DRM Systems
License Policy
References
44
44
45
46
51
54
7
Console Piracy, Used Games, and Pricing
Attacking Consoles
The Used Games Market
Pricing Pirates Out of Business
References
Server Piracy Trends
55
55
60
62
65
66
8
Server Piracy
Authenticating the Server
References
66
70
74
9
Other Strategies, Tactics, and Thoughts
Measuring Piracy
Fighting Pirate Networks
Multi-Player Gaming
Rich Interaction System
Digital Affiliate System
Playing with Secure Digital Distribution
References
75
75
76
79
79
84
87
91
10
Anti-Piracy Bill of Rights
Basic Fair Use Principles
Registration Options
Installation Options
Connection Options
References
92
93
94
95
95
96
11
The Piracy Tipping Point
Determining the Goal of Anti-Piracy Policies
References
97
97
99
x
Contents
Part III
Cheating
101
12
Overview of Cheating
102
13
Cheating 101
Cheating and the Game Industry
Fair Play
Cheat Codes
The CARRDS Reference Model
The Remote Data Problem
Security, Trust, and Server Architectures
Random Events
Player Collusion
Business Models and Security Problems
References
103
103
105
106
110
111
121
125
127
129
131
14
App Attacks: State, Data, Asset, and
Code Vulnerabilities and Countermeasures
Memory Editors, Radar, and ESP
Data Obfuscators
Code Hacks and DLL Injection
Blind Security Functions, Code Obfuscators,
and Anti-Tamper Software Design
Save Game Attacks, Wallhacks, and Bobbleheads
Secure Loader and Blind Authentication
References
132
132
134
137
139
141
142
145
15
Bots and Player Aids
Is It “Help” or Is It Cheating?
CAPTCHAs: Distinguishing Players from Programs
Cheat Detection Systems
References
146
146
149
150
154
16
Network Attacks: Timing Attacks,
Standbying, Bridging, and Race Conditions
ACID, Dupes, and SQL Attacks
Defensive Proxies
Hacker Proxies
Thinking About Network Time: Act, But Verify
Securing Time
References
155
155
157
158
163
165
165
Contents
xi
17
Game Design and Security
166
Design Exploits
166
Collusion
167
Trivia Games
167
Word, Number, and Puzzle Games
169
Algorithmic Games, Physics Flaws, and Predictable Behavior
170
Speed, Twitch, Timing, and Pixel Precision
173
Strong and Dominant Strategies and Deep Game Play
175
Power of People: Rock-Paper-Scissors, Poker, and the World of Psychology 175
Game Play Patterns: Combat Devolved
176
Designing for the Medium
179
References
179
18
Case Study: High-Score Security
Cheating in High-Score Games
Encryption, Digital Signatures, and Hash Functions
Client-Server Option
Randomly Seeded Client
Alternative High-Score Strategies
Puzzles, Skill-Based Games, and Other Deterministic Games
Inappropriate Player Handles
Summary
References
181
181
182
184
184
185
186
187
187
187
Part IV
Social Subversion: From Griefing to Gold Farming
and Beyond with Game Service Attacks
189
19
Overview of Social Subversion
190
20
Competition, Tournaments, and Ranking Systems (and Their Abuse) 192
Understanding Tournaments and Ranking Systems
192
Lobby Attacks
195
Syndicates and Bots
197
Tournament and Ladder Game Play Attacks
197
Abandonment: The “Game Over” Game
199
Game Operator Problems
201
Identity Problems
202
Countermeasures
204
Retrofitting Games for Tournaments and Skill Games
206
Summary
206
Resources
207
xii
Contents
21
Griefing and Spam
Communications Griefing and Spam
Game Play Griefing
User-Created Content
Liability and Business Risk
References
209
210
215
217
218
221
22
Game Commerce: Virtual Items, Real Money Transactions,
Gold Farming, Escorting, and Power-Leveling
Amusement Park Economics
Alternative Models
On Virtual Items
Gold Farming
Gold Frauders, Online Thieves, and Insiders
Potential Solutions
Power-Leveling
Escort Services, Subletting, and Virtual Prostitution
Summary
References
223
226
227
228
230
236
238
239
240
240
241
To Ban or Not To Ban? Punishing Wayward Players
Crime, Credibility, and Punishment
The Cost of Punishment: Who’s Being Punished?
Possible Punishments and Credible Deterrence
Summary
References
243
243
244
245
248
249
The Real World
251
24
Welcome to the Real World
252
25
Insider Issues: Code Theft, Data Disclosure, and Fraud
Code Theft and Other Data Disclosures
Office IT Infrastructure
Insider Fraud
Playing Your Own Game
Privileging and Isolation
References
254
255
258
259
260
262
265
26
Partner Problems
Contracting Security?
Security Accountability in Third-Party Development
Security Accountability in Third-Party Licensing
Service Provider and Partner Security Issues
266
266
267
268
270
23
Part V
Contents
Community and Fan Sites
References
xiii
273
274
27
Money: Real Transactions, Real Risks
Payment Processing
Inside the Payment Process: PayPal
Anti-Fraud
Integration for Automation
Payment Fraud
References
275
276
280
282
286
287
287
28
More Money: Security, Technical, and Legal Issues
PCI-DSS and Security
Account Security, Virtual Items, and Real Money
Money Laundering and Illegal Payments
Money Laundering: Legal Issues
References
288
289
289
290
291
293
29
Identity, Anonymity, and Privacy
The State of Identity and Anonymity
The Registration Problem and Identity Management Systems
Age Verification
Usage Controls and Game Addiction
Account Compromise, Identity Theft, and Privacy
Legal Requirements for Privacy Protection
References
294
295
296
302
304
306
308
310
30
Protecting Kids from Pedophiles, Stalkers, Cyberbullies,
and Marketeers
Dealing with Cyberbullies, Pedophiles, and Stalkers
Kids’ Communications, Parental Controls, and Monitoring
COPPA
Children and Identity
Child Pornography
References
313
315
316
319
320
321
322
Dancing with Gambling: Skill Games, Contests,
Promotions, and Gambling Again
What Is Gambling and What Is Not
Accidental Casinos
Skill Games
Miscellaneous Security Issues
Legal Considerations
References
324
325
326
327
328
329
333
31
xiv
Contents
32
Denial of Service, Disasters, Reliability, Availability,
and Architecture
What Can Go Wrong, Will Go Wrong
Denial of Service
Scalability and Availability
Sample Game Operations Architecture
Disasters and Disaster Recovery
Contingency Planning
References
335
335
336
339
340
342
342
343
33
Scams and Law Enforcement
Scams in Games
Game Scams
Law Enforcement
Facilities Requirements: Potential Unexpected Laws and Regulations
References
344
345
347
348
349
350
34
Operations, Incidents, and Incident Response
Secure Operations
Active Measures
Incidents and Incident Response
Public Relations and the Perception of Security
References
351
352
354
354
356
358
35
Terrorists
Virtual Terrorism
Online Tools for the Modern Terrorist
References
359
359
360
363
36
Practical Protection
“We Have Met the Enemy and He Is Us”
The Business of Game Protection
In Closing
References
364
364
367
370
370
A
Selected Game Security Incidents
371
B
Glossary
379
Index
385
Introduction
his book is intended to infect its readers with an interest and concern for
game protection. My goal is not to preach to the ”security converted,” but to
convince game designers, developers, programmers, managers, marketeers,
and artists that they should care about the security of their games and give them
confidence that there are ways to secure their games.
T
Asian hackers hack for money, not glory. They do not share their hacks, but sell
them and do not seem to be as sophisticated as those in the US and elsewhere
who target services in the US.
—Whon Namkoong, CEO, NHN USA, Casual Game Conference 2007
Designers ask, “How can I make my game fun?” Executives ask, “How will this
game make money?” Both questions have a security component: How can someone
undermine my game’s play? How could someone play and not pay? What could
undermine the success and potential of this game?
Game protection is about answering these questions. Ignoring them can ruin
the game and cost its creators their business.
Ideally, this book will also be useful for IT security and game security professionals. There is a lot of game security information scattered about on the Internet
and in various press releases and magazine articles. This book brings this information together in one place. When I started discussing game security, a number of industry professionals told me that the game industry needed its “Pearl Harbor” to
bring security to the fore. Although there hasn’t been a single, spectacular and devastating attack, there is an ongoing guerrilla war that distracts the industry from its
primary goal—to build great games.
As a longtime security professional, I have found game security problems quite
fascinating.
xv
xvi
Introduction
Even on a bad day, traditional IT security for business is relatively straightforward. There are only a limited number of things that can happen—money changes
hands, maybe with a third party involved via escrow; assets move through a workflow process; and decisions need approval. Very rarely does IT security get deeply
entwined into the unique aspects of a business.
Not so with computer games. Even a simple card game has more complicated
interactions than many business processes—information is concealed and shared,
cards must be dealt fairly, wagers made and resolved—and most games are much,
much more complicated. Customers are often the adversaries: exploiting game mechanics, stealing game assets, and hacking high scores and achievements. Games
can have a wide range of rules, systems, and transactions limited solely by the imagination of the game developers, the skills of its programmers, and the strategies of
its executives. Today, games face longstanding challenges from piracy and cheating
with the new additions of protecting children and privacy. The list goes on and on
and on.
Plus, you still have all of the traditional IT concerns, including money, authentication, encryption, and so forth.
Protecting games is fascinating, fun …and a whole lot of work.
K NOW Y OUR F OE
The game industry is in a tremendous cycle of innovation with new games and
game business models emerging. Participation is expanding beyond the industry’s
traditional audience of teenage boys into a market that includes everyone from
kids to mom, dad, and even seniors. The bad guys are following right along.
I began my security career at the National Security Agency working, mostly, on
Nuclear Command and Control systems. Our adversary was the USSR—a highly
motivated, skilled, well-funded, committed foe who would do whatever necessary
to defeat us.
Instead of the KGB’s staff and budget, game hackers and cheaters tap a global
pool of talent who will happily attack a game for free with their only reward being
pride at being the one who breaks the latest title: a serious foe to be taken seriously.
Even worse, criminals have learned that games are a lucrative target. A stolen
World of Warcraft account is worth more than $10, whereas a stolen credit card
number can be had for as little as $1.50. The game industry groups estimate that
piracy costs billions of dollars a year.
Introduction
xvii
Viruses, worms, and phishing scams aren’t just being created for fun. IT security threats are now a major criminal problem. Hackers don’t write viruses just to
infect as many computers as possible, they write highly targeted worms that sniff
game account passwords or loot online poker accounts.
S TRUCTURE
AND
C ONTENT
Most security books are structured around technologies or solutions: encryption,
firewalls, digital signatures, and so on. Because the subject of this book is protecting
games, I have organized it around the topics that game developers care about including—piracy, cheating, tournament hacking, gold farming, protecting children,
and protecting identity. Many attacks on games and security methods use common
underlying techniques and so there is some redundancy of exposition. For example,
memory editors are useful for piracy and cheating, whereas challenge/response protocols are useful to protect high scores and remotely authenticate software.
Interestingly, traditional security techniques such as encryption and digital signatures are much less effective for protecting games because most of our attention
is focused on insider attackers who have access to the platform and software and
therefore can often access cryptographic keys or circumvent digital signature functions. Cryptography still has an important part to play in protecting games.
However, because this is text is targeted at general readers, I do not spend much
time explaining the details of the cryptographic protocols I discuss. There are plenty
of books on these topics for interested readers.
I try to draw example games from the entirety of the industry—everything
from gambling and skill games to advergames, casual games, subscription MMOs,
free-to-play games, and first person shooters. Occasionally, I will cite examples
from traditional (and not so traditional) board and card games, as it is often easier
to understand the actual game mechanisms when there are no fancy graphics or animations.
There are numerous specific security incidents cited throughout the book,
drawn from fairly credible press or public sources. The actual facts of the incidents
are often unknown, as game companies, like most other businesses, are not in a
hurry to share the details of their security problems. Often I am guessing as to what
the underlying problem is and what a plausible solution could be, based on my
experience. When I have been given official knowledge of game security problems,
I am almost always constrained by a non-disclosure agreement.
The specific security incidents discussed are not an indictment of any individual, developer, or publisher, and certainly not an endorsement of any hacker.
xviii
Introduction
In most cases, there is no way to verify that the descriptions or problems are completely accurate. Rather, the incidents should be considered examples of the types
of problems that games and game developers face.
Many of the countermeasures that I discuss are non-technical. I am a big
believer in trying to find easy ways to avoid problems rather than always solving
problems with a technical fix. If possible, I try to include multiple solutions since
your game and your environment may be far different than my examples. If nothing else, I want to show that protecting games is not purely, or even primarily, a
technical problem.
I do include some pseudo-code. It isn’t C or Java or Python, but simply an
efficient way to describe various algorithms, protocols, and processes.
A TTACK T OOLS
AND
T ECHNIQUES
I discuss attack tools and techniques throughout the book. If possible, I try to keep
the discussion at a generic level and not give sufficient information to implement a
specific attack on any specific game or product. I do mention several widely known
tools for hacking games. This is not an endorsement of these products, confirmation of their functionality, or a recommendation of any kind.
Anyone who considers using such attack tools should do so with great caution.
Criminals delight in including key-loggers, spyware, adware, and an abundance of
other malicious code with installation packages for hacking tools. Even compiling
these tools from source code can be risky—are you really going to examine every
line of code and every included library?
O NWARD
This book is the product of over seven years of tracking and analysis of game security issues, the last three of them covered in my blog, PlayNoEvil (http://www.
playnoevil.com/). My hope is that I convey some of the excitement that I feel when
a new game problem comes along... and, even better, my satisfaction when I see or
create a solution. The game industry is in the midst of an amazing transformation
and I believe that protecting games will be critical to the success of that transformation.
Steven B. Davis
October, 2008
Part
I
The Protection Game
In this part, you’ll find the following topics:
Chapter 1, “Game Security Overview”
Chapter 2, “Thinking Game Protection”
1
1
Game Security Overview
hy should we worry about game security? Who should worry about game
security? What exactly is game security? How much should we worry
about game security?
W
Welcome to the “security game.”
Everybody plays the security game. You play whether you want to or not. You
are playing the security game when you build or operate a game: Your customers
want to play for free, always win, say what they want, and do what they want to
whomever they want.
And the Internet only makes this worse.
Your players can come from any country. Misrepresent their identity. Upload
and download your games (paid for or not) to an audience of millions or billions.
However, you want to make money (usually), players want other players to
play fairly (whether or not they do so themselves), treat them well, and protect their
children.
And, of course, there is one kind of help you usually don’t want: the government. Game violence, addiction, privacy, obscenity, pedophiles, gambling, marketing, terrorists, hackers, criminals—all sorts of issues can get you on the government’s
radar.
Finally, you have traditional IT and ecommerce security issues including data
theft and information disclosure, disaster recovery, and, when things do go wrong
(and they will), incident response.
I’ve been told security is the game publisher’s problem; I’ve been told it is “a
technical problem;” and I’ve even been told that it is no problem at all or to wait for
the game industry’s “Pearl Harbor.”
2
Chapter 1 Game Security Overview
3
W HAT I S G AME S ECURITY ?
Game security is two things: First, it is the dark side of your game. It includes all the
problems that you don’t want to think about, but that could ruin your business and
your game. Second, and more hopefully, good game security may open up new
ways of operating your game or implementing your business that would not be possible otherwise.
WHEN SHOULD YOU CARE ABOUT GAME SECURITY?
This is simple. If game security does not save you money, enhance your reputation,
or make you money, don’t waste your time on it. Security should be held to the
same standard as anything else you are doing. A nice thing about security in
the game industry (and elsewhere) is that it is often quite cheap to address at the beginning of a project. Security can be horribly expensive or just unsolvable late in the
development process or after the game is running. Security and quality go hand in
hand. In fact, many security defects are really quality defects.
WHO SHOULD WORRY ABOUT GAME SECURITY?
Everyone. You will be able to avoid or solve most of your security problems just by
being aware of them and considering the possibility of things going wrong while
you work. Security is not the responsibility of the security guy (or gal). Security staff
is there to focus on security just as testers focus on testing, designers focus on design, and marketers focus on marketing. Hopefully, they bring domain expertise to
the subject, but, at the end of the day, everything needs to be balanced (the business
model, the game design, the art, the budget, testing, and security).
In general, good data on security incidents is pretty scarce. People don’t like to
admit their problems unless they have to. Without California’s Data Disclosure1
law, it is unlikely that any of us in the US would hear about the numerous compromises of our personal data. Security problems can lead to real changes in consumer behavior. According to a survey by Unisys of 8,000 individuals, 45 percent
stated that they would change financial institutions because of security problems 2.
The game industry faces unique challenges in this regard because players see security problems that affect both themselves and others. Security problems with most
businesses are only visible to the individuals involved. Even in a publicly traded
company, security problems are buried in overhead expenses.
Game security problems are noticed by everyone.
Even single-player games are social. Players share results and achievements.
Once you move to multi-player games, even something as simple as a shared high
score list creates intense attention to perceived cheating. Thanks to the Internet,
4
Protecting Games: A Security Handbook for Game Developers and Publishers
problems with games get broadly distributed very quickly and can cause irreparable harm to the game business. Traditional criminals do their work in the dark.
Attacking games can be a true ego trip spurring game hackers even without any
financial reward: Attackers have the attention of thousands or millions of fellow
players. Of all the articles that I’ve written on my blog, PlayNoEvil (http://www.
playnoevil.com/), the long-term, number one page view is an article I wrote about
cheating at Flash games written in early 2007 (currently, the leading contender is an
article on hacking children’s games). Many of the comments I receive are requests
for help cheating in the various games I discuss!
Consumers care about security. In 2005, a survey of 150,000 Chinese online
game players found that “no game hacking and cheating” was the Number 2 issue
for choosing a game to play (at 11.02 percent), just behind graphics and audio content. It also found that “game cheating and hacking destroyed game” was the
Number 1 reason for leaving a game (18.5 percent) with “game security” itself at
Number 9 (5.85 percent)3. In the US, Intel did a small survey of 226 gamers focused
on cheating and found that 71% were either extremely concerned (23 percent) or
somewhat concerned (48 percent) 4. Cheating problems are of such concern to
game companies that they regularly delete related discussions from their online
forums. Popular concern with game addiction has led to actions to restrict the
number of hours consumers can play in China and elsewhere 5.
Although consumers care more about cheating and excessive game play, piracy
is the number one concern for many traditional computer game companies. The
Entertainment Software Association (ESA) estimates that piracy costs the U.S.
game industry $3 billion per year 6. Another disturbing fact is that games, particularly online games, are increasingly the targets of criminals. In June 2008, Fortinet
found that 13 percent of Asian malware (malicious programs such as worms and
viruses) targeted games 7. The growth of online gaming has made game account
theft lucrative. Criminals use key-loggers (programs that extract keystrokes from a
computer and send them to a remote location) to steal players’ usernames and
passwords to empty player game accounts and sell the contents to others. The
global nature of the game industry makes legal remedies virtually futile.
Blizzard, the operator of the hugely popular online game World of Warcraft,
has gone so far as to start selling a low-cost authentication token8—a technology
previously reserved for serious consumer applications like bank and stock trading
accounts as well as within corporations and governments.
The problem is getting worse. Hackers are following the money and there is easy
money in attacking games. In the early days of the online gambling industry, hackers attacked an online casino running software from Cryptologic Inc. The company
quickly shut the servers down, but during those short couple of hours, everyone
playing craps and video slots won every game, costing the company $1.9 million 9.
Chapter 1 Game Security Overview
5
Gaming is no longer a niche; it is a major form of global entertainment. Everyone
is getting in on the act. Ordinary companies are incorporating games and contests
into their marketing campaigns. Deloitte Touche Tohmatsu found in a 2008 survey
of Dutch advergame sites that over 90 percent of the games are vulnerable and over
50 percent are, in fact, attacked 10. Companies are tying cash and prizes to these
games, making them targets and turning what could be a marketing bonanza into
a public relations nightmare.
THE GAME SECURITY CHALLENGE
The challenge of game security is that you, the game creator, have to play by the
rules. You can’t break laws; you have limited time and a perpetually squeezed budget; and you have to keep your customers safe—all while providing an entertaining
experience. Your foes are constrained only by your efforts. They know no boundaries, and may attack you simply because they can.
Let’s see if we can win.
R EFERENCES
1. California (2002), “SB 1386,” http://info.sen.ca.gov/pub/01-02/bill/sen/sb_1351-1400/sb_1386_
bill_20020926_chaptered.html
2. W. Eazel (2005), “Majority of World Worried about Internet Fraud,” via http://playnoevil.com/
serendipity/index.php?/archives/144-Bad-Security-Makes-Consumers-Change-Online-Behavior-GoodDemographics-Metrics.html (original link http://www.scmagazine.com/us/news/article/530336/?n=us)
3. PlayNoEvil (2006), “Game Security Major Issue for Online Gamers in China,”
http://playnoevil.com/serendipity/index.php?/archives/719-Game-Security-Major-Issue-for-OnlineGamers-in-China.html
4. Intel (2006), “Intel Fair Online Gaming Study”
5. China Daily (2007), “China Clamps Down on Teenage Internet Gaming,”
http://www.chinadaily.com.cn/china/2007-07/17/content_5438062.htm
6. ESA (2007), “Video Game Industry Applauds Game Pirate’s Sentence,” http://www.theesa.com/
newsroom/release_archives_detail.asp?releaseID=20
7. Fortinet (2008), “The State of Malware: June 2008 Edition,” http://www.fortiguardcenter.com/reports/
roundup_jun_2008.html
8. Blizzard (2008), “Blizzard Authenticator Offers Enhanced Security for World of Warcraft Accounts,”
http://eu.blizzard.com/en/press/080626-ba.html
9. B. Warner (2001), “Hacker’s Heaven: Online Gambling,” http://www.cbsnews.com/stories/2001/09/10/
tech/main310567.shtml
10. Deloitte (2008), “Advergames op Grote Schaal Gehackt,” http://www.deloitte.com/dtt/press_release/
0,1014,sid%253D13354%2526cid%253D202819,00.html
(English language version at http://playnoevil.com/serendipity/index.php?/archives/2107-SeriousAdvergame-Hacking-Problems-Deloitte-Touche-Tohmatsu-Netherlands-Survey-Findings.html)
2
Thinking Game Protection
y first impulse when I began this project was to use the word “security” in
the title. After all, we usually talk about IT security: When I started in the
field in the mid-1980s at U.S. National Security Agency (NSA), I worked
in communications security (COMSEC) and computer security (COMPUSEC)
and later information security (INFOSEC). There was also Operations Security
(OPSEC), transmission security (TRANSEC), and a whole bunch of other SECs.
M
The problem with the word “security” is that it is a bit of a lie. You can never
be completely secure (and every security person will tell you this). Security is an
ideal, like truth, beauty, and art. This linguistic trap was articulated in one of the
few really good books in the field that I have found: Information Protection and
Other Unnatural Acts by Harry Demaio1, sadly, long out of print. Protection captures our endeavor much more accurately than security. We are in the business of
protecting games, because we know that we can’t fully secure them. We face the
same problem everyone else does—protection fails, sometimes with spectacular
consequences. When we think about protection, we are already thinking in economic terms—“how much protection is enough?”—rather than in absolutes.
There is power in imperfection. My goal in this section and throughout this
book is to change how you think, not about game security problems, but about
game protection and how to achieve it. This section does not address the specific issues of piracy, cheating, or any of the other numerous challenges that drive game
developers to distraction. Rather, it gives you a framework you can use to think
about protecting your games in the face of these threats, or at least how to protect
your games “well enough.”
Game developers and publishers often seem a bit fatalistic about security. There
seems to be a tendency to give up and simply accept the problems. Or, conversely,
developers and publishers seek some magic bullet—a single product that will solve
their problems with one purchase; preferably bought at the end of the development
process from someone else’s budget.
6
Chapter 2 Thinking Game Protection
7
This violates my first security principle:
Security Principle 1: Anything that is easy to add is easy to remove.
Many anti-piracy solutions such as digital rights management (DRM), which is
discussed in Chapter 6, repeatedly demonstrate this problem.
The notion of “layers” is used when discussing security, but the term is widely
misunderstood. It is common to talk about a “security layer” or about “security
services.” Tools like encryption, key management, firewalls, and intrusion detection
are put into nice little architectural blocks to be called on when needed and are
called security layers or services.
Nothing could be further from the truth.
Properly speaking, one should talk about “layered security.” When we are in
the world of protection, we understand that all our security tools are far from perfect. The art and engineering of well-protected systems comes from combining
multiple, interlocking security techniques into a powerful whole. Rather than
building a security chain that is only as strong as its weakest link, you need to
create a security mesh of independent elements that is much stronger than any
individual links and will continue to operate even if a single tool fails.
Effective protection requires weaving security throughout your application or
business. Some of your protection tools may not even be security techniques, but
simply carefully chosen parts of your business or technical strategy.
I NDEPENDENCE
In 1990, Clifford Stoll wrote perhaps the first true computer security caper
story The Cuckoo’s Egg 2. It was even made into a NOVA special. Dr. Stoll was an astronomer who, unable to get a job doing astronomy, worked at Lawrence Berkeley
National Lab as a system administrator. His boss asked him to investigate a $0.75
discrepancy between an old, custom computer accounting system and the standard
UNIX one. This investigation led to an international spy ring, the FBI, CIA, and all
sorts of other entertaining things. It’s a great book or video.
The most important lesson of the story seems never to have been learned and
is my second security principle:
Security Principle 2: Effective security comes from weaving
together independent systems.
8
Protecting Games: A Security Handbook for Game Developers and Publishers
The only reason that this case came to light was because someone noticed the
accounting discrepancy between the old accounting system and the standard one.
The hackers knew enough about the standard UNIX operating system to attack the
accounting system and hide their tracks. They did not know about the strange old
Berkeley accounting system. If they had, they would likely have beaten it, as it was
running on the same computer. To show how bad the problem is, many computer
security references use the term “audit trails” routinely. The term “audit trail”
clearly implies all sorts of wonderful independence and security. Unfortunately,
these tools are not audit trails at all, only accounting records. There is only one
system involved that is generating the report, not two independent ones.
When I talk about independence, I am really talking about statistical independence: Entities are independent of each other if events or actions related to one do
not affect the other3. The challenge, of course, is how to build independence into
your system—without breaking the bank.
Independence is discussed much more extensively in the field of safety engineering by those who are building reliable and highly available systems than it is as
a security principle. Passenger jets have multiple engines so that the plane will be
able to fly when one (and sometimes more than one) engine fails. The Space Shuttle
has five flight computers that vote to avoid undetected failures.
We can actually achieve the goals of independence in multiple ways. As described, we can have multiple entities that independently generate identical results
(we hope). We can also have systems that generate multiple results that are independent of each other—a log of game wins, losses, and wagers compared to a
financial log of deposits, transfers, and payments. One of the areas where games
have an advantage over other entertainment media is that they are naturally highly
transactional. While I may buy and watch a movie, for many games I can post high
scores, play with other people, and otherwise repeatedly interact. These numerous
interactions can be used together to prevent and detect piracy, discourage griefing,
and deter cheating.
L AZY , C HEAP ,
OR
S TUPID
I’ve long enjoyed the engineering truism “good, fast, or cheap; choose two.” In
other words, if you want something good and fast, it won’t be cheap and if you want
something fast and cheap, it won’t be good. I think the security field needed something similar, so here’s my stab at it:
Lazy, cheap, or stupid: Any one will get you.
… or some such.
Chapter 2 Thinking Game Protection
YOU CAN’T COUNT ON TRUST
“Trust” gets waved around a lot in the world of IT security (and, recently, in discussions about fighting piracy). When I started out in the security field, a big focus was
on trusted operating systems and since then we’ve moved on to trusted platform
modules. The whole idea of these products is that by building a whole lot of “security” (whatever that means), we can “trust” the “trusted” thingy and be secure. The
goal is noble, but rather naïve.
First of all, there is no objective definition of security. The security requirements for
another business can be very different from yours even when you both are using the
exact same applications and platforms. The game industry is not the same as the military; which is not the same as a dating service or an online auction service.
Second, most real security problems occur at the application and business operations levels, completely independent of the underlying platform. Spell checkers may
be able to determine whether a word is spelled correctly, but they can’t tell if you’ve
chosen the wrong word (a problem that I’ve found often while editing this book). If
you have incorrectly defined or configured your ordering process, an unauthorized individual may be able to furnish his house at your expense. A trusted platform will do
nothing to solve malicious use of a legitimate application.
Third, the interaction of arbitrary applications on top of a trusted platform can no
longer be considered trustworthy. As I noted, when my career began in the 1980s,
trusted operating systems were all the rage. What we found was that once we started
adding applications to these platforms, our security analysts were able to undermine
the system by attacking the applications directly. Currently, the focus is on hardening
standard operating systems—basically getting rid of the gratuitous “stuff’” that can
cause some of the worst problems. This includes removing unnecessary applications
such as editors and compilers as well as unneeded network services, analysis tools,
and many of the other products that are provided as part of a standard operating system distribution.
Fourth, what if the trusted platform fails? It happens. Even if you wanted to, could
you risk your business on the promises of a third party? Once upon a time I worked
on a government project with a very clever anti-tamper piece of hardware. Our security team had to plan for the scenario where we would lose one of these devices
(which we had spent a lot of money making tamper-resistant). Our final assessment
was that we had to operate the system as if we had no tamper protection. That, if we
ever lost control of one of our anti-tamper boxes, we still had to assume it had been
compromised and implement our procedures to recover our security status—even if
it was returned “intact.” Trust is not enough.
All of this is not to say that using trusted systems is not good practice. However,
it’s best to use these products as tools and part of an overall security system plan, not
as the hard kernel of security.
9
10
Protecting Games: A Security Handbook for Game Developers and Publishers
To an outsider, security often looks like black magic. The field is full of magic
words: rootkits, worms, viruses, hackers, penetration tests, amazing sagas, embarrassing failures, and spectacular capers. Scratch the surface, however, and you’ll
find that almost all security problems arise from one or more basic human failings:
laziness, being cheap, or stupidity. These are security’s three deadly sins, so let’s
look at each in more detail.
Laziness
There is depth and even some real complexity as you learn the art of security, but
the reason many security experts can appear to work miracles and divine problems
after taking only a cursory look at an organization, system, or project comes from
knowing the following:
Security is not a primary concern of most people.
When you don’t care about something, you tend to take shortcuts and cut corners.
People are wonderfully consistent, especially in how they cut corners.
Of course, things aren’t quite this simple. You need to have a good deal of
knowledge of development practices, programming, system design, project management, business planning, and “human nature” to pull off these “miraculous” insights. Once someone describes a situation for me, the first thing I think about is
“what would be the easiest way to build this system?” and, because the easiest way
to build something is rarely the right way, “what is the easiest way to exploit the
poorly built system?”.
Habits are wonderful for predicting future disasters. In the game industry, the
biggest cheating problems come from the fact that most developers start by programming a single-player game and then add multi-player features. Even though
everyone knows and complains about piracy, they don’t actually seem to start planning a strategy against it until the game is about to launch.
The game industry is not alone. I’ve been brought in on classified government
projects after years of development and many millions of dollars spent, where
security only came up because someone noticed that the system needed to be
accredited as secure before it was allowed to operate.
Being Cheap
Security is never given a decent budget. It is a legitimate problem for planners.
Security rarely shows up as a positive revenue line item. It is always portrayed as a
cost with nebulous benefits at best. Interestingly, one of the things I like best about
the game industry is that its security problems are so closely tied to its core business.
Chapter 2 Thinking Game Protection
11
In many other industries, it is very hard to argue whether one firewall is better than
another or if one should invest in an intrusion detection system or not. This is not
true for the games industry.
Piracy costs sales. As a security analyst, I can make estimates of those costs and
the benefits of my proposed anti-piracy strategy and present a reasonable business
case to management and ask for a budget. Cheating has not been seen to be a major
problem for traditional, single-player games that are sold shrink-wrapped at a
retailer. However, as we move towards multi-player and online games and the
industry transforms from a product-sales business to a service business, cheating becomes much more important. Cheating and game integrity has always been critically
important for skill games, contests, and the gambling side of the industry. Similarly,
payment processing, identity, protecting children, and the other topics that I will
discuss are not theoretical problems. They can cost your business money or, even
worse, give you the opportunity to deal with irate customers or governments.
Stupidity (Ignorance Is Bliss, for a While)
Developers in every industry are rightfully proud of their accomplishments and
eager to hurry their products to market. After a long slog of development and hopefully some testing, most developers are rather confident about their product’s
ability to work well. In physics, Work equals Force times Distance. If you don’t
go anywhere, you haven’t done any Work. The remorseless calculus of security
doesn’t care how hard you worked or who you are. Hackers just care about what
you have actually done. When I made my first security presentation to the game
industry in 2001, developers shared horror stories of players hacking Flash games
just to get high scores on their individual sites. Eight years later, players are still
hacking Flash games to get high scores to win prizes and lots of cash… and causing
some large companies serious grief in the process.
Gold farming isn’t a new problem and people have been creating bots since the
early text MUDs. However, pretty much every modern MMO has continued to be
plagued by these attacks. Now, instead of a couple of guys running a game on a university server, gold farmers are earning millions, if not billions of dollars, and chewing up entire customer support teams. Major game publishers are spending untold
dollars suing bot builder companies knowing full well that another will spring up,
probably in a jurisdiction beyond the effective reach of their lawyers.
All of the security issues discussed in this book are fairly well known to professionals in the industry as well as interested consumers and even more interested hackers and criminals. The best way to avoid security problems is to simply acknowledge
them at the start of a project and address them early in the development process. Or,
at the very least, ignore them consciously. It is simply stupid to do otherwise.
12
Protecting Games: A Security Handbook for Game Developers and Publishers
The good news is that solving many of your security problems may be as simple
as adding “remember security” to your project’s PowerPoint templates.
T HREATS , V ULNERABILITIES ,
AND
R ISK
The game industry knows who its attackers are: Pirates steal games, cheaters
win unfairly, griefers and gold farmers are just a pain for everyone. The IT security
literature talks a lot about vulnerabilities, threats, and risks. The language of the
industry and its processes in this regard are a bit confusing. The real question is:
What, if anything, can a security analyst tell you that will cause you
to change how you operate or spend money to fix something?
While people may talk, and talk about security requirements, in practice, these
requirements are undermined when there is money and effort required. This is
frustrating for security analysts, as they spend a lot of time hunting for vulnerabilities, writing them up, and presenting them to management only to be told “we’ll
accept the risk.”
The problem is, management might not be right about accepting the risk, but
the basis of their decision seems to have little to do with the described vulnerability, but rather with rhetoric.
Risk is the nemesis of protection. Risk is where people get into the most trouble. It is basically a qualitative assessment of how likely someone will do something
(bad) and the probability that he or she will succeed. Risk also captures the consequences, usually in financial terms, of an incident. On paper, this doesn’t sound like
a bad concept at all. The problem is with its use.
Risk assessments, vulnerability assessments, and threat assessments seem to all
boil down to a long questionnaire and Excel spreadsheet that reduces risk to a
number.
Often commercial products will generate some “risk score” number, which is
then used to determine whether you are secure enough.
There are three important problems with this approach. First, the weighting
schemes that are used to compare one attack or vulnerability to another are often
hidden and reflect the biases of the tool maker (or consultant) rather than the priorities of the client. Second, some risks are not commeasurable, or rather they
shouldn’t be: It makes little or no sense to combine security issues related to identity theft with those for denial of service. Third, the tools rarely seem to support
business decisions. Instead of giving a final numeric score, these tools would be
Chapter 2 Thinking Game Protection
13
more useful for determining relative residual risk between programmatic choices:
Should you choose Option A with Budget B, which yields Risk Profile C or choose
Option D with Budget E, which yields Risk Profile F?
Making assumptions about your adversary is quite dangerous. People tend to
“mirror image” their foes. They assume that the enemy has the same propensity for
risk and values as they do.
The game industry is particularly vulnerable to this problem:
Game pirates put a radically different value on games than a publisher does. In
practice, they face little to no risk for the actual act of breaking a game’s security
and they seem to have the time and patience to effectively defeat many security
systems.
Gold farming is, allegedly, a billion dollar industry employing tens of thousands of individuals worldwide. Aggressively exploiting an MMO’s economy is
big business. For the game operator, controlling gold farming is often a low
priority. It falls somewhere between customer support and bug hunting. The
operator’s main priority is to keep the servers running and the players playing
and paying.
B EYOND P ROTECT , D ETECT , R EACT
Protect, detect, react. It has become something of a mantra in the traditional IT
security community. First, you protect your information from attack. If they
successfully attack you, you detect the attack and react appropriately. This iron triangle of IT security probably arose out of a military perspective: Attack, defend, and
counterattack. Protect, detect, react is simple, wonderful, and far from complete,
even in a military context.
There are at least seven additional basic security strategies:
Recover—Reconstitute the system to a secure state (or secure as possible).
Interestingly, this strategy is critical for military systems as well. For example,
if an encryption key is compromised, you create and distribute a new key and
remove the old one. If security equipment is lost, it is simply locked out of the
network. It is important to note that this does not reestablish the security of any
data that has already been compromised. In a military setting, the compromised data may no longer have any value. The message “Go to War” is not a
secret for all that long. Unfortunately for game developers, if a digital rights
management (DRM) system does not restore the security of the lost game, it
restores the security for future games.
14
Protecting Games: A Security Handbook for Game Developers and Publishers
Avoid—There are some fights that are not worth fighting, battles not worth
winning, and problems that are “too hard.” For games, often we can change the
game’s business model and design as well as its code as a way to thwart attackers. Online games that use the “free-to-play” business model where everything
is purchased from the game operator are essentially immune to gold farming.
Botting, the use of automated programs that play on a player’s behalf, is a hard
problem, in many cases. Game developers might consider changing the game
design to make botting impractical or change the game rules to make the
benefits of botting negligible. An Indian game operator used this tactic for an
MMO that he had licensed that was known to have problems with bots4. The
game operator added direct item and currency sales to the subscription game,
thereby reducing the benefits of botting.
Ignore—Some problems are just not that bad. It is certainly fair to choose to
ignore them, especially if the cost of addressing the problem is high. Many traditional computer game developers often ignore cheating problems with their
multi-player games, as the entire multi-player feature is often considered just
another option added to the core, single-player experience.
Delegate—Sometimes you can transfer a problem onto someone else. If you
are able to do this, why not let someone else deal with the problem? The delegation strategy can be particularly useful to transfer liability. There are certain
third-party companies that are legally authorized to accept liability for protecting children’s identity information and limiting marketing under COPPA.
This may be a more effective, and less expensive, option than complying with
COPPA internally. I would argue that many in the entertainment industry are
trying to delegate their piracy problem to the government. Department of
Justice lawyers and FBI and Customs agents are almost free for the industry;
they cost just a bit of lobbying.
Insure—If you can’t eliminate a problem, why not buy insurance? It works for
car accidents, after all. Unfortunately, this option is rarely available for IT security or game security problems today. It is probably the great unmet security
opportunity. Watch for companies who offer security services to see if they also
offer liability protection. Many work like your home security system; their
insurance basically consists of a refund on your security system equipment
purchase (at best) or a refund of a month’s fees. In the IT security area I have
seen identity theft insurance that falls in this category.
Reward—Why focus on “sticks” when you can offer “carrots” to those who
might otherwise harm your product or business? The key, of course, is that
the reward has to appear significant to your customers while being very costeffective to provide. The “good driver discount” for auto insurance and
airlines’ frequent flier programs are familiar examples.
Chapter 2 Thinking Game Protection
15
Deter—The threat of punishment works as long as the possibility of being
caught is high and the punishment is substantial. Law enforcement, peacetime
armies, and nuclear war all rely on deterrence. Compelling good behavior is
often much more expensive than relying on deterrence. Also, systems that attempt to compel goodness often are less effective at detecting their own failures.
There is a bit more that can be added to the original mantra:
Protect—As noted while discussing “Recover,” you actually need to know what
you are protecting. I have seen many people confuse using encryption with
“security” and hash functions with “integrity.” Game developers have relied on
a browser’s encryption function to protect high scores from manipulation.
Unfortunately, high-score cheaters are the actual people playing the game and
thus have access to the score before it is encrypted. Similarly, several major
commercial games have used hash functions to “sign” data, not realizing that
the data hash can simply be replaced with one for the hacker’s preferred game
configuration.
Detect—Detecting problems can be tricky. Game piracy without network connections is essentially impossible to quantify, as there is no direct feedback. If
the number of validated, registered licenses is less than the royalties for a game
developer, it could be an interesting question whether the game has a piracy
problem or an issue with the publisher withholding royalties.
React—Ban, ban, ban. Banning pretty much seems the only strategy used to
punish gaming wrongdoers, whether they are pirates or cheaters or whatever.
For a game company, banning is pretty extreme and tends to deprive the company of revenue, so it is a fair question as to whether banning always makes
good business sense.
A complete security system is built by creatively combining these strategies to
form a coherent whole. For all of the game industry’s complaining about piracy,
particularly on the PC platform, there doesn’t seem to be much thought put into
managing piracy during the game development and publication process.
A SYMMETRIC W ARFARE
Security is about managing uncertainty. You never know for sure when and where
you are going to be attacked, but you are pretty sure that it is going to happen
sometime. Also, security is a support function to your real goal of providing a great
game and running a successful business. It is not the end, but a means. Good
protection has got to be lean.
16
Protecting Games: A Security Handbook for Game Developers and Publishers
Protection is a battle between you and your foe. Both of you have time and
resources to allocate to the fight. The only advantage you have as the defender is
you get to set some of the rules and choose the battlefield.
As noted previously, one the biggest problems that you face is asymmetric
values. Your foe may be far more interested in attacking your game than you are in
defending it. Also, you are obliged to defend the entire game and succeed everywhere,
while your adversary only has to find one hole in your armor and you are lost.
Sadly, a clear example of this asymmetry is the state of airport security in the US
since 9/11. We are spending billions of dollars to try to defend every airplane
against all potential hijackers. And, as numerous incidents have shown, there are
always weaknesses in the system. A terrorist individual or group has to find only
one vulnerability that he or she can successfully exploit to cause serious trouble. Or,
these attackers can attack somewhere else where we are not defending at all.
Fortunately, games are much more constrained systems than national defense.
However, they do both face highly motivated adversaries. Game developers and
publishers have much more control than Homeland Security does over the systems
that hackers want to attack.
Security Principle 3: Make your adversary work a lot harder than you.
Defensive methods should be chosen for their low cost and coverage of a wide
range of threats. For game cheating, the most common strategy is to include some
sort of “cheat detection” tool with the game. The major anti-cheating products in
the industry are Blizzard’s Warden, Valve’s VAC, Even Balance’s PunkBuster,
nProtect’s GameGuard, and AhnLab’s HackShield. They are all signature-based
systems, similar to anti-virus products that use signatures of the individual versions
of malicious software to detect attacks. The cost of this system is that it must be
constantly updated5 to keep up with the latest cheats and, just as the security
industry has found with viruses, hackers are very good at attacking anti-virus tools
directly as well as hiding themselves from the anti-virus tools and altering their malicious software’s signatures6.
While the work of creating and distributing an individual signature is not significant, there is a fair amount of effort to find hacks, understand them, and build
a reasonably stable signature. It is worth noting that this strategy for detecting hacks
depends on cheats being widely used. If there are only a couple of cheaters using a
specific technique, the security surveillance system will be unlikely to detect the
attack. This is becoming increasingly true for traditional malware, which is now
targeted at specific companies or individuals as opposed to the world as a whole 7.
Chapter 2 Thinking Game Protection
17
In MMOs, professional gold farmers are motivated to develop and use internal
or limited distribution tools instead of mass-market products. This is also true for
the online casino industry: If you have a real, effective cheat that makes you a lot of
money, you are not going to sell it to anyone. Once cheating or hacking is a business and not just vandalism, there is no reason to broadcast attacks.
One of the real reasons that encryption is such a popular security tool is that it
is cheap and easy to implement—whether it is effective or not is a different matter.
The most effective security strategy, for games (and anyone else), is to change the
system so that there is nothing that can be exploited. You are probably lost if you
are constantly hunting for hackers.
P ROCESS , T ESTING , T OOLS ,
AND
T ECHNIQUES
Although “thinking right” about security up front will get you a long way, there are
useful tools and tactics to complete the job. Penetration testing gets a lot of visibility as a key security strategy. Penetration testers attempt to break in to a system
from the outside, just like an attacker. When they succeed, it is impressive and
compelling (if a bit late in the development process). There are three weaknesses to
penetration testing:
Many of the “revealed” security weaknesses are generic operating system and
common application vulnerabilities. This is not to minimize their impact, but
there are cheaper and easier ways to find these problems earlier in the development process.
Penetration testing is often very time-constrained. As such, penetration testers
do not have time to become familiar with the target and so go for the easy,
generic attacks. The most damaging flaws are often in the target’s unique
business application (or, in this case, game) environment.
Finally, you cannot test either security or quality into a system. They need to be
built in from the beginning.
My preferred security analysis and testing strategy is to run in parallel to development: from concept through implementation and deployment. This has
substantial advantages. Design errors can be addressed when they are still just
PowerPoint slides and Word documents. Because the security analysis team has full
access to the design and code, it is much better able to focus on proactively finding
real problems at the source before they get out of control and expensive to correct.
Again, security resources are very scarce compared to those of the attackers.
18
Protecting Games: A Security Handbook for Game Developers and Publishers
Although a hacker may need to reverse-engineer your system to attack it, he
may also be a former team member or have “dumpster dived” to collect your
documentation or even downloaded the source code from your server. There is no
benefit to forcing your security team to emulate this phase of the attack. If your
only defense is that the hacker does not know your system design, you are dependent on “security by obscurity” as your sole security barrier—and you are in deep
trouble.
Good security testing tools should be a standard part of the toolbox of every
developer and system and network administrator. Similarly, there are numerous
software quality and security testing tools that can help avoid memory leaks and
other common coding errors.
One of the real challenges for security in games and other applications is that
you need to build protection in during the development process, but its benefits
do not appear until the product or service is operational. This causes a number of
annoying, but real, problems.
The biggest problem is that most organizations separate their development and
operations budgets. Features like protection against attack that are hard to measure
during development are easy to drop: They have no consequence until the development team has been paid and moved on to another project. Another issue is that
many security failures are largely silent. When your house is robbed or car is stolen,
you tend to notice it rather quickly. Code theft, identity theft, and unsecured
servers may never be noticed. It is important to build “security instrumentation”
into your system to help make both known and potential threats visible. It may be
possible at an early stage to at least detect problems that you may not be willing or
able to prevent at that time. This will give your live team and operations staff the
tools they need to identify and fix the problem later.
There has been a rise in active measures to fight hackers, pirates, and cheaters—
both within the game industry and outside it. Services like MediaDefender, which
actively seeds peer-to-peer networks to disrupt and locate music pirates, can sometimes create more problems than they are worth. The StarForce anti-piracy saga8
and the Sony BMG Rootkit case have become cautionary examples and created
objections to almost any form of anti-piracy technology. Even Blizzard’s Warden
anti-cheating tool has raised privacy concerns (see Chapter 34).
Some of these methods can be quite effective. However, if you are going to
implement them, you should consider possible consequences. Some of these tools
can cause problems directly, as when MediaDefender targeted a legitimate P2P
distribution service9, and some can cause indirect problems. For example, Sony
BMG’s Rootkit was used to attack World of Warcraft. The decision to use these
active strategies should be made at a senior level. After all, at some point, you may
have to defend your active measures strategy to the public in The Washington Post.
Chapter 2 Thinking Game Protection
19
S ECOND G RADER S ECURITY
Many people confuse complexity with security. One of the disdainful comments
regularly used by those in the security field is “security by obscurity”: the notion
that if you make something sufficiently complicated, surely it will be too difficult
for an adversary to unravel.
This is rarely the case.
Usually, the result is that the system is so complicated that it cannot be maintained: Your own team does not understand the system and there are often obscure
parts of the design that make it more vulnerable to attack. Or, even more likely,
your maintenance staff will come along and “clean up” the design so that they can
support it—and completely undermine your “obscurity” efforts.
Probably the most important design principle that I learned at NSA was to
focus on clean, clear design. Good system engineering and good security engineering go hand-in-hand. Ugly, complicated designs are rarely secure. Any security
weaknesses in a well-architected system will stand out like a sore thumb, and
usually be reasonably easy to fix. This leads to my next security principle:
Security Principle 4: If it’s not simple, it’s not secure.
Or, if you can’t explain it to your manager (or a second grader) on one
PowerPoint slide, it probably isn’t secure. There are computer scientists and mathematicians who look for ways to “prove” security. They use complicated symbolic
languages and systems to create security theorems and then prove them.
Fascinating stuff. These techniques are great for PhD candidates and academics,
but, I’m fairly confident, totally irrelevant in the real world.
Why do I doubt this?
Let me briefly don my tattered, ancient mathematical credentials…
If you’ve heard of Gödel’s Theorem, made familiar outside of the circles of
academia by Douglas Hofstadter’s widely owned but rarely completely read Gödel,
Escher, Bach: an Eternal Golden Braid 10, you may recall that Gödel proved the
Incompleteness Theorem11. This important work of mathematical logic states that,
in short, for any sufficiently complicated system, you can neither prove nor
disprove every theorem about it. Gödel also proved undecidability (whether you
can decide if something is true or not), and Alan Turing disproved computability.
The bottom line of these three theorems is that anything that is even slightly
complicated cannot be completely understood and therefore, you cannot really
know that it is secure.
20
Protecting Games: A Security Handbook for Game Developers and Publishers
In practical terms this means that the only way to make something really secure
is to make it “trivially secure”: The hard part of good security design is to make the
system simple.
This ends my lofty discussions about security and protection; let’s get to work
on protecting your games.
R EFERENCES
1. H. Demaio (1992), Information Protection and Other Unnatural Acts: Every Manager’s Guide to Keeping
Vital Computer Data Safe and Sound, Amacom Books, ISBN 0-81445-044-X
2. Cliff Stoll (1990), The Cuckoo’s Egg: Tracking a Spy Through the Maze of Computer Espionage,
PocketBooks, ISBN 0-7434-1146-3
3. Wikipedia, “Statistical Independence,”
http://en.wikipedia.org/wiki/Statistical_independence
4. D. Sengupta (2007), “It’s Virtual World Out There, All for Hard Moolah,” http://infotech.indiatimes.com/
Its_virtual_world_out_there_all_for_hard_moolah/articleshow/1388388.cms
5. A. Modine (2007), “World of Warcraft Spykit Gets Encrypted,”
http://www.theregister.co.uk/2007/11/15/world_of_warcraft_warden_encryption/
6. R. Lemos (2005), “World of Warcraft Hackers Using Sony BMG Rootkit,”
http://www.securityfocus.com/ brief/34
7. S. Gaudin (2005), “Targeted Virus Attacks Replace Sweeping Assaults,”
http://www.esecurityplanet.com/ trends/article.php/3554046
8. A. Varney (2006), “StarForce Must Die,”
http://www.escapistmagazine.com/articles/view/issues/issue_72/414-StarForce-Must-Die
9. R. Paul (2008), “Revision3 CEO: Blackout Caused by MediaDefender Attack,”
http://arstechnica.com/news.ars/post/20080529-revision3-ceo-blackout-caused-by-mediadefenderattack.html
10. D. Hofstadter (1999), Gödel, Escher, Bach: an Eternal Golden Braid, Basic Books,
ISBN 978-046502-656-2
11. Wikipedia (2008), “Gödel’s Incompleteness Theorems,”
http://en.wikipedia.org/wiki/Incompleteness_theorem
Part
II
Piracy and Used Games
In this part, you’ll find the following topics:
Chapter 3, “Overview of Piracy and Used Games”
Chapter 4, “The State of Piracy and Anti-Piracy”
Chapter 5, “Distribution Piracy”
Chapter 6, “DRM, Licensing, Policies, and Region Coding”
Chapter 7, “Console Piracy, Used Games, and Pricing”
Chapter 8, “Server Piracy”
Chapter 9, “Other Strategies, Tactics, and Thoughts”
Chapter 10, “Anti-Piracy Bill of Rights”
Chapter 11, “The Piracy Tipping Point”
21
3
Overview of Piracy
and Used Games
roadband communications and the Internet have transformed piracy from a
garage sale nuisance and shady street vendors selling games from the back of
a van into a pervasive problem. Virtually any digital media is only a quick
Google search and click away online. Of course, the real questions for any business
are how much money is this costing and what can one do about it?
B
Piracy is theft. Some may quibble about “software piracy” being copyright
infringement; however, the bottom line is that when people don’t pay for a commercial good or service, they are stealing (at least from the seller’s perspective).
Open source advocates claim “software wants to be free.” Software does not want
to be free. Freeloaders want free software. But, it is also worth looking at other
industries where sales revenue is lost. Not just to unauthorized copies, but also to
used goods where creators do not earn revenue from the secondary sales. Movies,
books, and music have always had some market for used products, but the growth
of console games has created a massive used game retail market (PC games are
rarely sold used).
In the next several chapters, I discuss the various aspects of the piracy problem
and used games—the traditional techniques that have been used to fight piracy, and
some alternative strategies. Additionally, I address legitimate consumer concerns
about anti-piracy measures.
22
4
The State of Piracy
and Anti-Piracy
he first questions that should be asked about piracy are “how bad is it?” and
“whom does it affect?” There are two completely different ways to measure
piracy. The first is based on the estimated number of pirated copies of a
game or other work and what those items would cost at retail. This seems to be
the preferred model used by the U.S. Business Software Alliance (BSA) and
Entertainment Software Association (ESA). These numbers are quite suspect on a
number of counts. The second approach is to measure how many actual sales are
lost. After all, many people will use something if it is available for free, but have no
interest in buying the item.
T
The nature of digital piracy makes it quite difficult to estimate the size of the
problem. Downloading files and duplicating disks do not leave easy trails for forensic investigators. An article about casual game piracy claimed a piracy rate of
around 92 percent based on attempted connections to the company’s server 1. At
least this number came from an actual measurement. A report by China’s government, whose citizens are often a target of anti-piracy rhetoric, noted that based on
BSA’s estimates, one quarter of the country’s Gross Domestic Product (GDP)
would, or rather should, have been spent on software in 20052. The BSA is not alone
in having difficulty with numbers. The Royal Canadian Mounted Police seemingly
made up its estimate of 10 to 30 billion Canadian dollars in piracy—a number that
apparently went from a bullet on a PowerPoint slide into national policy 3. Australia
has moved to challenge a report by copyright holders on the damage from piracy,
stating that the numbers needed to be substantiated, especially as they were being
used to justify increasingly harsh civil and criminal penalties4.
23
24
Protecting Games: A Security Handbook for Game Developers and Publishers
D ETERMINING
THE
S COPE
OF
P IRACY
Even if we do accept these high piracy rates, the real question for business is how
many of those customers would actually have purchased the item. After all, the
marginal cost of producing digital items for the publisher is very low, so the sunk
material and production costs are often not a major issue. Typically, therefore,
there is no real cost to the publisher from these pirates. This is not always the case,
as SiN Episode 1, a downloaded game that was distributed via Valve’s Steam service,
found when they were overwhelmed with customer support requests by irate “customers” who hadn’t actually purchased the game5! Companies that operate a free
online game play service, like Blizzard’s Battle.Net or ArenaNet’s Guild Wars, need
to be especially concerned about piracy, because the way they subsidize the online
service is through product sales. Several years ago, it was not unusual for Blizzard
to announce bans of hundreds of thousands of CD keys, many of them because the
game copies were pirated6. Specifically, the players were using counterfeit keys to
register the games with the Battle.Net service.
One of the powerful advantages of a service like Battle.Net is that it provides information on numbers of pirates (or, at least, unauthorized registration attempts)
as well as numbers of legitimate players. It also provides an incentive for players to
convert from an illegal copy to a legal one so that they can participate in the online
service. Finally, the service provides a means to compare actual sales (and royalties)
with numbers of registered players to estimate the success of counterfeit CD key
piracy. It might even be able to measure how many pirates purchase legitimate
copies once caught.
In general, there are few good methods to determine how many pirate game
users would actually buy a game. However, the stereotype of gamers (and game pirates) as young and poor is no longer true. Game demographics have shifted to
older players who are generally less likely to pirate games. This would seem to imply
that sales lost from pirates isn’t significant—older players are likely to buy legitimate copies and younger players would never purchase the game at all. Brad
Wardell of Stardock has been quoted7 as saying that game developers need to focus
on the actual population of paying customers:
“When you make a game for a target market, you have to look at how many
people will actually buy your game combined with how much it will cost to
make a game for that target market. What good is a large number of users if
they’re not going to buy your game? And what good is a market where the
minimal commitment to make a game for it is $10 million if the target audience isn’t likely to pay for the game?”
Chapter 4 The State of Piracy and Anti-Piracy
25
“If the target demographic for your game is full of pirates who won’t buy your
game, then why support them? That’s one of the things I have a hard time
understanding. It’s irrelevant how many people will play your game (if you’re
in the business of selling games that is). It’s only relevant how many people are
likely to buy your game.”
The computer game industry has adopted four major strategies to address
piracy:
Console-based games
Digital rights management/license management
Online gaming
Prosecutions
The dominant anti-piracy strategy by the computer game industry has been to
focus game development towards game consoles. (As a side note, the film industry’s
move towards Blu-ray from DVD would seem to be an attempt to follow suit.) The
general argument has been that control over game hardware will prevent piracy.
In fact, the move to consoles has not really stopped piracy and, potentially even
worse, it has essentially created the used game market. Used games are a totally legal
way for customers to buy games. They provide no revenues to the publisher or
developer and may even cost sales of new games by giving wavering customers a
chance to “wait a bit” and buy a game for less. (There are some counterarguments,
however. The fact that consumers know that they can resell a game means that they
may purchase a $50 game knowing that they can sell it for $10 or $20, meaning the
effective cost is $30 or $40.) Console piracy is rampant in Asia with modified
consoles often publicly sold for a modest $50 premium above a legitimate console8.
Nintendo’s very popular DS handheld console has been facing increasing problems
from the R4 cartridge9. These console hacks allow players to download games for
free or purchase them on the black market for only a couple of dollars.
The game industry has not abandoned PC games, but they have stepped up
their use of increasingly draconian licensing tools. One product, StarForce, became
so unpopular due to its modification of drivers, that popular pressure forced publishers to abandon the tool10. In the music industry, Sony BMG earned the ire of
music fans and lawsuits with its secret, automatic installation of a rootkit program
when certain music CDs were played on computers11. More recently, several publishers have substantially loosened installation and registration requirements for
their games after widespread objections in game blogs and online communities 12.
26
Protecting Games: A Security Handbook for Game Developers and Publishers
Simple economics and widespread piracy of traditional computer games and
other software drove game developers in Korea and China to focus on online games.
Particularly in Korea, the government’s focus on developing a world-leading
telecommunications infrastructure opened the door for sophisticated games played
on a server rather than sold at retail. Games operating as a service are inherently
more difficult to pirate. Stealing a copy of the player client software is not enough;
a pirate server must be set up, operated, and maintained. This makes the pirate
server operation much more vulnerable to being detected, located, and shut down
by law enforcement.
It is worth noting that any break-even analysis should probably be done when
the game is “green lighted” and the developer makes an initial estimation of expected sales. The question should perhaps be asked—if this game had an additional $2 million to spend, how could it best increase sales to compensate for the
estimated “anti-piracy” expenses? Other security options may make sense and
should be considered. After all, the only additional revenues are going to come
from additional sales. The Entertainment Software Association, the trade group for
most U.S. computer game publishers, claimed that piracy cost the industry $3
billion in sales a year13. They have worked to strengthen penalties and pushed law
enforcement to actively pursue individuals and organizations involved in software
piracy. When I reviewed ESA’s announcements related to piracy in October, 2006,
I found that in the previous 12 months, the ESA and U.S. and Canadian governments had imposed total fines of $36 million and pursued four major cases. This is
just over one percent of their own estimates of the pirate market14. Since there has
been no claimed reduction in piracy, there should be a question as to whether these
prosecutions deter would-be pirates at all.
HOW MUCH IS ANTI-PIRACY WORTH?
Piracy is a real problem. It potentially costs the game industry billions of dollars
worldwide each year. We can’t wish piracy away, so it seems our only alternative is
some sort of anti-piracy product. Just as with our analysis of piracy, we need to
consider how much anti-piracy is worth. Should we ignore piracy or fight it?
For example, let’s assume that we are developing a traditional PC game. We
choose an anti-piracy software provider that has an upfront licensing fee of $100,000
and a royalty of 4 percent per copy sold (of the game’s retail price). Then our actual
upfront costs are:
Total Upfront Anti-Piracy Costs = $100,000 + Integration Costs
Chapter 4 The State of Piracy and Anti-Piracy
27
Vendors everywhere assert their products have no integration cost. Sometimes,
this is true, but usually, there is a cost for integrating any piece of software. At the very
least, you need to test it to make sure that the new software doesn’t break your old
software. In our example, we’ll say these costs are zero, just as the vendor promised.
Let’s assume the game sells for the fairly standard price of $50 and our revenue
per copy is $20 (after packaging, marketing, revenues for the retailer, and so on).
Then, our net revenue is:
Net Revenue = $20 (profit) – $50(.04) ($2 anti-piracy royalty) = $18
However, we may lose some sales because of the anti-piracy tool we use and also
incur some additional customer service costs to handle complaints and such. Once
again we’ll make a simple assumption that this costs us 2 percent of sales.
With a game that sells a respectable 1 million copies, without anti-piracy we’d see:
No Anti-Piracy Revenues = $1 million x $20 = $20 Million
With Anti-Piracy, our revenues are:
Net Anti-Piracy Revenues = $1 million x (98 percent customer base) x
$18 – $100,000 = $17,540,000
It is obvious that I am giving no credit for additional sales for the anti-piracy solution. So, how many more sales do we need to earn to break even and recover the
costs of our anti-piracy product?
The additional profit we need to make up, just to break even is $2,460,000.
Increased Anti-Piracy Sales = $2,460,000/$18 = 136,667 additional units
Or, around a 14 percent increase in sales is required to compensate for the costs
of the anti-piracy product.
Suppose, instead, the anti-piracy product had no up-front fee and didn’t cost any
sales, incur any customer support issues, or otherwise make life difficult (for the customers or us as the game’s publisher).
Our break-even additional revenue number would be $2 million and 111,111 additional sales, just to cover those royalties. The upfront licensing cost has negligible
impact on the price; the key driver is royalties. This is simply a break-even analysis.
There is inherent risk adding any software or expense to a product. In order to rate
the anti-piracy product a success, any publisher should include a margin of error for
expected additional sales of perhaps 200,000 or 20 percent.
28
Protecting Games: A Security Handbook for Game Developers and Publishers
Peer-to-peer piracy is an even harder problem, because there is really no criminal enterprise to target. There are just individuals looking for a free game or song
or movie. The main business advantage of using prosecutions as an anti-piracy
strategy is that private companies can push the costs onto governments (and taxpayers). However, this works only if piracy is actually reduced.
T RUSTED B RAND S ECURITY : N INTENDO
AND
ADV
There is one kind of piracy protection you can’t buy: the trust of your customers.
For many years, Nintendo has cultivated a close relationship with its customers.
Game players in Japan, the US, and Europe have invested years and years of affection for characters like Mario and are quite fond of their Game Boy and NES
consoles. Nintendo works to have a great relationship with its customers. For
example, there have been a number of recent anecdotes in which players had problems with their Wii game consoles, contacted Nintendo, and a replacement was
rapidly shipped at no cost and with no questions asked. The power of Nintendo’s
brand is such that for many years instead of a piracy problem, Nintendo had to deal
with counterfeiting. Criminals would create pirated copies of Nintendo game
cartridges and try to pass them off as legitimate ones for sale. Nintendo’s piracy
resources were focused on education: to protect consumers by educating them on
how to identify counterfeit games.
The recent, explosive popularity of both the Nintendo DS handheld and Wii
game consoles has created a new problem for Nintendo. As the company has
expanded from its long-term, long-established customers in the core markets of
Japan, the US, and Europe, Nintendo is beginning to face typical piracy problems.
These new customers do not have any real loyalty to the Nintendo brand and are
much more willing to use tools such as the R4 Data Cartridge (see Chapter 7). This
product allows players to download games from the Internet and use them for free
instead of purchasing legitimate game cartridges. In 2008, Nintendo is probably the
most aggressive and public opponent of piracy of all the console manufacturers and
has gone from tolerating tools like R4 to actively fighting them15.
Nintendo is not the only company in the entertainment industry to build this
kind of brand loyalty. ADV Films, an importer and publisher of Japanese anime
(animated films) in the US, has also built strong ties with its customers. ADV has
faced the difficult challenge of dealing with the cost of localization (translation into
English) of the large number of anime films and TV series. The company cannot
afford to translate every anime film or show. Instead it supports independent
localization by passionate anime fans through its online community, even when
ADV has rights to the product. However, once ADV Films does create the official
Chapter 4 The State of Piracy and Anti-Piracy
29
translation of a product, the community voluntarily abandons the unauthorized
copies. U.S. anime fans know that they need to support ADV to ensure access to
great products and work to protect the company16. The U.S. anime fan community
and ADV have recognized that they need each other.
A NTI -P IRACY I NNOVATORS : N INE I NCH N AILS
AND
D ISNEY
There have been several attempts to fight media piracy by using voluntary payments and hoping for volume sales. Stephen King launched The Plant as a serialized
book in 2000. Although he initially met his financial objective of 75 percent payers
vs. downloaders (paying $1 for each part), the numbers dropped off. After six parts
were released, the project seems to have been abandoned with the last release in
December of 2000 (starting with the fourth installment, there was a price increase
to $2, the payer rate dropped to 46 percent, and there were substantially fewer
downloads)17. The band Radiohead released a low-bandwidth, MP3 version of their
album “In Rainbows” for free in October 2007 with the downloader having the opportunity to “pay what they want,” only to abandon the strategy by April of 200818.
One band, Nine Inch Nails, seems to have found a way around the problem
with a strategy that could be duplicated by any game, music, or movie publisher.
Nine Inch Nails basically created a wide range of versions of their products priced
for different portions of their audience for their album “Ghosts I-IV.” Nine Inch
Nails gave away “Ghosts I” for free, had a $5 download version of the entire album,
a $10 double CD set, a $75 deluxe edition, and a $300 Ultra Deluxe Limited Edition
set19. This last version was limited to 2,500 copies and sold out in three days—
earning the band $750,000 and, even after paying for all of the “goodies” (which
probably cost $10 to $20 to produce), no doubt yielded a substantial profit.
China is notorious for having severe problems with piracy and counterfeit
goods. However, the billions of potential customers are irresistible to companies
around the world—including Disney. In 2006, Disney launched a promotion where
they offered customers who bought Disney products the opportunity to enter to
win a number of prizes ranging from a DVD to a trip to Hong Kong. All the customers had to do to enter the contest was mail the official Disney holographic seal
that was included on every official Disney product20. This is a brilliant anti-piracy
tactic. Customers are turned from pirate accomplices to detectives. First, they are
going to check to see that items are legitimate and, second, any good fake holographs will get sent in to Disney to be used to help hunt down counterfeiters and
the stores that carry their products. Entertainment companies could easily use variations on this strategy to battle pirates, counterfeiters, and even used games.
30
Protecting Games: A Security Handbook for Game Developers and Publishers
G OING F ORWARD
Based on industry rhetoric, piracy is certainly a serious concern for the traditional
console and PC game industry. There are real questions about whether game companies seriously consider piracy during their business and product planning
process. I have talked to a number of security companies with various anti-piracy
solutions and they typically get a courteous hearing from publishers, but no real
business, not even a pilot project. If asked for advice, I recommend that anti-piracy
companies look at other markets.
Using your brand to fight piracy is an amazingly powerful tactic and can be
quite effective. Iconic companies like Apple can charge a premium price for their
products in the market and maintain almost fanatical loyalty among their customers. This does require a long-term, strategic investment in building superior
products and powerful, supporting marketing. A brand-building tool that can also
support anti-piracy is a compelling online service, a topic that I will be revisiting
later.
Promotions and premium versions are powerful and underused anti-piracy
tools in the game industry. Even better, they are funded out of the marketing budget, not the (typically paltry) security budget. Selling concept art and model sculptures, giving away vacations and game libraries, and creating “frequent player cards”
are all standard marketing techniques that can also have wonderful collateral antipiracy benefits if used carefully.
Chapter 4 The State of Piracy and Anti-Piracy
31
R EFERENCES
1. R. Carrol (2008), “Casual Games and Piracy: The Truth,”
http://www.gamasutra.com/php-bin/news_index.php?story=17350
2. W. Xing (2008), “Piracy Debate,” http://www.chinadaily.com.cn/bw/2008-06/09/content_6746151.htm
3. S. Davis (2007), “Piracy—Fact, Fiction, and Future,”
http://www.playnoevil.com/serendipity/index.php?/archives/1674-Piracy-Fact,-Fiction,-and-Future.html
4. S. Hayes (2006), “Piracy Stats Don’t Add Up,”
http://www.australianit.news.com.au/story/0,24897,20713160-15306,00.html
5. brownlee (2006), “Pirates to Buyers Ratio for SiN Episode 1? 5:1,”
http://kotaku.com/gaming/piracy/
pirates-to-buyers-ratio-for-sin-episode-1-51-190178.php
6. Blizzard (2004), “StarCraft and Warcraft III Accounts Closed,” http://www.battle.net/news/0403.shtml
7. K. Gillen (2008), Wardell: “Piracy Is Not the Primary Issue,”
http://www.rockpapershotgun.com/2008/03/12/wardell-piracy-is-not-the-primary-issue/
8. Cho J. (2008), “Nintendo Wii Ready for Korea Debut,”
http://www.koreatimes.co.kr/www/news/biz/biz_view.asp?newsIdx=20735&categoryCode=123
9. C. Ciabai (2008), “Nintendo Starts Epic Battle Against R4 Piracy—The Fight Is On!,”
http://news.softpedia.com/news/Nintendo-Starts-Epic-Battle-Against-R4-Piracy-90953.shtml
10. A. Varney (2006), “StarForce Must Die,”
http://www.escapistmagazine.com/articles/view/issues/issue_72/414-StarForce-Must-Die
11. EFF (2005-6), “Sony BMG Litigation Info,” http://www.eff.org/cases/sony-bmg-litigation-info
12. Polybren (2008), “Mass Effect, Spore DRM Loosened,”
http://www.gamespot.com/news/show_blog_entry.php?topic_id=26385172
13. ESA (2007), “Video Game Industry Applauds Game Pirate’s Sentence,”
http://www.theesa.com/newsroom/release_archives_detail.asp?releaseID=20
14. S. Davis (2006), “Modchip Manufacturer Fined $9 Million—Only 332 More Pirates to Go!,”
http://playnoevil.com/serendipity/index.php?/archives/846-Mod-Chip-Manufacturer-Fined-9-MillionOnly-332-More-Pirates-to-Go!.html
15. Nintendo (2008), “Nintendo Anti-Piracy,” http://ap.nintendo.com/index.jsp
16. D. Roth (2005), “It’s... Profitmón!,”
http://money.cnn.com/magazines/fortune/fortune_archive/2005/12/12/8363101/index.htm
17. Wikipedia (2008), “The Plant,” http://en.wikipedia.org/wiki/The_Plant
18. G. Sandoval (2008), “Radiohead Won’t Repeat ‘In Rainbows’ Giveaway,”
http://news.cnet.com/8301-10784_3-9932361-7.html
19. Nine Inch Nails (2008), “Ghosts—Order Options,” http://ghosts.nin.com/main/order_options
20. G. Fowler (2006), “Disney Fires a Broadside at Pirates,”
http://www.chinadaily.com.cn/world/2006-05/31/content_605106.htm
5
Distribution Piracy
ntil the recent rise of digital distribution, games were available via CDs,
DVDs, floppy disks, and proprietary game cartridges. Blank media that can
be purchased for pennies, while good for game publishers, also makes
piracy economically viable and trivial to implement. There are three ways to fight
content duplication:
U
Prevent duplication
Detect duplication
Use a key that is difficult to duplicate or ignore
P REVENTING D UPLICATION
Preventing duplication has become a bigger challenge as games have moved to
standard physical media and digital distribution. Originally, many games used
proprietary distribution technologies (game cartridges) for a number of reasons,
including fighting piracy. The only major game platforms that still use proprietary
distribution systems are handheld game consoles. The game cartridge from the
Nintendo DS and Sony’s PlayStation Portable (PSP) UMD disk are probably the
last generation of proprietary physical media. One important factor is cost. The cost
of data storage has plummeted even faster than improvements in processing power
and graphics. When storage was expensive, it made sense for game companies to
have their own proprietary systems, especially because this had a collateral anti-piracy
benefit. Pirates had to basically operate a factory to make counterfeit game cartridges. Widespread, modern outsourced, and low-cost manufacturing effectively
eliminates the last vestiges of anti-piracy benefit from using proprietary media.
32
Chapter 5 Distribution Piracy
33
Other anti-piracy techniques take advantage of the way media is physically
duplicated to prevent making a useful copy. Videotape protection systems work on
this principle. For digital media, there have been several anti-duplication techniques that work by modifying the master CD or DVD during the production
process. Other approaches stretch the CD and DVD standards in unconventional
ways such as manipulating low-level indexes and offsets to hide portions of the
media from standard duplication techniques. The problem with this tactic is that
not every product implements all portions of the standard specification the same
way, resulting in unpredictable disk failures and customer complaints.
D ETECTING D UPLICATION
If you can’t protect the distribution media itself, another approach is to protect the
data and detect duplication. The simplest way to do this is to simply label the data
as “do not duplicate” so that standard media players will not read or process the
data. The regional encoding system used for DVDs that prevents disks formatted
for different parts of the world from being played in players for other regions is the
most familiar example1. Ironically, some early Sony PlayStation 2s ignored regional
coding information for DVDs—a problem that was quickly corrected once it was
identified.
The most notorious anti-piracy product in the game industry, Starforce, used
this strategy (among others). It actually modified the low-level software (drivers)
for PC DVD players to detect whether a disk was “Starforce protected.” Although
this detected some piracy attempts, it also caused problems for other legitimate
applications.
The most recent example of this approach came to light through a successful
attack on Microsoft’s Xbox 360 console. The Xbox 360 uses standard DVDs for distributing games. DVDs include low-level information that describes the content on
the disk so that it can be handled by the appropriate application software in the
console. Disks are labeled as music CDs, movie DVDs, rewriteable DVDs, and Xbox
360 game disks. Microsoft has always used digital signatures on Xbox 360 game files
to prevent their modification. However, the low-level disk label is not protected.
The label is part of the DVD media specification, and Microsoft wanted to use
standard DVD players in its console to reduce cost.
Hackers took advantage of the ability to update the firmware that is available in
most commercial DVD drives. This feature is included for maintainability and to
support legitimate updates from the drive vendor. Unfortunately, hackers used this
capability to replace the standard firmware with a modified version that reported to
34
Protecting Games: A Security Handbook for Game Developers and Publishers
the game console that disks labeled as rewriteable DVDs were instead reported as
Xbox 360 game disks2. This hack has been widely used in Asia and is essentially
impossible for the console itself to detect3 (something that can be addressed by a
service like Xbox Live, which is discussed in the section entitled “Rich Interaction
Systems” in Chapter 9).
The power of duplication technologies and cheap mass storage has driven game
publishers towards other approaches, particularly in the PC market. All of the
things that make a PC useful also make it a powerful tool for piracy—lots of processing power and storage, full access and control of the hardware, and powerful
and cheap programming and analytic tools.
C OLLECTABLES , F EELIES ,
AND
O THER S TUFF
If you can’t protect the game media, then you need to find something else that you
can protect and tie the operation of the game to it. One of the earliest applications
of this strategy was Infocom’s “feelies”4. In the 1970s and 1980s, Infocom produced
adventure games that were quite popular. There was no widespread Internet access
or even common use of modems, so the local game had to be able to detect if the
copy was legitimate. Infocom’s innovative approach was to ship the game with various physical items that were hard to duplicate, yet played an important part in the
game and the game experience. Customers valued maps, manuals, decoder rings,
and other items that were often tied into game play, and, most importantly, were
difficult to duplicate. For a while, game companies went a bit crazy with this
approach. Games would require players to type information from game documentation into the application to start or continue play and, at its extreme, players
were forced to transcribe entire paragraphs of the manual letter-perfect. In some
sense, the rise of collector’s editions today harkens back to this earlier era, but many
publishers seem to have forgotten the anti-piracy benefits of physical, tangible
items.
D ISK
AS
K EY
Although the CD key is the subject of many complaints today, its early rise was an
antidote to the inconvenience and cost of using feelies for authentication. Instead
of regurgitating game documentation, players simply had to keep the disk in the
computer while they were playing. Initially, the CD was needed because hard
drives were too small and expensive to store entire games.
Chapter 5 Distribution Piracy
35
Today, the game installation process still doesn’t install everything from the
DVD onto the hard disk. A portion of the game software, or even just a bit of data,
is left behind on the DVD and is checked or loaded from the disk when the game is
executed. This has become the de facto standard anti-piracy approach for PC games:
combining the disk key with some sort of physical or software anti-duplication
technology. The rise of the Internet has allowed the creation of another variant of
this tactic where the withheld data or code is downloaded in real time from an
online server (see the section called “Online Authorization” that follows).
Once hard drives got big enough and cheap enough, players didn’t want to
have to haul game disks around. After all, if the entire game can be easily stored on
the hard drive, who needs a disk? Also, if a player owns 10 or 20 games, she has to
keep track of where they all are when she wants to play. Or, even worse, if the customer plays her games on a laptop, the idea of carrying around even a single disk,
much less a disk for every game, is very unappealing.
Hackers have come up with programs that convince the game that the disk is
present or alter the installation process so that items that aren’t supposed to be
installed and stored on the hard drive are. These “NO DISK” hacks are terribly
popular to this day, even with legitimate, paying customers.
L ICENSE K EYS
The license key was developed in parallel with the CD key. This long alphanumeric
string allowed the game software to determine whether the user was legitimate or,
at least had access to a legitimate game key. License keys have also been used in conjunction with online registration and authentication. A license key is essentially a
rather long password and typically works in one of three ways:
ID and Checksum
Public Key Encryption
Online Authorization
I discuss each of these methods in the following sections.
ID AND CHECKSUM
First the key can contain a random ID and checksum. The game program has a
mathematical algorithm that the program runs on the random ID portion of the
license key to determine whether the computed checksum matches with the checksum provided in the license key.
36
Protecting Games: A Security Handbook for Game Developers and Publishers
The problem with this approach is that hackers often reverse-engineer the
process (or game developers are lazy and use a familiar function such as the MD5
standard hash function) and can generate valid license keys on demand. These hack
programs are sometimes called, not too cleverly, keygens. This algorithmic process
is very tempting for online registration systems because it doesn’t require any storage of keys to validate licenses. Also, distributors and manufacturers can be given
the company’s key generation process, which substantially simplifies production: A
manufacturer sets up a printer to produce as many license keys as desired. They do
not need to coordinate anything with the game publisher, maintain or track how
many keys they have produced, store the specific keys that they have produced, or
send actual keys back to the publisher to support online registration validation.
Also, the game disks are identical, making their production cost low:
Generate Random ID
Generate Checksum (Random ID)
Build License Key = Random ID, Checksum(Random ID)
Verification is also simple:
//Checksum algorithm is all that has to be stored in the game software
Split License Key into Random ID and Checksum
Compute Checksum (Random ID)
Compare Computed Checksum with Received Checksum
PUBLIC KEY ENCRYPTION
The second license key system replaces the checksum with a public key decryption
function (see the glossary). This would appear to stop hackers pretty well. After all,
knowledge of the public decryption key does not give access to the secret encryption
key:
// The game software stores the public key decryption
// algorithm and the game’s public key
Decrypt License Key with Game Public Key
Validate License Key
This just requires hackers to change their tactics. Instead of looking for the
checksum algorithm, they simply need to find the stored public key. To complete
Chapter 5 Distribution Piracy
37
the attack, the hacker “finds and replaces” the game public key with one that the
hacker has generated. The hacker then uses his own private key to generate whatever license key he wishes.
ONLINE AUTHORIZATION
The third major approach does not authenticate the key locally, but requires a connection to an online license server operated by the game publisher. In this case, the
license key is essentially a password. The game program sends the password to the
license server for authentication. Mathematically, the process is identical to the
process described for the “ID and Checksum” method, but with the verification
carried out at the license server instead of locally:
// At some point, the customer enters the license key
// into the game application
Game Application retrieves License Key
Game Application sends License Key to License Server
License Server validates License Key
License Server sends Validation Message to Game Application
Player plays (or not)
The license server can operate just like the local license check, and often does.
One advantage of an online license server is that it can detect attempts to reuse
license keys on different computers. If the license server stores a list of keys that
have been registered, it can reject or take various actions based on a company’s
license policy (see the “License Policy” section of Chapter 6). License servers can
use two approaches to track keys: a fixed list of issued keys and an algorithmic approach, as described for game application license verification. It is very tempting to
use an algorithmic approach to license verification. It requires less storage on the
online server and no coordination with whomever is producing the game disks
and license keys. The downside of this approach is that it is vulnerable to any
exploitation of the key generation process: Once the process is compromised, the
license server can only verify the uniqueness of the license keys, not their legitimacy.
If, instead, the license server contains a list of all of the license keys that have
been legitimately issued, it is much less vulnerable. First, there is no need to create
a license key generation algorithm: The keys can simply be stored in bulk. If a key
is compromised before it has been issued, it can be removed from the license server
list and the company can recover from the compromise or avoid the compromise
entirely.
38
Protecting Games: A Security Handbook for Game Developers and Publishers
It is possible for the key producer and license server to use a shared secret key
to generate individual license keys. In this case, the two parties share a license
generation key (LGK) and a license generation function (license_generator).
The license generation function creates license keys based on an index (i) and the
LGK:
// algorithm to generate the ith license key
license(i) = license_generator(LGK,i)
The key producer and license server simply need to exchange the latest index
value for the license key that has been generated. The license server can then
generate all of the license keys that have been created since the last batch by simply
iterating through the new index values:
// if last license produced has L and the new last index is N
for(i=L+1;i<N;i++) {
license(i) = license_generator(LGK,i);
}
This has some modest advantages in terms of necessary communications between the license server and the key producer, but does create additional risk in
terms of the storage of the license generator key.
Developers and publishers can also set up schemes based on the online license
registration process to accurately track piracy. Failed license registration attempts
do not correspond to individual pirates. Motivated pirates who fail to successfully
register a game will likely try and try and try again until they succeed.
WHO OWNS THE PIRACY PROBLEM AND PROTECTING DEVELOPER ROYALTIES
I’ve had a number of discussions with game developers about piracy and, in many
cases, they basically feel that piracy, and security in general, is the problem of the
publisher. This is fine, up to a point. However, developers often earn royalties based
on the number of games sold, so they do have a vested interest in good anti-piracy
protection. For example, a developer could use license keys as a way to directly audit
game sales—if a license key is valid, then, clearly, the developer should earn royalties
for that game copy. If license keys are issued in lots or by using an index-based key
generation process, the developer can use the highest license key index as a royalty
tracking metric.
Chapter 5 Distribution Piracy
S PLITTING
AND
39
K EY S TORAGE
Keys can be used for game activation, validation for operation, or both. A key for
activation is essentially used one time to convince the game software that you have
a legitimate license key. This can be done locally or with a license server, as described previously. A key for operation is required each time the game application
runs. In order to avoid forcing the users to reenter a license key every time a game
is executed, the game needs to store the fact that the game has been activated in
some manner.
The activation key is an obvious target for a pirate. After all, if the activation
process can be spoofed (faked out) in some manner, then the entire license and
registration process can be ignored. Some games have moved towards using a realtime check with a license server to verify that the game license is valid each time the
game runs. This can be very inconvenient for customers who do not have network
access (such as on an airplane or soldiers or others in remote locations). In this case,
the game application needs to somehow store the fact that it can’t connect to the
Internet and still make a license policy decision. A common approach is to keep a
counter of how long it’s been since the application has last been able to access
the license server or how many times the application has been executed since the
application was last able to be validated. This counter is also a great target for
pirates.
What to do?
Unfortunately, this sensitive information (license key, activation status, last
valid server authentication, and so on) ultimately has to be stored on the computer
with the game application. Encryption has fairly limited efficacy as a tool because
the encryption key has to be present in the game application for the sensitive data
to be extracted and, if the key is present, it can be attacked. Protecting a license key
is, in some sense, a bit easier than protecting other data since it doesn’t change. A
diligent hacker will look for changed data and focus on the changes to prepare an
attack. Instead of directly storing an encryption key, the game application can use
static, but unique, data on the computer to build the key.
For example, most PCs have an operating system license key or other information that is stored within the computer’s configuration information (for Windows
PCs, this is the Registry). There are other unique data elements that may be used:
MAC addresses for Ethernet cards, hard drive IDs, license keys for a number of
common applications, even configuration data stored during the application’s
installation. Game developers want the information to be platform-unique so that
it is more difficult for a pirate to directly copy the installed game onto another
computer.
40
Protecting Games: A Security Handbook for Game Developers and Publishers
Once one or more platform-unique, stable identifiers are found, you can protect your sensitive data by splitting it, obfuscating it, or both.
SPLITTING DATA
Splitting data is quite easy and fairly effective for small amounts of data, such as license keys. Basically, an application developer “adds” the sensitive data to the
unique identifier (UID) and stores the sum of the two:
// retrieve unique identifier
UID = retrieveUniqueIdentifierX;
/**Often it is a good idea to perform some sort of operation on the UID
to provide a further simple level of indirection and, often more
importantly, make the result the right size to work with the sensitive
data. For example, a hash function, such as MD5, is used here. If you
do use MD5, it is much better to use a keyed MD5 function. */
ModifiedUID = Hash(UID);
/** Input the known sensitive data and add the two together (such as
with an XOR function).*/
Protected_Sensitive_Data = ModifiedUID XOR SensitiveData
// This data is then stored.
If an adversary reads out the stored data, it does not look like the license key or
other sensitive data and it is tied to the specific platform. It is worth noting that
sometimes unique data is not stable: Ethernet cards get changed, operating systems
get updated, and registries get corrupted. To help ensure a smooth user experience,
you can replicate this process with multiple items of unique data and perform a
majority vote or other process to improve the reliable recovery of the stored sensitive data.
OBFUSCATING DATA
There are two kinds of obfuscation to protect sensitive information in a program.
Code obfuscation protects against reverse engineering and data obfuscation hides
data that is stored locally and protects it from manipulation. It is important to note
that these solutions are inherently weak—when the program runs, the code needs
to execute, so its underlying logic is present and can be read out (at least at the assembly language level). Similarly, at some point in time the program’s sensitive data
needs to be read by the program into the processor’s registers so that it can be used.
Chapter 5 Distribution Piracy
41
The typical way to protect data from being read or altered is encryption. This
solution is easy to implement using standard libraries. However, encryption is often
CPU intensive so it would have an adverse impact on performance. Also, because
the key needs to be present, encryption is only as strong as the ability to hide (or, in
this case, obscure) the key. Because of these factors, it often makes sense to use a
lighter-weight, non-standard function to obscure the data. The goal is to force the
attacker to reverse-engineer the program’s code as well as find the key. As long as
the function makes the work associated with extracting the data reasonably hard, it
is probably good enough (or rather, as good as it gets!).
SPLITTING
AND
OBFUSCATING DATA
It is possible, and can be a good idea, to combine the two concepts—you use
splitting to protect the key used for data obfuscation:
//Extract UID as above
ModifiedUID = Hash(UID);
// Retrieve stored data split and recover key
SensitiveDataKey = ModifiedUID XOR Protected_Sensitive_Data_Key;
// Recover sensitive data
SensitiveData = Deobfuscate(ObfuscatedD$ata,SensitiveDataKey);
// Validate Data
Validation is an important part of the sensitive data-handling process. The
game application needs to know if an attacker has altered the data . A very simple
option to protect your data is to store a copy of the data unprotected as well as one
that is protected. This makes the unprotected data a very tempting target for hackers and, if they are lazy, they might not bother to figure out that there is obfuscation or other protection being used to protect the sensitive data. Another option is
to store the sensitive data encrypted with two different keys. However the multiple
versions of the data are stored, the game application then simply compares the
protected and unprotected copies of the sensitive data. If they don’t match, there is
a problem and the program has likely been attacked. If the program has been
attacked, it can take actions to defend itself (see the section later in this chapter
entitled “Busted Pirate: Now What?”).
The final strategy that can be used is to take advantage of the ordinary file that
stores a saved version of a game. Sensitive data can be stored directly or in an
obscured form along with the saved game. You can strengthen the security of the
sensitive data (and the saved game information) by using a keyed hash or cryptographic checksum on the game-saved data. This can work fairly well, as players
want to save their game progress.
42
Protecting Games: A Security Handbook for Game Developers and Publishers
B USTED P IRATE : N OW W HAT ?
One of the thorny questions with pirates and other troublemakers in games is what
to do with the troublemakers once they’ve been caught. Very often, game developers choose to disable the game application or subtly cripple the program in some
manner. Techniques can vary widely, and, since developers really, really dislike
pirates, the countermeasures are often quite annoying for the pirates. A notable
recent case involved the game Titan Quest, where the developers made the game
experience miserable and buggy for game applications that detected that they had
been pirated5. The game was leaked onto pirate distribution sites shortly after the
game’s launch. The hackers broke the game’s primary anti-duplication system in
order to make the game work, but had not removed its more subtle piracy-detection
features. As a result, the pirates had a terrible game experience. The unintended
consequence of this was that many people who downloaded the pirated game
started writing very negative reviews and comments on gaming sites. The security
system turned out to be a bit too clever. Instead of convincing pirates to either buy
the game or uninstall it, the game rapidly earned an undeserved reputation for
being buggy, unreliable, and generally crummy.
Prompt, decisive action by the anti-piracy system makes it easier for hackers to
analyze and eventually circumvent the security system. Although “soft failures”
may complicate the removal of the anti-piracy service, they may actually hurt legitimate sales6. This is the central anti-piracy paradox.
It is important to remember that individual players of pirated games are potential customers. After all, they did acquire the game somehow and, if nothing else,
successful anti-piracy detection confirms that they are playing the game. Ideally, the
game developer and publisher should want to drive the player towards a legitimate
purchase. The anti-piracy system could activate nagware to encourage the purchase
of the game, show ads for other games or products, and, over time, perhaps even
offer the game at a discount (if one is an irredeemable optimist, you could look at
a pirated game copy as one whose manufacturing, marketing, and distribution
costs are zero).
Chapter 5 Distribution Piracy
43
LOCAL STORAGE AND ONLINE GAMES
Most online games store all of the data on the server. This has obvious advantages
in terms of security. It is possible for online games to use digital signatures and hash
functions (or even encryption) to store data on local players’ computers as a backup
and recovery strategy. Conceptually, there is no reason that the backup has to correspond to the specific player on the client computer.
R EFERENCES
1. Wikipedia (2008), “Regional Lockout,” http://en.wikipedia.org/wiki/Regional_lockout
2. J. Reimer (2006), “Xbox 360 Hacked, Microsoft Responds,”
http://arstechnica.com/news.ars/post/20060323-6445.html
3. S. Carless (2006), “Exclusive: Xbox 360 Piracy Spreading Fast in China,”
http://www.gamasutra.com/php-bin/news_index.php?story=10232
4. Wikipedia (2007), “Feelie,” http://en.wikipedia.org/wiki/Feelies
5. M. Fitch (2008), “Venting My Frustrations with PC Game-Dev,”
http://www.quartertothree.com/game-talk/showthread.php?t=42663
6. B. Fox (2003), “‘Subversive Code Could Kill Off Software Piracy,”
http://www.newscientist.com/article.ns?id=dn4248
6
DRM, Licensing, Policies,
and Region Coding
et me begin by clearly declaring my bias—I am not a big fan of Digital Rights
Management (DRM). Most DRM systems misunderstand and misuse
cryptography. They cause more trouble for legitimate customers than they
gain from preventing piracy, if they work at all. I’ve been asked on a number of
occasions to recommend DRM systems and my short, flip answer is “Pick the
cheapest one that works with your business model; that way you won’t be too
disappointed when it fails.”
L
T HE B ASICS
OF
DRM
The full answer is more complicated. Technically, DRM systems are divided into
two portions: the protection mechanism and the license policy. The protection
mechanism is the technique (or set of techniques) used to identify the item being
protected and specify its “rights.” The license policy takes this “rights” identification information and enforces it.
In practice, DRM systems are often combined with digital distribution and
payment processing systems. For many game developers and publishers, these
features may ultimately be much more important than the DRM security tool itself.
I’ve been monitoring a number of these companies for several years and it seems
that the successful ones have evolved into general-purpose digital media distribution and sales services. The ones that have remained focused purely on DRM seem
to fade away.
44
Chapter 6 DRM, Licensing, Policies, and Region Coding
45
The essential problem with DRM is the same problem we face with obfuscation: at some point the protected digital asset has to operate locally on a customer’s
computer. This is where it is always attackable because hackers can do any of the
following:
Disable the DRM system.
Convince the DRM system that everything is okay.
Modify the DRM system so that it always reports that everything is okay to the
main application.
Let the DRM system operate but have the main application ignore the security
violation.
Simply strip the DRM from the main application.
To add insult to injury, once a DRM system is compromised, the protected application is compromised permanently. Almost every DRM provider claims that it
can recover from a compromise or failure. The DRM system can recover, but the
security of the protected application is compromised permanently.
W HY DRM D OESN ’ T W ORK
The very same cryptography that effectively protects communications and digitally
signs documents fails miserably in enforcing digital rights. The reason cryptography is a powerful tool for security is that it basically turns problems for spies and
hackers into problems for PhD mathematicians and lots of supercomputers. This
works because standard cryptographic systems involve multiple parties that are
engaged in some sort of transaction that they are trying to protect from outside
parties.
An encryption system uses cryptography and a key to allow communications
between “good guys” to be protected from “bad guys” who are outside of the
communications network. Encryption systems don’t work if one of the insiders is
a bad guy: The bad guy can read or alter the data. I have seen people propose using
encryption to protect game high scores. This doesn’t work because the person who
wants to cheat is an insider—the player who wants to post an illegitimate high
score—and this person can freely alter the data before it is encrypted.
Digital signatures can allow the recipient of a piece of data to know that it is
from the sender and that it has not been modified in transmission. If the sender sends
malicious data, the digital signature process does nothing to distinguish between
“good” data and “bad” data, just as with the encryption scenario. The recipient may
46
Protecting Games: A Security Handbook for Game Developers and Publishers
know whom to blame, but that is different from being able to determine that the
data is “good.” Conversely, if the recipient wants to use the data even if the digital
signature fails, there is nothing to prevent her from doing so. Again, the system fails
if the bad guys are the ones creating the signature or if the bad guy is being “forced”
to verify the problematic data.
Pretty much every DRM system relies on cryptography to enforce its security.
Unfortunately, the “bad guy” is the person trying to use the protected application
and is definitely an insider (it is his computer, after all). All of these types of attacks
can be used despite the presence of encryption or digital signature functions
because the problem isn’t a math problem; it’s a hacker problem. Even if, somehow,
you could protect the code, there still has to be a key somewhere. If the protected
application is digitally signed by some authority, that authority’s public key is
present. The simplest attack on digitally authenticated or encrypted data involves
replacing that public key with an “evil authority” public key, for which the hacker
knows the private key. The hacker can then sign and legitimize any data or license
policy.
In general, although DRM systems may include cryptography, they are not
systems that can be cryptographically secured.
There are ways around this problem. Hardware can make it more difficult
to find or modify the software or keys. However, the most effective solution is to
enmesh the users in a system where external parties verify their legitimacy. I call this
a “rich interaction system” in Chapter 9.
T YPES
OF
DRM S YSTEMS
There are numerous DRM products and they work in extremely different ways.
Rather than discussing individual DRM solutions, I’ve broken DRM down into a
set of major approaches: Any specific product may combine one or more of these
techniques. Also, a DRM solution may be combined with one or more of the media
and licensing techniques I discussed earlier.
FINGERPRINTING
AND
COVERT FINGERPRINTING
With fingerprinting, each copy of a work of digital media has a unique identifier
(the fingerprint) embedded within it. Fingerprints are actually placed inside of the
media file—modifying it in small, almost undetectable ways that ensure that
the fingerprint is present without distorting the base media (usually music or
graphical assets). A better term would really be a “tattoo,” as this data is not inherent in the digital media.
Chapter 6 DRM, Licensing, Policies, and Region Coding
47
Fingerprint systems can be attacked in three ways: by modifying the media, so
that it is no longer fingerprinted, but still usable; by altering the identifier, so that
it can be used with another media player; or by changing the media player, so that
it ignores the fingerprint.
Like fingerprinting, covert fingerprinting embeds unique identifiers into each
individual piece of digital media. With this technology, customer media readers do
not process or identify fingerprints. Rather, media distributors or their agents scan
widely distributed copies and use the covert fingerprints to determine the source of
unauthorized copies.
Covert fingerprinting is actually a fairly effective solution for detecting unauthorized copies, especially to detect where a compromise occurred during the production process or during a limited release (to reviewers or external testers). For
example, the Academy Awards sends out special DVDs and players to its members
during the voting process. By using a covert fingerprint, they could determine if a
specific copy of a DVD had been misused and take appropriate action against that
member. As discussed in the “Attacking Fingerprints and Watermarks” sidebar, it
is important that hackers not have multiple, distinct copies of the media file or they
may be able to corrupt the fingerprint and make it much more difficult to track
down the culprit.
The biggest problem with fingerprint solutions is that they are somewhat expensive. One of the key advantages of license keys is that they are a small, efficient
way of making a product unique. Fingerprinting systems have to be constructed
carefully so that they don’t disrupt the user’s experience with the protected
media—graphics can’t be visibly degraded and sounds can’t be audibly distorted. In
addition, most fingerprinting systems require a standard license key or unique user
identity to function.
WATERMARKING
A watermark is very similar to a fingerprint: It is information that has been embedded in all copies of a piece of digital media. The information is either identical for
all copies or divided into large categories (the most familiar example is the actual
“watermarking” found in paper currency). Watermarks are much easier to produce
than fingerprinted systems, because designers have to create fewer distinct versions.
As with covert fingerprinting, watermarking is more of a forensic or anticounterfeiting tool than a digital rights security tool—only special devices can read
the watermark and determine the authenticity of a copy. Theoretically, watermarks
can be used for digital-rights protection; however, the fact that the watermark is
common across all copies and that all audience media players will have a copy of the
“watermark checker” invites circumvention.
48
Protecting Games: A Security Handbook for Game Developers and Publishers
ATTACKING FINGERPRINTS AND WATERMARKS
One of the things that continues to surprise me is how little time security designers spend thinking about how a hacker could attack their systems. The power of
fingerprints and watermarks comes from the difficulty in finding them: If they are easy
to find, they are easy to remove. They are just bits, after all. So, if you have a basic
item of digital media (DM), then you add a fingerprint to it by altering it into fingerprinted digital media (FDM) for each version (i):
FDMi = DM + FingerPrint(i); // for each version i
The security designer looks at this and says, “Wow, given that the digital media is
big and our changes are small, how in the world could a bad guy find the fingerprint
and remove it?”
Buy two copies.
Hackers are lazy. Why work to find the fingerprint when you don’t have to? So, for
the cost or effort of getting two distinct copies of the target digital media (FDM1 and
FDM2), they can now attack it pretty easily. Let’s just “add” the copies together.
(FDM1 + FDM2)
By using the exclusive or (XOR) function (which basically detects where bits are
different), you can find the fingerprints… almost:
FDM1 + FDM2 = DM XOR FingerPrint(1) XOR DM XOR FingerPrint(2)
=
FingerPrint(1) XOR FingerPrint(2);
// the two copies of the digital media (DM) cancel out
You don’t quite have either fingerprint, but you are pretty close. Basically, you
know where all the bits are in one fingerprint, but not in both. If you randomly “flip”
the bits associated with this combined fingerprint in copy 1 (FDM1) or copy 2 (FDM2),
you can hopelessly garble the fingerprint so that it is not readable. Basically, this is
like taking sandpaper or acid to your own fingerprints, but much less painful. If necessary, you can buy more copies and run experiments until you have successfully
stripped the fingerprint. It is also possible to introduce the fingerprint prior to encoding or compressing the media. This can result in seemingly substantially different
outputs. However, if the media can be returned to any sort of standard form, the fingerprint can still be removed or rendered ineffective.
Chapter 6 DRM, Licensing, Policies, and Region Coding
SECURITY LABELS
AND
49
TAGS
Security labels or tags are supplementary tags that are appended to a piece of digital
media and may also be bound to the digital media by a digital signature (see the
“Digital Signatures” section that follows). Tags are typically used with proprietary
encoding and post-processing systems to limit copying or other use of digital media
(the regional encoding for DVDs is probably the most familiar example). They
can also include simple serial numbers or other identification and use control
information.
Tags can be easily removed or altered, as they are a distinct portion of a digital
media file or stream. They are often clearly identified and explained in the public
digital media specification (in contrast to watermarks or fingerprints). Nearly every
DRM or other licensing scheme includes some sort of labeling and tagging system.
Some developers attempt to conceal this information, but, ultimately, it must be
readable by the local digital media player or license policy application, and will
eventually be reverse-engineered.
Sometimes, security information needs to be altered in the local copy of a piece
of digital media. Dynamic security labels or tags are simply labels that can be modified by a local media player or the media itself, if it is an executable program, like a
game. The most familiar examples are licensing systems that restrict the number of
copies that can be made of a piece of digital media. Other examples that could be
potentially more interesting uses of these labeling systems are “buddy” versions of
games (where copies are allowed that are tied to a local “master” copy so that friends
can play together with only a single, purchased copy of a game), family licenses that
allow a set of authorized copies to be built from a single piece of digital media, or
affiliate licenses that allow consumers to earn revenue from the individuals to
whom they provide a copy of the media.
DIGITAL SIGNATURES
Digital signatures wrap a piece of media with a tag that includes additional information but is also derived from the media itself. Digital signatures are usually combined
with one of the other means of protection. The important attribute of signatures is
that a signature verifier cannot also create a valid signature because the system
is based on public key cryptography. The problem is, as discussed, that the local
public key can be replaced, or the entire signature process can be circumvented.
ENCRYPTION
Encryption is the use of a cryptographic function in conjunction with a secret key to
protect data from being read by anyone without the secret key. The problem with
50
Protecting Games: A Security Handbook for Game Developers and Publishers
protecting digital media is, of course, that the “secret key” somehow has to exist in
every copy of the digital media. Technically, this means that from a digital media
protection perspective, there is no difference between encryption and proprietary
encoding.
PROPRIETARY ENCODING
Proprietary encoding is the use of a distributor-controlled format for the distribution and a proprietary player that is required to read the digital media. Proprietary
encoding can be used in conjunction with other DRM and security techniques. For
games, Adobe’s Flash and Shockwave file formats are the most familiar examples.
In the traditional PC games and console markets, Epic Software’s Unreal game
engine is being used so widely that it may be becoming a de facto standard for the
latest generation of games.
The practical problems associated with proprietary encoding include the limitations that they impose on artists and distributors for the production and control
of media. For example, Adobe’s Flash application, although it is very popular on the
web, was not immediately supported by Apple’s iPhone. Other complications
include allocating royalties to the owners of the encoding technology. The recent
battles between Blu-ray and HD DVD disk formats, royalties on blank disks and
tapes, and the battle between VHS and Betamax are all examples where proprietary
encoding has created larger business problems. Excepting the iPhone platform,
Adobe has largely avoided many of these issues with its proprietary products because
of its business model—selling development tools while giving away the media players.
The security problem with proprietary encoding schemes is that these schemes
are vulnerable to reverse engineering: DeCSS allows DVDs to be read and processed
in software by PCs with open source tools. In the hands of pirates, these tools can
be used to regenerate the media into any form and format desired. DeCSS showed
that the reverse engineering of the DVD proprietary encoding system was not
difficult and we are already seeing similar weaknesses in the “next generation” formats: Blu-ray and HD DVD. Virtually every music-related DRM system seems to
be regularly hacked and, in most cases, the media can be extracted into a standard
format such as an MP3 file (this is not a problem for traditional games that are
implemented as custom software).
OBFUSCATION
Obfuscation (also discussed in Chapter 5) is an anti-reverse engineering technique
that protects the underlying media from being easily parsed or edited. Obfuscation
is essentially an analog to old physical media security systems. This technique
typically relies on very low-level machine language and file specifications to alter a
Chapter 6 DRM, Licensing, Policies, and Region Coding
51
program or data so that it yields the expected result, but the result is computed
or stored in a manner that is difficult to understand without extensive reverseengineering. Obfuscators are just that—they obscure information; they don’t encrypt
it. In and of itself, obfuscation is not really an anti-piracy technique since a copy of
an obfuscated application or media will continue to work as expected. Obfuscation
is used with other anti-piracy techniques to attempt to conceal the location, structure, and operation of the overall DRM system. Because of the inherent weaknesses
of many DRM systems, the security of the DRM system is actually only as strong as
its obfuscation, not the cryptography or other techniques.
SPLIT DELIVERY
Split delivery is a wonderfully straightforward tool. This technique works by limiting the digital media that is distributed to a person to only the portions that they
have paid for (or are available for free). Instead of looking for a clever security
technique to disable code, features, levels, or assets that a person hasn’t purchased,
you just don’t send the un-purchased material to them. A number of game demos
and casual games use this strategy.
Many DRM systems also include an online component that operates as discussed in the section addressing license keys (Chapter 5). Digital signature systems,
encryption, fingerprinting, and any other system whose security includes the notion
of unique identity need to be concerned about the registration problem (see the
section called “The Registration Problem and Identity Management Systems” in
Chapter 29).
L ICENSE P OLICY
The license policy is the most important part of any DRM system. It is the embodiment of a company’s business model. The protection mechanisms are the means
to enforce this policy. If the DRM tool doesn’t support the licensing policy that the
business needs, it doesn’t matter how effective the protection mechanisms are;
the security system will not be effective.
When I first started in the security field in the 1980s, one of the major topics
was computer security as embodied in “The Orange Book”1. This volume specified
a sequence of security grades for computer systems: D, C1, C2, B1, B2, and B3, with
A1 being the highest. There were two security policy models included in “The
Orange Book”: DAC and MAC. Discretionary Access Control (DAC) is similar to
the project-oriented privilege structure that is familiar in UNIX, Windows, and other
commercial operating systems. Mandatory Access Control (MAC) is structured
52
Protecting Games: A Security Handbook for Game Developers and Publishers
like the classification system used in the military—Unclassified, Secret, Top Secret,
and so on. The DAC security policy was associated with the “lower” security levels
of C1 and C2, whereas MAC was associated with the “higher” security levels B1
through A1.
Even then, I was puzzled as to why MAC was somehow superior to DAC. These
are simply different security policies. Neither is inherently better than the other.
Many DRM products continue this flawed model of confusing security mechanism
and security policy.
Many security developers spend most of their energy on implementing security
mechanisms, but they spend little thought on business models, revenue streams,
and usability. This hurts the overall effectiveness of many DRM products substantially, as the DRM purchasers are unable to alter the DRM tool’s license policy.
These awkward combinations of the digital rights (license policy) models with
enforcement mechanisms restrict game providers and publishers from running
their business as they see fit. They can only offer the services that their DRM vendor
or internal developer chose to implement in the way the DRM provider implemented the services. Even worse, the DRM vendor’s revenue model can force the
media publisher to price goods and services in a way that may damage their success
in the market. This is lost opportunity as the game industry is in a period of intense
innovation in business models and pricing.
The system really should be reversed. The license policy design should be the
central feature of a DRM system with the appropriate enforcement tools incorporated as needed to support the publisher’s business model. The movie industry’s
use of DVD regional encoding has largely functioned as planned—a way for the
industry to control release schedules and pricing to support widely different markets
—even though it has been technically “broken” by hackers. It works because the
business model matched the security technique chosen.
The following are some of the options for controlling license policy:
Regions/Markets—Just as with DVDs, publishers can control the release and
use of different versions of a digital asset based on the market it is being used
for. Note: This does require that the digital media player be able to determine
which market the player is associated with.
User Types—It is possible to categorize users and unlock features based on
those categories. For PC games, it may make sense to distinguish between
Internet Café PCs and home PCs to determine which sorts of features and configurations the publisher wants to support in each. One could even extend this
to individual customers.
Chapter 6 DRM, Licensing, Policies, and Region Coding
53
Platform—Certain platforms or digital asset players may be subject to restrictions. For example, an arcade game machine has a different business model tied
to metered play, whereas a console or PC often has a purchase-based model.
Installation—The Blu-ray system has the ability to “key out” certain players
because they have been compromised or associated with piracy. Digital media
can include information to forbid or allow specific players. Also, license systems
can restrict the number of reinstallations associated with a given platform, user,
or license key.
Tiered Distribution—One of the interesting capabilities of game handhelds is
the ability to allow players to share a single, licensed copy of a game in order to
play together. The subordinate players connect to the main player and download a special, limited version of the game. This could be extended for PC or
other console games as a marketing strategy or as part of a peer-to-peer distribution system.
Feature Versioning—Licensing systems are well suited to controlling which
feature sets are enabled for an application. Just as with many of the licensing
options, in some cases it is possible to implement controls directly at a specific
media player by only distributing the features that are needed to that platform.
This has the advantage of forcing hackers to somehow actually acquire the
media that they want, not just figure out how to unlock features that are already
present.
Validation/Registration/Activation—License policies can control how the
digital asset will behave if validation, registration, or activation has not been
completed. This is often done to provide a gracefully degrading user experience
in case of non-malicious situations (such as Internet access being unavailable
for a period of time or, as often happens with new game launches, online
license servers being overloaded). Unfortunately, malicious users can sometimes exploit these modes of operation. They force the system into triggering
the alternate policy through tactics such as simply disconnecting the computer
from the Internet.
Live Connection—Certain games require a live connection, often for license
control purposes.
Timers, Clocks, and Counters—Key parts of many more sophisticated license
policies are timers, clocks, and counters that track the status of the various
policy restrictions included in this list. Game demos that are restricted to allow
a certain number of hours, days, or even minutes of play are the most
familiar example. The main challenge for a system that uses these changing
attributes is that timers, counters, and clocks are obvious targets for hackers.
54
Protecting Games: A Security Handbook for Game Developers and Publishers
Content—Digital assets, for convenience, may include material that is not always accessible to all customers. One could argue that unlocking levels through
game play is an example of this type of control, but game demos also restrict
content. Sometimes they do this by requiring additional assets to be distributed
and sometimes they unlock the restricted data after payment has been received.
There are numerous other license policy areas—parental controls (usage duration, age restrictions, and so on), national censorship requirements (restrictions on
violence, language, or sexual content), and payment information.
The underlying concept of managing digital rights is not controversial. The
critical question and challenge for publishers and developers is to build tools that
effectively support their business strategy. The license policy should be the embodiment of the publisher’s business strategy.
R EFERENCES
1. DoD 5200.28-STD (1985), “Trusted Computer System Evaluation Criteria (TCSEC),”
http://www.fas.org/irp/nsa/rainbow/std001.htm
7
Console Piracy, Used
Games, and Pricing
onsoles can be pirated. There is a huge amount of complaining in the computer games industry about PC game piracy, but console games have always
been successfully pirated. Console game piracy has become increasingly
serious as game consoles have expanded into mainstream entertainment and new
markets. This can be clearly seen by Nintendo’s growing attention to piracy
problems1. Products like the R4 cartridge for the Nintendo DS handheld were
tolerated for a long time, but these products are now the subject of lawsuits and
other restrictive efforts worldwide 2,3. Nintendo is far from alone. The Xbox 360 has
had a serious problem with its DVD player since 2006 4 and the Blu-ray disks used
in the Sony PlayStation 3 are also being exploited5 (although, so far, not for games).
C
A TTACKING C ONSOLES
The very nature of consoles actually facilitates some of their piracy problems. The
ease of use that makes them popular also makes them a target. Console users
simply insert a game disk or cartridge and play. This means that if a hacker can
convince the console that a disk is legitimate, the game will be permitted to run.
There are several methods that can be used to deceive the console.
The first attack involves duplicating the game storage media. The R4 cartridge
does this by emulating the physical and electrical interface between the game
cartridge and the Nintendo DS handheld. However, instead of an official game cartridge, the R4 uses standard Flash memory cards (the same ones used for cameras
and music players) that can be updated with whatever games the pirate desires.
Balancing ease of use with security is an interesting design challenge.
Uniqueness is a very powerful security tool, but it is not always easy to incorporate
into a system. For PC games, customers are used to typing in a unique license key
when they install the game. Console game players simply want to load the game
55
56
Protecting Games: A Security Handbook for Game Developers and Publishers
media and play. In order to add uniqueness to a console game without disrupting
the play experience, some sort of unique, digital license information would need to
be included on each game disk or cartridge. However, there is a cost for adding
uniqueness into a production line, especially for disks like DVDs and Blu-ray.
A cartridge system or Flash memory device could be customized more easily to
support a unique identity.
The next form of attack is to convince the media player that the counterfeit
media is legitimate. This is what happens with the Xbox 360 hack. The DVD player
reports back that disks labeled as “Rewriteable” DVDs are instead reported as
“Xbox360game” DVDs to the console. Microsoft has made some headway against
this problem by preventing the DVD firmware from being updated. However, conceptually, a hacker could always replace a media player with a computer or device
that fully emulates the media player interface. The simplest and cheapest way to do
this would be to find an alternative DVD player with a bit more EEPROM and
RAM (see “Secure Loader and Blind Authentication” in Chapter 14) that otherwise
uses the same interface protocols as the standard drive. All DVD drives use fairly
similar protocols. A hacker would need to analyze the official Xbox 360 DVD drive
interface to determine if anything was non-standard (it is likely that the Xbox 360
drive incorporates a couple of additional commands to distinguish it from a standard drive, although some standard commands may be altered in their format) and
then emulate that interface with an alternative DVD drive.
Emulators are a particularly challenging problem. Instead of attacking the
console, an emulator duplicates the hardware and other features of a console in
software. For a long time, emulators were not a particularly serious concern for
consoles. Moore’s Law (the number of transistors on an integrated circuit has
increased exponentially, doubling approximately every two years), which has been
demonstrated by the huge acceleration in hardware capabilities in recent years,
means that console games can be emulated fairly quickly: PS1 console games are
playable on Sony’s PSP handheld just a decade later6. Even worse, generalpurpose PCs are getting so powerful and inexpensive, it is likely that they will be
able to emulate new game consoles even more rapidly. The cost difference between
a moderately powerful PC and a console has gone from substantially more than
$2,000 to several hundred dollars or less.
Finally, hackers can target the console processor and operating system directly.
If hackers can change the core operations of the console itself, they can bypass all of
the system’s security checks. This can be done by attacking the console’s firmware
through traditional software weaknesses such as buffer overflows or through brute
force replacement of the console’s operating system via modchips7 or other forms
of hardware hacking.
Chapter 7 Console Piracy, Used Games, and Pricing
57
Hardware hacking is difficult. It often requires welding or replacing memory
chips or even adding new processors and circuit boards to an existing console. The
simplest attack is to replace the ROM memory that stores the console’s software
with your own chip. Other attacks take advantage of hardware debug features,
unused connectors, and interconnects that can be used to alter the operation of the
console.
Console developers are aware of these attacks. Once again, the challenge is to
keep the cost of the console at a minimum while increasing the efforts required for
attackers to be successful. Early versions of most consoles (and other hardware)
contain more discrete components and more powerful, general-purpose processors
or other programmable components that can be altered with software. This is done
to get the product out on the market more quickly, but also to accommodate the
inevitable bugs and problems that any new system faces. The flexibility that is
needed for these early versions of a console tends to make it more vulnerable to
attack. Later, once the design has stabilized, components can be optimized and
custom circuits (ASICs) can replace the general-purpose processors to reduce costs.
Hardware hacking requires the hacker to have to have some real skill to carry
out the attack. First, someone has to do some reasonably serious reverse engineering to find a weakness in the system and implement the attack. Second, the attack
needs to be “productized” in a way that is reasonably simple to implement by less
skilled individuals (nothing more than opening the console and welding or replacing a chip). Third, the commercial pirate needs some sort of facility to produce any
necessary equipment (memory chips, circuit boards, and so on) and numerous
local business partners to implement the attack for customers.
Software attacks are much easier. The goal is the same as with hardware attacks—somehow bypass or alter the console’s operating system. However, instead
of attacking the console, the hackers look for weaknesses in the console or game
software that kicks the console into a state where the hackers can run whatever program they want to.
Because consoles usually don’t provide a command-line interface for users,
hackers have to find their way in through parts of the system that are modifiable:
the games themselves, game save files, other modifiable configuration files, and, increasingly, user-created game content. Consoles are fairly special-purpose systems:
They run games, they save games, they may play games online, and sometimes they
handle other media (like playing DVDs or showing pictures). This limited set of
applications makes it easier for the console developer to lock down the hardware
platform against attack than it is for a PC game developer to protect their game in
a general-purpose computer.
This does not mean that consoles are immune to attack.
58
Protecting Games: A Security Handbook for Game Developers and Publishers
SECURE BOOTSTRAPPING
Ideally, a console developer would like to consider the entire console as a secure
system and believe that no one can get inside the box. In reality, of course, hackers
and pirates are willing to crack open the console, even if it will void their warranty.
This presents a difficult security challenge. Your adversary can test, swap, probe, and
otherwise alter and abuse anything and everything that is in your machine until they’ve
beaten your security. (See M. Steil's report 8 for a fascinating, detailed discussion
about reverse engineering the Xbox.) They can use part numbers to find technical
specifications for your components and, fairly rapidly, completely reverse-engineer
your design.
Attacking information within a chip is still fairly difficult. This is the premise of
products like the Trusted Platform Module (TPM). The notion of “secure bootstrapping” starts with a very small amount of protected memory inside the TPM that is
used to get things started. Because this type of memory is very limited and expensive,
it is used to authenticate conventional, unprotected memory, which is then used to
load the remainder of the operating system. Once the operating system is loaded,
regular applications are loaded and run.
Another important consideration for a secure bootstrapping system is to make
sure that it cannot be forced to revert to a previous version of itself. Sony’s PSP
continues to have problems with downgraders that force the platform to an earlier,
unsecure version of the operating system. This is because the previous versions of the
operating system also pass the secure bootstrapping integrity checks. The way to
prevent downgrading problems is that the core, trusted portion of the system must
include a version counter in protected memory to prevent the operating system from
being rolled back.
Interestingly, while a TPM in a console does work for secure bootstrapping to ensure the integrity of the platform’s operating system, it does nothing to stop piracy on
a PC because, as noted elsewhere, the entire game still needs to be available to the
unprotected computer to execute.
For games to execute most quickly, they are typically given full hardware
privileges by the game console. The standard way that a console game works is as
follows: The console is started and the game is loaded, it retrieves and loads a previously saved game so that the player can resume progress from an earlier session,
and runs until the player quits or the console is turned off. If there is a problem
within the game that causes it to crash, a hacker may be able to use that crash
Chapter 7 Console Piracy, Used Games, and Pricing
59
(or even cause one) to knock the console into a non-standard state and take over
the console. When an application crashes, it is stopped in a disorderly manner that
can sometimes be used to run a different program with the same privileges and abilities as the crashed application. Game developers test the games pretty thoroughly.
Sometimes, however, they don’t thoroughly test the process for loading saved
games or other external information to ensure that they are not corrupted in some
manner. This is where problems have occurred.
The role-playing game The Legend of Zelda: Twilight Princess, for Nintendo’s
Wii, allows players to name their horses (of course). The game crashes when the
horse is given an exceptionally long name and the players later use the horse. This
allows hackers to run code of their choice 9.
Sony’s PSP has similar Game Save problems associated with the games Grand
Theft Auto: Liberty City Stories and Lumines 10. The Game Save problem is a bit
tricky for the console manufacturer to protect against. The console operating system can restrict the interface to write and read saved games and, hopefully, seize
control back from an application when it crashes.
In addition, the PSP had a problem with its image viewer. Certain corrupted
TIFF files (a standard image format) can cause a crash and permit hackers to execute whatever code they desire11. Apple’s iPhone and iTouch are vulnerable to a
similar attack12. The TIFF vulnerability is almost certainly the result of using a standard, probably open source, image library with a known flaw. In both of these
cases, the console operating system should not blindly trust either the image viewer
or the game application to behave well.
Game Save files are tempting targets for direct attack. Usually, the saved files
can be removed from the console via a memory cartridge or SD disk and then
modified by a motivated hacker. Today, once one of these hacks has been created,
hackers can install the altered save files on any console by using the same type of
standard storage cartridges or media. One potential solution is for each console to
digitally sign all Game Save files that it creates and bind them to itself so that they
can’t be used on another console. This would also complicate the distribution of
these attacks by hackers, because the attack would need to be replicated by hand on
each target system. In the Zelda scenario discussed, hackers would need to play
through the game to the point where they found the horse and name it in order to
implement the “twilight hack” on each specific console. This would make the attack
“too hard” for most lazy players who might otherwise take advantage of the hack.
The clearest way to track the progress of software assaults on a game console is
to monitor the “homebrew scene.” Homebrew developers basically spend their
time figuring out ways to take control of game consoles so that they can run their
own applications (or pirated games) on these powerful, but inexpensive, machines.
60
Protecting Games: A Security Handbook for Game Developers and Publishers
One of the ways to avoid tempting homebrew developers is to offer a safe, but
open, interface. Sony did this with its PlayStation 2 platform and allowed developers to run the Linux operating system on the console. Unfortunately, it is not
possible to determine if this had any effect on PlayStation 2 piracy.
Interestingly, DRM solutions, which do not work so well on a PC, are much
more effective in the controlled hardware environment of a console.
T HE U SED G AMES M ARKET
Used game sales, like pirated games, don’t typically add any revenue to game developers or publishers. And, as seen by reviewing the financial reports of GameStop, a
major U.S. game retailer, used games (both hardware and software) generated $1.3
billion in revenues in 2007 and are responsible for over 48 percent of the company’s
profit13. As mentioned earlier, the Entertainment Software Association’s total
piracy estimate for the games industry is $3 billion and GameStop is just one retailer among many. Although it is unclear how much of that $3 billion in piracy
would convert to legitimate sales even if piracy could be stopped entirely, used
game customers are spending money, in retail, to purchase these games.
“We have the largest selection (approximately 3,000 [distinct products]) of
used video game titles which have an average price of $16 as compared to an
average price of $42 for new video game titles and which generate significantly
higher gross margins than new video game products.”
— GameStop 2007 Annual Report
Some industry professionals have argued that measures need to be taken to
stop used game sales and others have stated that these sales should simply be ignored. I argue that it is probably worth the effort for developers and publishers to
try to capture some of the used game revenue without restricting the ability of retailers, or individuals, to resell games.
One of the most humorous parts of this discussion is that, although PC games
are the primary alleged targets of piracy, the rise of console games has been the key
to the growth of the used game business. Typically, retailers will not accept returns
or exchanges of PC games. They are legitimately concerned that the customer took
the disk home and copied it. In contrast, console disks and cartridges are perfect
candidates for resale: They are compact, fairly easy to inspect for quality, unlikely to
be damaged, sell well, and, as discussed here, are more profitable than new games.
Chapter 7 Console Piracy, Used Games, and Pricing
61
“Increase Sales of Used Video Game Products. We will continue to expand the
selection and availability of used video game products in our stores. Our strategy consists of increasing consumer awareness of the benefits of trading in and
buying used video game products at our stores through increased marketing
activities. We expect the continued growth of new platform technology to drive
trade-ins of previous generation products, as well as next generation platforms, thereby expanding the supply of used video game products.”
—GameStop 2007 Annual Report
This is not a critique of GameStop, which is just a publicly traded company
whose excellent annual reports clearly demonstrate the economics of used console
game sales. Blockbuster, Circuit City 14, Walmart, and the other major game retailers
probably have similar results.
Almost half of GameStop’s profits come from used games (around 48 percent).
This has to affect their business strategy. If they don’t stock that many copies of a
new title, customers who want a game that is not available may walk out with
another used game that is available immediately. Customers also know that they
can wait a week or a couple of months and find most games at a substantial
discount—a $16 per used game versus $42 per new game average price.
There are ways to earn more revenues from customers without trying to
directly stop used game sales. Downloadable content is certainly one way to gain
revenues. It doesn’t necessarily deter customers from buying a used game, but it
may discourage them from selling the game. Some console game publishers are
experimenting with license keys for console games (something PC games have done
for a long time) to link a single game customer to a game disk. One twist on using
downloadable content is to release multiple, small downloadable items, but only
for a limited time. Some MMOs do this for holiday items—virtual costumes for
Halloween, flowers for Valentine’s Day, and so on. Although a valentine may be
inappropriate for a World War 2 game, limited edition weapons, uniforms, and
maps are certainly plausible—with the items available only for a week or month for
currently registered and active players.
The other anti-piracy strategies discussed for PC games, such as promotions,
collectible items, and special editions, are all equally applicable to fighting the used
game threat.
62
Protecting Games: A Security Handbook for Game Developers and Publishers
P RICING P IRATES O UT
OF
B USINESS
Price is a great anti-piracy strategy. Low price and convenience works as a way to
fight piracy. Apple is now the number one leading music retailer in the US thanks
to its low prices and convenience15. iTunes has been growing steadily, even though
its FairPlay DRM system has been cracked repeatedly16.
The computer game industry regularly touts itself as a competitor to the movie
industry. However, in 2006, there were over 1.1 billion DVDs sold for $16.5
billion17 compared to 240.7 million games sold for $7.4 billion18.
DVD players and video game consoles have been roughly comparable in price
for quite a number of years. The big difference is that a new DVD typically cost less
than $20, whereas a new game is priced at closer to $50. Part of the reason for this
pricing disparity is history. PC games started off at $50 when they were the only
form of entertainment on a computer in the late 1970s and 1980s. At that time,
there was no Internet and the number of PC owners was quite small. However, the
price really hasn’t changed since that time even though there is a vast range of free
entertainment available on PCs (including other games) and phenomenal growth
in the PC market as a whole. Some people argue that this is because a game can provide 30 or 40 hours of entertainment while a film only lasts 2 or 3 hours. However,
many players only wind up playing games for a couple of hours and, if we used this
metric for books, a novel would be much more expensive than a film. In fact, most
recreational hardback books or quality paperback books are priced very close to the
$20 price of a standard DVD.
There is a substantial psychological difference between a $20 and a $50 purchase. I’ll buy a $20 book or a DVD on an impulse, but I pretty much always think
about what $50 games I’ll purchase. The rise of “free-to-play” online games has
shown that many consumers are quite sensitive to price. The popularity of games
like Nexon’s MapleStory and Jagex’s RuneScape has shown that by lowering the
barrier to entry for your customers, you can substantially increase your audience
while still earning very healthy revenues.
Lower prices make piracy and used games much less appealing. Although
GameStop and its fellow game retailers can earn substantial margins when the price
difference between a new game and a used game is $30, the retail appeal of used
games is much less if the new game price is only $20.
One of the challenges of experimenting with pricing for console games is the
substantial royalties that game publishers have to pay to the console manufacturers.
It should give everyone pause when Id Software has threatened to limit the features
it is including in its Xbox 360 version of the game Rage because of the per-disk royalties that it has to pay to Microsoft20. Rage is supposed to be large enough that it
Chapter 7 Console Piracy, Used Games, and Pricing
63
would apparently require an additional physical DVD to be played on the Xbox 360
instead of fitting on a single Blu-ray disk for the PS3 console.
Also, retail games compete with a wide range of free and inexpensive entertainment options on the PC—DVDs, video-on-demand, Netflix, endless free games
online, cheap MMOs, YouTube, and so on.
Another possibility is episodic gaming. Episodic games have not taken off so
far, although it is intriguing to consider the idea of breaking a game into an initial
release (sold for $10 or $20) and then having the remaining levels purchased as
downloadable content. Potentially, this could be done for both PC games and console games.
BREAKING THROUGH THE GLASS CASE
The high price of games creates an interesting problem beyond piracy or IT security:
physical security. Because games are a physically small, high-value item, they are targets for theft. For general retail, theft is approximately 1 or 2 percent of sales, but for
games, it is as high as 5 percent. The situation pushes retailers to protect games behind glass cases and forces employees to retrieve the boxes for customers (glass
cases can cut sales by 35 to 45 percent, but reduce theft by 90 percent)19.
Unfortunately, putting games behind glass substantially reduces impulse sales.
Impulse sales are defined as sales where the customer did not visit the merchant
with the intent to buy the specific item. Twenty-six percent of clothing sales comes
from impulse purchases, but only 6 to 8 percent of game purchases are from impulse
purchases.
Game companies are experimenting with alternative packaging such as bundling
games with toys and other packaging and sales strategies that would allow the games
to need less physical protection.
Of course, lowering prices and improving retail margins directly could help.
A Technical Alternative
Another strategy, better suited for PC games than consoles, would be to move product activation from the home to the cashier. Pre-paid cards are routinely activated
today during the checkout process. The cashier scans a barcode on the pre-paid card
when payment is accepted. This information is sent to the vendor, who activates the
card.
This same activation process could work for computer games.
Game publishers could easily print the game’s license key on its box. When the
customer checks out, the license key is scanned and the game publisher’s license
server then activates the game.
64
Protecting Games: A Security Handbook for Game Developers and Publishers
This activation process would allow the game to be located in the store with substantially lower risk because possession of the game disk would not be sufficient to
activate the game, even if the thief knows the license key. The cashier’s involvement
prevents casual theft.
The players then enter the license key, as they do today, when they install the
game and registration proceeds.
Another alternative would be to allow players to activate their games with an affinity membership card at the time of purchase instead of via online registration at their
computers. It could even be possible for license registration information to be directly
transferred from the merchant to the game publisher.
Chapter 7 Console Piracy, Used Games, and Pricing
65
R EFERENCES
1. C. Dring (2008), “JAPAN: Nintendo Attacks DS Piracy,”
http://www.mcvuk.com/news/31376/JAPAN-Nintendo-attacks-DS-piracy
2. B. Ashcraft (2008), “R4 Price Going Up in Akihabara,”
http://kotaku.com/5031834/r4-price-going-up-in-akihabara
3. Nintendo (2008), “Court’s Judgment of Illegality of Device, Such as R4, etc.,”
http://ap.nintendo.com/_pdf/news/408905229.pdf
4. S. Carless (2006), “Exclusive: Xbox 360 Piracy Spreading Fast in China,”
http://www.gamasutra.com/php-bin/news_index.php?story=10232
5. H. Goldstein (2006), “Blu-Ray Already Ripped on PS3,” http://ps3.ign.com/articles/748/748723p1.html
6. K. Orland (2006), “Hack: Play Ripped PS1 Games on PSP [update 1],”
http://www.joystiq.com/2006/12/25/hack-play-ripped-ps1-games-on-psp/
7. Wikipedia (2008), “Modchip,” http://en.wikipedia.org/wiki/Modchip
8. M. Steil (2005), “17 Mistakes Microsoft Made in the Xbox Security System,”
http://www.xbox-linux.org/wiki/17_Mistakes_Microsoft_Made_in_the_Xbox_Security_System
9. WiiBrew (2008), “Twilight Hack,” http://wiibrew.org/wiki/Twilight_Hack
10. A. Linde (2007), “PSP Firmware Exploit Found in Lumines; Sales Jump 5,900% on Amazon,”
http://www.destructoid.com/psp-firmware-exploit-found-in-lumines-sales-jump-5900-on-amazon33690.phtml
11. Secunia (2005), “Sony PSP Photo Viewer TIFF File Handling Buffer Overflow,”
http://secunia.com/advisories/16922/
12. R. Block (2007), “iPhone and iPod Touch v1.1.1 Full Jailbreak Tested, Confirmed!,”
http://www.engadget.com/2007/10/10/iphone-and-ipod-touch-v1-1-1-full-jailbreak-tested-confirmed/
13. GameStop (2007), “GameStop Annual Report 2007,”
http://library.corporate-ir.net/library/13/130/130125/items/295079/2007annualreport.pdf
14. A. Webster (2008), “Circuit City to Expand Used Games Plans,”
http://arstechnica.com/journals/thumbs.ars/2008/02/08/circuit-city-to-sell-used-games
15. Apple (2008), “iTunes Store Top Music Retailer in the US,”
http://www.apple.com/pr/library/2008/04/03itunes.html
16. E. Kirk, “App Store’s FairPlay DRM Hacked On Super Monkey Ball,”
http://www.iphonealley.com/news/app-store039s-fairplay-drm-hacked-on-super-monkey-ball
17. S. Zeidler (2008), “U.S. DVD Unit Sales Dropped in ’07,”
http://www.reuters.com/article/businessNews/idUSN0325539220080104
18. ESA (2007), “Essential Facts about the Computer and Video Game Industry,”
http://www.theesa.com/facts/pdfs/ESA_EF_2007.pdf
19. T. Wolverton (2008), “Game Industry Tries to Break Through Glass Wall,”
http://www.mercurynews.com/business/ci_10339660
20. N. Breckon and C. Faylor (2008), “Rage Will Look Worse on 360 Due to Compression; Doom 4 and
Rage Not Likely for Digital Distribution,” http://www.shacknews.com/onearticle.x/53976
8
Server Piracy
ne of the reasons that companies started to create online game services was
that they were a good way to fight traditional game piracy. After all, if a
customer has to connect to your server, surely there is no way that she can
pirate your game. Although it may be true that the game is truly on the server in a
text MUD, for many graphical online games, most of the art assets, level design, and
even game logic resides on the client application. And, really, the valuable part of
the game is the art and game design. Because so much of the game is often on the
client-side, the limited amount of server logic acts more as an online game key. And,
as discussed in earlier chapters, there are many ways to attack license key systems.
O
S ERVER P IRACY T RENDS
Server piracy has been around for a long time. Massively multi-player games are
particularly vulnerable. Early MMOs like Ultima Online have been targeted1, as
well as new games like World of Warcraft2. Even smaller games, like Star Wars:
Galaxies, have been victims3. MMOs are not the only targets. The unauthorized
“BnetD” server emulates Blizzard’s online service for multi-player gaming for
Diablo II and Warcraft III 4.
It is tempting to categorize pirating single-player downloaded games in Flash,
Shockwave, and Java as examples of server piracy. However, in each of these cases,
the game is distributed in its entirety to the players every time they visit the web
page where the game is located. The absurd confusion about what is actually occurring is obvious when some online casinos call these types of games “no download”
games. Of course the game is downloaded; it is just automatically downloaded
every time the web page is viewed. For these types of downloaded games, the
problem is much more akin to the problem faced when fighting piracy in standard
PC games.
66
Chapter 8 Server Piracy
67
Sometimes, these pirate servers are just run for fun. Sometimes, players want to
change the game to suit their own desires, and sometimes they just want control:
“The RunUO Team has a plethora of things for you to choose from. We deliver
an end-to-end solution for your Ultima Online needs. We give you everything
from the server software to a client we have written from scratch. If you prefer
the EA games client, we even have our very own UO Assist program designed
to make game play much easier, called Razor. Below you will find a list of our
products and everything there is to know about them.”
—RunUO Products Page
When online games became more popular and profitable, some pirates moved
to run these unauthorized game services for money. There have been pirate servers
all over the world. China has been a particular target: A pirated version of Legend
of Mir 3 earned its operators 500,000 RMB (around $64,000, a fair amount of
money in China) by offering lifetime subscriptions for 300 RMB (around the same
amount a legitimate player might pay per month). The publisher, Guangzhou
Optisp Company, claimed monthly losses of 10 million Yuan ($1.28 Million)5.
They are not the only company that has faced this problem. A pirate server for
Ragnarok Online, published in China by Shanda Interactive, was shut down with
260,000 accounts and could support 3,000 peak concurrent users6.
China is not alone; there have been pirate server operations shut down in
Europe7 and Russia8; the US is not immune either. In 2003, the source code for one
of the first globally popular MMOs, Lineage II by NCsoft, was compromised and
found its way to a server in China. It was purchased by a Texan in 2004 whose
California business partner set up an illegal Lineage II server in the US. They had
50,000 users in 2006, and NCsoft claimed potential losses of $750,000 per month.
The FBI shut this service down in late 2006. If the site operator is found guilty, he
faces up to five years in jail and $250,000 in fines9.
Most MMOs have relatively simple game mechanics, especially the portion that
is implemented on the server. These mechanics are often substantially implemented
by code on the client computer to minimize bandwidth and processing on the
game operator’s servers. This leaves the pirate with a quite tractable task of reverseengineering the simple part of the game—its server game logic—or coming up
with plausible alternative server code. This actually highlights an interesting irony
about online games. One of the motivations for online games, particularly in Asia,
is to fight piracy. However, the move towards simpler games and general stagnation
of game design has made it easier to create a knock-off game and steal most of an
existing game’s assets.
68
Protecting Games: A Security Handbook for Game Developers and Publishers
One could really argue that what is occurring is not server piracy, per se, but
service piracy. There are a number of ways for a pirate to exploit an online game
service:
Stolen Server Code—Someone has an unauthorized copy of the source code
for the server (usually with all of the client art and assets that aren’t protected,
in practice). This can occur due to an accidental disclosure (leaving the code on
an unprotected server, as with the Lineage II case), theft from the developer by
an outsider, or a malicious employee.
Reverse-Engineered Server Code—Someone uses the actual game client to
reverse-engineer the game server and communications protocols. Reverse engineering is often legal (DMCA raises some real questions about this in the US)
and very difficult to stop in practice, as seen with “BnetD.” Blizzard won the
case to stop the distribution of this unauthorized version of the Battle.Net
server code in the US, but the code is still widely available online.
Stolen Art, Music, and Animation (and Plausible Client and Server)—A
player with a legitimate copy of the game extracts the game’s art assets and uses
them with their independently created game client and server. This is usually
trivial to implement, because any legitimate player can collect the game’s entire
creative content by simply playing through the legitimate game. This is certainly a EULA and copyright violation. However, the legal case may be very
interesting if you require the player to have a legitimate copy of the original
game client, especially if the original client is distributed for free. This is not the
kind of “interesting” situation that businesses like to deal with.
Cloning: Copied Art and Emulated Server—Building game art and animation
and game play in the style of an existing game. This is a pure copyright violation. The only way to stop this is via the courts, which may not be effective in
many of the jurisdictions that are likely to pursue this tactic.
There are several trends that are going to make the server piracy problem
worse, not better. China has become very aggressive in prosecuting online game
pirates, especially as its domestic online game industry has grown. The rapid globalization of online gaming will likely lead to pirates moving their game servers to
countries with immature legal systems. These countries will be happy to host
services for online games for a license fee or the promise of tax revenues. The
continued success of online gambling in the Caribbean, even in the face of severe
sanctions in the US, is a clear indicator of the challenge of jurisdiction for online
services.
Chapter 8 Server Piracy
69
Building an online game is gradually getting easier. Services such as Linden
Lab’s Second Life, Makena Technologies’ There.com, and Areae’s Metaplace are
designed to simplify building online games. There are also open source projects like
The Croquet Consortium’s Croquet and Sun’s Project Darkstar, among others.
Unfortunately, these same tools can be used to accelerate server piracy projects.
Server piracy is going to get worse as these toolsets get better.
INSIDER PIRACY, TROUBLED PARTNERSHIPS, AND ONLINE GAME APPLIANCES
Different types of piracy require different types of solutions. Typically, games are lowcost, mass-market items. Thus, there are severe constraints on how much a publisher
can spend on security on a per-unit basis. This is not the only business scenario:
Some high-end analytic software packages for niche markets are protected by using
hardware tokens for license management. In the game industry, licensing large online games, like MMOs, exposes some unique security problems involving licensees
and employees of licensees.
Publishers of MMOs market their game to the world via an assortment of licenses
into specific markets. The most familiar example in the US is Blizzard’s licensing of
World of Warcraft to The9 in China. Many Korean and Chinese online game developers are also pursuing an aggressive international licensing strategy. The licensee operator handles localization (customization by language and market) and is much
more familiar with important local issues like marketing, payment processing, and
usage controls in accordance with national policies. For the licensor, the money is
often quite good with substantial upfront fees and regular royalties as long as the
game is operated.
There can be problems with these relationships. The licensee has to have access
to the game and there may be difficulties in the relationship between the companies.
Often, the game itself is provided as an executable program without source code to
keep the licensee from stealing the game.
Although this tactic is reasonably effective, I believe that game licensors should
consider shipping their game as an integrated hardware-software appliance. This increases the effort for a licensee to attack the game and makes supporting the game
easier (since the hardware and software are controlled solely by the game developer). Also, game appliances can be leased and it may be easier to “unplug” a difficult licensee than it is with a pure software delivery. License fees can be scaled and
controlled on a per-appliance basis, something that is much more difficult to do with
a software-only delivery. A game appliance is easier to visit and audit and, if properly
designed, there is less risk of a licensee employee extracting the game executable.
70
Protecting Games: A Security Handbook for Game Developers and Publishers
Increasingly, casual MMOs are moving to a peer-to-peer type architecture.
They do this by building games that don’t require a very large number of players to
interact together simultaneously, such as 2 to 16 players. This will make locating the
pirate central servers more difficult, as the size of the central server infrastructure
is smaller and can more easily be relocated. Also, casual games can be emulated
fairly easily and have their art assets looted to incorporate into an independent
game. Many of these casual games are built using tools like Adobe’s Flash and
Shockwave, which have long been targets of reverse engineering to extract application code and asset theft.
The growth of debit, anonymous, and casual online payment systems makes it
much less difficult for server pirates to monetize their service. Ironically, the move
to “free-to-play” business models makes this less risky, as there is a smaller outlay to
participate in the pirated service. Customers are less concerned that their payment
account will be looted by the merchant, as this is exactly the type of small-scale,
high-risk transaction that these payment systems were designed to secure.
One of my personal favorite anti-server pirate measures is a strong economic or
status system, be it a rich in-game system, such as with CCP Games’ EVE Online,
the entire Free-to-Play business model, badges and achievements ranking systems, or
even gold farming. Although the software for these games and social systems may
be easy to reproduce, the scale and vibrancy of the community and economic system
makes such piracy largely meaningless. In these cases, server piracy is reduced by
the presence of a big, visible, and fun-to-use status system with economic rewards.
The most obvious “proof” of the effectiveness of the power of a strong economic system is the irrelevance of piracy in the world of online casinos or, less
extravagantly, skill games and casual game portals. In most of these cases, the actual
games and game software are easy to steal or duplicate. It does not matter; the service is its economic or status system, not included game or games. I will discuss this
strategy at greater length in the “Rich Interaction System” section in Chapter 9.
A UTHENTICATING
THE
S ERVER
As seen from the previous discussion, server code can be compromised in a number of ways. If the server code or a game server is compromised, it is important that
the game service be able to recover. Online games are increasingly moving to a
peer-to-peer (P2P) architecture, particularly in Asia, as the cost of running large,
centralized server farms is growing and games can have hundreds of thousands of
concurrent users. A P2P infrastructure is especially common for free-to-play games
or other non-subscription games that have don’t have a reliable way to recover their
costs of operations for all players.
Chapter 8 Server Piracy
71
Most of the security focus for online games is on authenticating the player, and
sometimes the client software, to a server. There is also substantial benefit to be had
from authenticating the server to the client or binding clients together with the
server in a peer-to-peer system. This technique is useful beyond the strict realm of
server piracy and should be part of any online service.
The power of authenticating the server to a client is that it more tightly binds
the two together into an integrated game service. This is exactly what a good license
server strives to do when it verifies licenses for a conventional software application.
With good key management, cryptography can be a useful identity tool. Most
of the time, it focuses on identifying the client to a server, but the techniques can
work both ways. For example, the game client software can include the game server
public key in its code to be used as part of the login process. This can be used to
verify the game server to the client.
One way to use the game server public key is to modify a standard challenge/
response login protocol. In the standard protocol, the server sends a random
challenge phrase to the client. The client uses the random challenge phrase in conjunction with its secret key (or user password) to send a response back to the server
for validation:
ServerRandomPhrase; // generated and sent to the client
Response = SecurityFunction(ServerRandomPhrase,ClientSecret);
// created on the client and sent to the server
To authenticate the server to the client, the server uses its secret, private key to
encrypt the server’s random phrase. In addition, the server appends a fixed authentication word to the random phrase and encrypts both together. The game client
receives and validates this expanded challenge message and, if the new challenge
phrase passes, continues the login process:
ServerRandomPhrase; // generated by the server as before
ChallengeMessage = ServerRandomPhrase,AuthenticationWord;
// The authentication word should be a fixed field or a date & time
combined with a fixed field or some other data that both the client and
server can determine independently
Encrypt(ServerPrivateKey,ChallengeMessage);
// the server uses its private key to encrypt the challenge message
and sends it to the client
AllegedChallengeMessage = Decrypt(ServerPubic,Key,ChallengeMessage);
72
Protecting Games: A Security Handbook for Game Developers and Publishers
// the client, which knows the public key, uses it to decrypt the
challenge message
Validate(ChallengeMessage) = ServerRandomPhrase,AuthenticationWord;
// this should pass only if the server private key was used to
generate the message. The server private key should only be known by
the legitimate server.
Response = SecurityFunction(ServerRandomPhrase,ClientSecret);
// created on the client and sent to the server
There are other protocols and methods that can achieve the goal of validating
the game server to the client as well as the client to the server. Most take advantage
of public key cryptography. It is possible for motivated hackers to replace the login
code or the public key with their own, but this requires more work on the hacker’s
part in order to connect to a pirate server. And, hackers are lazy, just like regular
folks.
You can fight the replacement of the server public key by using it in a number
of places in the game client. It can be simply checked in several places or it can be
used to encrypt client game constants and data. An example would be to use the
server public key to sign (and maybe even encrypt) data updates from the server.
Then, when the client wishes to load or use data from the server, it must use the
server public key to recover the data.
BYPASSING ENCRYPTION
It is fairly common for online games to encrypt the link between a client and server
or between players. In some cases this is done to prevent disclosure of the data being
exchanged. Occasionally, there is a legitimate threat that a third party may intercept
the data. It is a misuse of encryption to attempt to conceal data from the player in this
manner.
Typically, the most important security requirement on the connection between a
client and server or between peers is to ensure data integrity and provide source
authentication. Data integrity is important to prevent manipulation of the data on the
network link that could alter player actions or game state. Source authentication is
particularly important, because malicious players could spoof source IP addresses or
game message headers so they appear to come from another player. This can be a
real problem in message-based system designs because the underlying IP address
information is often discarded by the higher-level message.
Chapter 8 Server Piracy
73
There are three choices for achieving integrity and source authentication: digital
signatures, encryption, and cryptographic checksums (or message authentication
codes—MACs). All three techniques work, and may be useful for protecting a game,
depending on other system design constraints:
Digital Signatures—Use a combination of a hash function and a public key
encryption function. Hash functions are often slower than conventional,
private key cryptographic functions. If you can ensure the security of the
player’s private key, the system can take advantage of a digital signature’s
non-repudiation features. Non-repudiation is the property often associated
with digital signatures that only the legitimate user could have created the
signature, so the legitimate user cannot subsequently deny having signed
the message. Non-repudiation is probably more important for skill games or
gambling games than in conventional MMOs, as the set of messages could be
used to create a “digital contract” to validate the game.
Encryption—Encryption’s main benefit is to protect against disclosure to third
parties. Certain modes do have the same sort of manipulation detection properties that a MAC has. Encryption can also be used to validate identity by
having a unique key assigned to each sender in a client-server architecture.
The developer can pre-generate or independently generate the key stream
and sometimes operate faster by using a key-additive system. This is an
encryption mode where a cryptographically generated key stream is simply
added or XOR’ed with the plaintext data. When operated in this manner, the
encryption system will only confirm identity, not protect against controlled
data manipulation.
Cryptographic Checksums—They leave the message in cleartext, but include
an authentication phrase using a keyed cryptographic function that detects
errors and manipulation. As with encryption, unique keys in a client-server
environment can be used for secure identification. Cryptographic checksums
can be designed to operate quite rapidly and therefore can have minimal
performance impact. In peer-to-peer games, this is typically not a major factor.
However, in client-server games, the server may need to process hundreds of
messages from thousands of player clients in a very short time.
74
Protecting Games: A Security Handbook for Game Developers and Publishers
One of the reasons I recommend cryptographic checksums for client-server games
is that the server can, if necessary, completely ignore the authentication process for
player data. Because the message data is provided in cleartext, it can be processed
without any problem, even if the message is not authenticated. Therefore, when the
integrity and source of the message does not matter or the server is under a particularly heavy load, the server can bypass the authentication step or save authentication
processing for later.
This is the real work in cryptographic system implementation: the trade-offs
between all of the options that are available for algorithms, modes, key management,
and so on, to meet your performance and security requirements.
R EFERENCES
1. RunUO,” RunUO Products,” http://runuo.com/products.php
2. Google (2008), Over 1.1 Million Results for ‘Wow Private Server’,”
http://www.google.com/search?hl=en&safe=off&q=wow+private+server&btnG=Search
3. Timothy (2006), “Star Wars Galaxies Emulator Test Server Hits Alpha,”
http://games.slashdot.org/article.pl?sid=06/06/26/1850213
4. D. Becker (2004), “Blizzard Wins Online Game Suit,”
http://news.zdnet.com/2100-9588-5403899.html
5. C. Li (2007), “Man Faces Court for Online Piracy,”
http://www.chinadaily.com.cn/china/2007-01/11/content_780574.htm
6. H. Lee (2006), “Shanda to Crack Down On RO Pirates,”
http://www.pacificepoch.com/newsstories?id=85006_0_5_0_M
7. videogaming247 (2008), “NCsoft Ganks Illegal Greek Lineage II Operation,”
http://www.videogaming247.com/2008/04/10/ncsoft-ganks-illegal-greek-lineage-ii-operation/
8. S. Davis (2007), “Russian Server Pirate Sentenced to 3 Years in Prison: Reverse Engineered Gravity’s
Ragnarok Online Server,” http://playnoevil.com/serendipity/index.php?/archives/1300-Russian-ServerPirate-Sentenced-to-3-Years-in-Prison-Reverse-Engineered-Gravitys-Ragnarok-Online-Server.html
9. FBI (2007), “CRACKING THE CODE—Online IP Theft Is Not a Game,”
http://www.fbi.gov/page2/feb07/iptheft020107.htm
9
Other Strategies, Tactics,
and Thoughts
here are many ways to attack piracy. The inherent problem that games and
other digital media face is that “bits are bits” and there is no way to distinguish between a legitimate copy of a piece of digital media and an illegitimate
one. A pirate and a legitimate version of a digital media are, by definition, identical.
In essence, strategies discussed so far have tried to find a way to make it impossible
to copy something that is easy to copy, or to make things that are identical not identical, or both.
T
When we are fighting digital piracy in this manner, we are, in some sense, denying the very nature and power of the medium.
In doing so, we may quite possibly be doomed to fail.
Of all the solutions discussed thus far, online gaming seems to be the most effective method to actually fight piracy, both in theory and in practice. However, not
all games are, or should have to be, online games. Altering pricing looks like it
could also be an effective option, but it may not always be an acceptable business
choice.
M EASURING P IRACY
How bad is piracy? It is a legitimate question, but without real data on the extent of
piracy, it is impossible to determine an appropriate response. The challenge is to
find a way to collect good data. The first step is to create or find some sort of unique
identifier for each copy of a game that can be collected and tracked. For PCs, it is
reasonably easy since most games already include a license key. For consoles, one
can probably use any unique ID associated with the console to track which machines the game has been installed on. One problem with consoles is that they don’t
have any license key or unique identifier tied to each game copy. Most PCs include
75
76
Protecting Games: A Security Handbook for Game Developers and Publishers
a number of unique identifiers that can be associated with each platform—Ethernet
card MAC addresses, Windows License IDs, and so on. If nothing else, the application can generate and store a random unique identifier when it is installed.
Of course a pirate (or person with a second PC) may attempt to reuse the
license key. If there is an online activation process or online service, it is possible to
move from the initial identifier (the license key) to an active platform ID (a unique
identifier associated with a specific PC or console). The advantage of this is that the
publisher can then distinguish between different installations that share the same
license key.
There are benefits to allowing every user to at least start the game. After all, as
long as such a person is not locked out, he is a potential customer. You can also
begin to more accurately gauge how many actual game users there are, who these
individuals are, the structure of the game’s informal distribution channels, and so
on. If the game locks out users immediately, it may not be possible to distinguish
multiple registration attempts by a single user from multiple users each attempting
to register. One way to implement this is to allow the game to operate through an
initial level even if the player has entered an invalid license key. The game would
still do an automated connection and generation of an Active Platform ID. Then,
when the player completes the first level, the software can take whatever action the
publisher desires.
With Internet access, the publisher could also use a GeoIP service (a service that
associates IP addresses with approximate geography) to determine approximately
where the user is coming from.
It is important to track the Active Platform ID separately from any other identifiers. Invalid license keys can be analyzed to determine if they were mistyped or if
the player attempted to use a tool to generate fraudulent license keys or reuse keys
from other players.
The publisher can track actual revenues compared versus Active Platform IDs
and compare both to license information. With these three values, the publisher
can begin to get a real handle on the extent of piracy as well as the total number of
potential customers. The publisher can also experiment with different anti-piracy
tools and, of course, techniques to convert pirates into customers.
F IGHTING P IRATE N ETWORKS
In the world of digital distribution, publishers can battle pirates directly. Most pirated software is distributed through large peer-to-peer (P2P) networks (many use
a family of protocols called torrents). These P2P networks are designed to be highly
distributed. Anti-pirates can attempt to identify the individuals downloading
Chapter 9 Other Strategies, Tactics, and Thoughts
77
pirated media (as the RIAA has done for music), seed the online networks with altered game files, or create their own honeypots, which are pirate servers to help
identify and track pirates.
Developers and publishers may complain about piracy and feel that piracy is
fundamentally unjust; they do have a choice. They can choose to battle pirates with
rewards or penalties. The primary goal for a publisher is really not to stop piracy,
but to maximize the revenues the publisher earns from its products and services.
As discussed previously, publishers have sometimes chosen to modify the
illegal copies of their games so that the games are unreliable and unstable—with
negative consequences because this can hurt the game’s reputation (seen with Titan
Quest). The initial motivation for this tactic was to make it more difficult for pirate
hackers to locate and remove the game’s anti-piracy measures. Developers should
have confidence that their security measures cannot be removed. In this case, the
game should clearly lock itself up and indicate that the version has not been purchased or take the other tack and invoke nagware to endlessly remind players to
purchase the game. An alternative approach is to distribute only part of the game
initially and distribute the remainder of the game to paying customers who have
clearly registered. For example, split a $20 game into two $10 game episodes.
Requiring clear, detailed, user registration before implementing penalties may
be a powerful piracy deterrent, especially if combined with an incentive such as a
contest or promotion. A “$100,000 Titan Quest Giveaway” for registered players
may do more to increase sales than $100,000 worth of anti-piracy.
It is possible to attack P2P networks, as Introversion has shown with Darwinia1.
After a pirated version of Darwinia was leaked onto pirate networks, Introversion
spoofed the same P2P networks by widely releasing a demo version of its game that
was intentionally mislabeled as the complete game. Introversion’s goal was to increase the likelihood that a potential pirate consumer would download the mislabeled demo rather than the actual hacked game. Because the demo clearly ended
and was marked as a demo, it did not damage the game’s reputation. The company
seemed satisfied with its results, although they have not publicly shared any details
on how many sales they gained by using this technique.
Pirate and P2P networks are inherently vulnerable to a wide range of spoofing
and honeypot attacks. Because P2P networks seek to be anonymous, decentralized,
and highly distributed, pirates can’t manage trust effectively. Because there is no
central trusted authority, anyone can post, host, and alter files, as well as provide
file descriptions. Unlike conventional criminal piracy where pirates earn money by
counterfeiting and selling goods, pirates do not earn any money from these P2P
networks directly. Therefore, game publishers have more incentive than the pirates
to attempt to dominate the P2P networks. In this case, the decentralized, distributed nature of P2P networks gives the publisher an advantage.
78
Protecting Games: A Security Handbook for Game Developers and Publishers
Even if pirate networks move towards reputation systems, an organized effort
by a publisher should be able to shape network traffic.
It should be noted that there are strong financial incentives for criminal pirate
networks that do sell games or operate game services for money. In such cases, pirates will establish trust relationships and often are able to freeze out the publisher’s
countermeasures.
Honeypot download services are operated by, or on behalf of, the publishers
with the goal of identifying pirates for prosecution. They do this by hosting “official” pirated media, often at a number of host locations. Pirate consumers who
download the media are subject to tracking by GeoIP to their Internet Service
Providers (ISPs). Once identified, the company typically pursues some sort of legal
action. The MPAA has used a service operated by MediaDefender2 to fight piracy in
the movie industry3. There are several other companies operating in this market
at the moment (mid-2008), including MediaSentry and BayTSP. MediaDefender,
which has been a bit of a lightning rod in the industry, apparently goes further than
the other honeypot services and scans the downloader’s computer for additional
copyrighted material that may have been downloaded illegally. This can be quite
devious and lucrative: If a media security company installed a monitoring application on any computer that had downloaded a game or other media from one of its
sites, the company could catalog potentially compromised items and then contact
the media publishers retroactively. The company could offer the publisher a deal
such as, “I’ve got a list of 500,000 people who have installed your application—
would you like to buy my services?” In some countries, this whole approach may be
illegal and considered computer crime. This is a concern with a number of the
more aggressive anti-piracy tools that aggressively monitor the activities on a computer, report information back to a remote site, or take measures to shut down
“inappropriate” applications.
Honeypot services can definitely fall in the legally and ethically gray world of
active measures. Installing software on people’s computers, even if authorized in a
EULA, could put the company at risk under both civil and criminal law. The pursuit of individuals involved in music file sharing has had limited benefits and has
cost the industry a lot of good will. Even worse, such services can damage legitimate
businesses: MediaDefender actively disrupts peer-to-peer networks for its clients.
There are some legitimate companies that use P2P distribution because it lowers
bandwidth costs. This is a growing tactic for lowering the costs of digital distribution, as end users have a lot of bandwidth capacity that they are not using.
MediaDefender targeted such a network operated by Revision3 and wound up
causing a denial of service attack against the service. This has resulted in lawsuits
and an investigation by the FBI for violations of the Economic Espionage Act and
the Computer Fraud and Abuse Act4.
Chapter 9 Other Strategies, Tactics, and Thoughts
79
M ULTI -P LAYER G AMING
Historically, most computer games were single-player experiences only. Recently,
multi-player gaming has grown rapidly in popularity. As noted by many industry
observers, commercial single-player games have been dominant because, for most
of computer gaming’s short history, bandwidth costs were high. Outside of the
realm of computer games, there have always been far more multi-player games
than single-player games.
Building online multi-player games definitely has its challenges. It is interesting
to note that many commercial game developers continue to see multi-player functionality as an added feature that can be dropped if there are problems, rather than
as an essential part of the game.
This seems quite strange from a pure business perspective, especially in the
world of console games. Exit Games’ CEO, Harald Behnke, believes that multiplayer games can earn two or three times as much as single player games (to be fair,
his business is multi-player gaming services)5. Other estimates have been closer to
20 or 30 percent in additional sales.
At some level the rationale for this is pretty obvious. If I have a single-player
game that I really like and I recommend it to my friend, I might simply give her my
copy. For a multi-player game, in order to play together, we have to pay together,
leading to additional sales.
This is not guaranteed, of course. One of the reasons I think cheating is a critical industry problem is that multi-player gaming is a crucial part of making a game
more successful. And cheating can easily ruin the multi-player gaming experience
and hurt sales.
The other great feature of multi-player gaming is that it is much easier to secure
against piracy. Even a game with a minimal central matchmaking and lobby service
can more effectively control piracy than an elaborate DRM solution. Multi-player
gaming is one example of a rich interaction system; there are a number of others.
R ICH I NTERACTION S YSTEM
Rich interaction systems (RIS) are valuable game play, game community, and
player services that create opportunities for security transactions and incentives for
players to participate in the legitimate game ecosystem.
Security systems work most effectively when there are multiple interactions—
the more often the system is validated, the more security it provides. A bike lock is
fairly effective if the bicycle is parked in a public place where plenty of people see it.
80
Protecting Games: A Security Handbook for Game Developers and Publishers
OWNERSHIP MODELS: ACCOUNTS VERSUS PLATFORMS
One of the interesting differences between Western gaming and games in Asia is the
basic notion of game ownership. In the US, Japan, and Europe, computer games are
typically owned when the user possesses a physical copy of a game associated with
a single platform. In Asia, the physical or electronic copy of a game does not matter,
because the company’s association with the player is based on an online account.
Neither model is superior to the other. It is probably prudent for developers to investigate how to support both models of ownership for their games. Asian game developers may be able to tap game genres that are not solely multi-player and Western
developers may be able to better position themselves for the rapidly growing market
in Asia and other emerging markets worldwide.
Although I cannot claim to have taken a comprehensive survey of game developers and publishers, I have studied quite a number of game company sites over the
years. The only company that I’ve seen that seems to support both account-based
ownership and copy-based ownership, at least to some extent, is Valve Software.
Valve explicitly offers support for Internet Café licensing on its site as well as conventional sales, and its Steam online digital distribution service6.
One area that has not been explored too much is a hybrid of platform and
account-based licensing. Some MMOs do support “buddy” accounts for friends, but
there could be more. Easy examples are intelligent licensing and services for people
who play on both their home PC and a laptop, family licensing plans for MMOs and
other games, and even multi-level marketing and affiliate programs to lower marketing and distribution costs (and even reduce payment risks).
If the bike was locked up in a vacant warehouse and abandoned, no matter how
good the lock was, if someone who found the bike and wanted it, the bike would be
gone. In some sense, a bike lock does not work because it actually stops thieves.
A bike lock works because it is fairly obvious and reasonably time consuming for
someone to circumvent it. A bike lock is a thief detection system, not a theft
prevention system.
Effective protection for games works the same way. Rather than trying to build
an unbreakable lock, it is much easier and more effective to build an environment
where the security system is public and involves multiple users. It is even better if
the security system is part of a visible service that users routinely use.
Chapter 9 Other Strategies, Tactics, and Thoughts
81
At some level, licensing and DRM system providers understand this principle.
EA initially configured its DRM system for two games, Mass Effect and Spore, to require the player’s license be revalidated with the online server every 10 days in
order to ensure that the license key had not been compromised. After widespread
customer outrage, EA and Bioware canceled this tactic7.
The problem with their approach was not the underlying technical security
strategy, but how players perceived it.
Instead of making the security authentication and license check a standalone
service (which also makes it a target for circumvention), why not provide a valuable
online service that the user wants to participate in?
For Spore, at least, creating a valuable online service would be trivial. One of the
key elements in the game is the ability to create your own custom creatures and
share them. Even though the game is single-player, this shared, online experience
is a key part of its design and has already been very successful. There were over
250,000 creatures created the day the product was launched8 and, even better, HP
and EA launched a worldwide creature design competition9, with the additional
benefit that these players provided the companies with a lot of detailed personal information, no doubt, when they registered.
If the game’s license re-verification system was embedded into the utility that
allowed creatures to be posted or allowed players to register for the competition,
there would have been little or no controversy.
The real pioneer in providing this kind of service was Blizzard with Battle.Net10,
its multi-player gaming and matchmaking service that launched in 1997. Although
Blizzard’s games—the Diablo, Warcraft, and Starcraft franchises—are great and
likely would have been quite successful anyway, Battle.Net probably turned them
into worldwide phenomena and contributed to their amazingly long shelf life. It is
unclear whether Battle.Net was designed as an anti-piracy tool, and there seem to
be some security weaknesses in its implementation that indicate that it was designed primarily as an early social network, but Battle.Net certainly has turned into
a way for Blizzard to manage millions of players and licenses.
Surprisingly, very few game publishers or developers have followed suit and
launched similar online services. The notable exceptions are Valve Software’s
Steam, Stardock’s Impulse, and, for consoles, Microsoft’s Xbox Live, Sony’s and
Nintendo’s online services are not nearly as tightly integrated. The larger the service
and the more extensive the stable of games and features, the more effective the system works against piracy. In addition, the larger the service is, the more favorable
the economies of scale and reduced cost for a common infrastructure for digital
distribution and other online services. A RIS would give a substantial advantage to
any large game publisher.
82
Protecting Games: A Security Handbook for Game Developers and Publishers
There are many ways to create a RIS. A RIS does not need to depend on a
single service:
Game Commerce and Downloadable Content (DLC)—Selling virtual items
does not need to be limited to MMOs. Although Bethesda Softworks was criticized for charging $2.50 for horse armor in Elder Scrolls IV: Oblivion, the basic
principle of selling items and maps is effective. The two most successful examples are probably Guitar Hero III and Rock Band’s regular additions of new
musical tracks to these very popular games.
Inter-Player Commerce/Real Money Transactions—MMOs know that players love to trade items. By creating scarcity, players have a reason to interact.
Even the humble Nintendo DS allows Pokémon players to trade virtual items.
Ironically, although MMOs condemn real money transactions (RMT) for
disrupting game play, the RMT economic system creates an additional barrier
for potential pirates.
High Score and Badge Systems—Players have loved the ego boost of a high
score, as well as other rewards and achievements, since the days of arcades.
Microsoft has done a lot to revive this with its Achievements system on Xbox
Live and pretty much every publisher and online service has followed suit.
Tournaments and Ladders—Competition takes the basic pleasure of a high
score and raises the stakes. Tournaments and ranking ladders create powerful
incentives for players to participate in the official game service. ArenaNet has
been running Guild Wars tournaments worldwide with substantial prizes and
ongoing publicity for the game.
Rewards, Bonuses, and Incentive Programs—Frequent flier programs have
been a powerful loyalty tool and incentive to spend more money for fairly
modest rewards since American Airlines launched AAdvantage in 1981. Some
MMOs have given rewards to long-term players.
Contests, Sweepstakes, and Promotions—Contests are a classic marketing
tool and they can be effective in binding players to an online service. Operators
just need to be careful to ensure that they do not violate the law (see Chapter 31).
Game Updates—Regular updates to a game engine to fix bugs or, better yet,
improve the game play experience, can also be an effective way to tie players to
an online service.
Game Asset Updates—Game assets are generally easy to update and compact
to distribute. They can also give an expanded game play experience and revive
interest in a maturing game system. Asian MMOs have been particularly
aggressive in providing certain assets that are available to active players only
during certain holidays, such as Halloween or Valentine’s Day.
Chapter 9 Other Strategies, Tactics, and Thoughts
83
Mods—Although there is a lot of discussion about user-created content, it has
not had too large an impact on many games. Sharing Spore creatures, as cited
previously, is a relatively modest example. Some games have allowed players to
create maps and units and even modify the game engine itself. Games like
Bioware’s Neverwinter Nights allowed players to create dungeons and maps for
the fantasy game and even sell them.
Matchmaking and Multi-Player Gaming—The prototypical RIS is a multiplayer service. Games do not actually have to be run on the server. Players can
simply use the central lobby service to connect with other players and store
game results. An increasing number of Asian MMOs are actually run as peerto-peer games. This allows a more modest central server infrastructure while
preserving many of the anti-piracy benefits of server-based gaming.
Persistent Player Profiles—My military friends used to joke about some officers’ “I Love Me” walls—the collection of plaques and commendation letters
that they had received over their career. We all love to show off a bit and persistent player profiles support this even for single-player games. Microsoft has
struck gold with its combination of Gamertags and Achievements. I suspect
some players wind up buying the Microsoft version of a console game just
because of these features.
Machinima—A recent innovation in 3D computer games is the in-game ability to replay, stage, and otherwise manipulate game activities. This has turned
into an interesting side industry of its own where players use the game engine
to create original movies.
Community Systems—Although many games have online forums for the
game community, in most cases, they are often web services outside of the game
application. Instead, these services could be deeply integrated with the
game application itself and integrate machinima, real game avatars, player profiles, and other value-added capabilities.
Chat and Buddy Systems—In-game chat and buddy systems are often found
as third party add-ons to games. Tying them to the game can support your RIS
security objectives. One interesting example is Kongregate’s general integration
of a chat feature into all of its games, even if the games are single-player only.
Server-Based Gaming—This is the classic strategy of moving game play from
the client to the server as seen in MUDs and most MMOs (and discussed
previously in the Server Piracy section). If the game itself is on the server, many
of the objectives of a RIS are already being met.
84
Protecting Games: A Security Handbook for Game Developers and Publishers
The range of potential services is limited only by the developer or publisher’s
imagination. The key to their effectiveness as a security tool is how well and deeply
they bind players into the legitimate, licensed game and publisher infrastructure.
D IGITAL A FFILIATE S YSTEM
I have read with some interest the debate over digital rights management for the
past several years and the technical shortcomings and customer dissatisfaction with
the available approaches.
The Digital Affiliate System (DAS) design addresses the goals of any digital
media publishing business. See Figure 9.1. There has been no evidence that any of
the standard DRM solutions, such as software wrappers, digital signatures, encryption, and even hardware security systems, have had anything but a modest impact
on individual or organized piracy. Also, all of these solutions “fail deadly” (they
don’t “fail safe”); once the security system has been defeated one time, piracy scales
towards infinity because there is no way to recover from the security compromise.
FIGURE 9.1 Digital affiliate system (DAS) architecture
In addition, virtually every DRM solution is encumbered by numerous pieces
of intellectual property (there are quite a number of DRM related patents and, it
seems, more every day) that can make companies a target for litigation.
Chapter 9 Other Strategies, Tactics, and Thoughts
85
A digital affiliate system is not a rights-management solution; it is a revenuesharing system.
The “key” to the digital affiliate system is that it is designed to encourage the
use of legitimate and protected media assets, no matter their source. The typical
DRM system treats the customer as the enemy. Tremendous effort is expended by
the publisher and DRM system to prevent customers from using the media asset
that they have purchased.
DAS treats the customer as a partner and source of additional revenue. When
customers get an unauthorized copy of a DAS protected media asset, they have a
financial incentive to re-enter the legitimate DAS environment.
DAS works by transforming digital media assets into “currency” that can be
used for future transactions and have inherent value. Thus, the movie, song, game,
or whatever is only part of the value of the DAS Media Asset (DMA). Setting the
value of the DMA is the responsibility of the media asset owner; the media player
and distribution system simply support the process. Media player creators and
distribution services may profit from a portion of the transactions, although this
process should probably be as open as possible. The objective of DAS is to create
a standard, easy to use, open, affiliate system, not to replicate the proprietary solutions of the DRM. The power of this approach is that the digital media “currency”
can be linked to an individual and protected in a database outside of any devices or
players that store the DMA asset. Rewards, exchanges, sales, and promotions can
thus be used to encourage participation in a legitimate DMA market rather than
encouraging customers to defect and find media from the information black
market.
Once you recognize that it is impossible to actually protect “bits” against someone who has legitimate access to them, any security design becomes much simpler.
Ordinary media asset file formats will be wrapped in a simple extended file format
that includes copyright information, ownership information, and “where to buy”
information. These files are read by a simple DMA player that handles the copyright information and passes the actual file to the appropriate media player application. The center of the DAS system is a DMA registry. The registry handles the
association of DMA players with individual owners and the association of DMA
assets with these owners. Finally, there can be a DMA market that supports the
exchange and sale of DMA assets as well as offers promotions, contests, and other
value-added features.
86
Protecting Games: A Security Handbook for Game Developers and Publishers
DAS MEDIA ASSET
As noted, a DMA is simply a wrapped media file in any format. The DMA includes:
Media Asset—The actual asset of interest to the users
Media Asset ID—A unique identifier associated with the media asset
Media Asset Type—A tag associated with the media asset to indicate which
player or other application will be associated with the asset
Copyright Information—The standard legal disclaimer associated with the
media asset
Owner Information—The registered owner of this copy of the media asset
Registry Information—Location information associated with the DMA registry to support the user and media player association
Market Information—Location information associated with the DMA market
to support purchases, promotions, exchanges, and so on
It should be noted that this system does not preclude additional security measures implemented by the copyright holder. Covert fingerprints or other antipiracy features can be embedded in the wrapped media file.
DMA PLAYER
The DMA player is not an elaborate security system; it simply wraps the media
player. The DMA player also knows the owner or owners of the player and can thus
determine the validity of the media player’s owner’s access to any DMA. The player
can also access DMA registries and even different DMA marketplaces and other
value-added services. When the owner of a media player wants to access a DMA,
the DMA player simply checks the DMA and determines whether the DMA is licensed by that owner. If not, the DMA prompts the owner to get a license from the
appropriate DMA registry. The DMA player does not attempt to prevent the owner
from using any media. Also, for art, sound, or other reusable assets, when any of
these assets are copied or clipped, they should retain the DMA wrapper information and pass it into the new asset. If the DMA player is not associated with an
owner, every time that a user attempts to use the DMA player it will prompt the
user to register with a DMA registry. By continually prompting owners to “do the
right thing” and, if the appropriate incentives are in place, this simple player can be
at least as effective as any of the existing DRM solutions available. Also, because
there is no benefit for a user to strip off the DMA wrapper, the user may re-enter
the legitimate system at any time.
Chapter 9 Other Strategies, Tactics, and Thoughts
87
DMA REGISTRY
DMA assets and asset owners are registered at one or more registries. A registry can
be operated by a telecommunications carrier, a digital distribution service, a DMA
asset provider, or other third-party entities. These can easily be set up to preserve
the privacy of customers, for those who want to preserve their anonymity. More
importantly, the registries control the ownership and basic payments for licensing
of DMA assets. DMA players can connect to the registries online or handle paper
receipts, and other purchase processes can be used to link DMA assets with DMA
players and asset owners.
MAKING PIRATES
INTO
RESELLERS
The crux of what this Digital Affiliate System provides is not the technical mechanisms described here, but rather the business services that it enables. Because ownership of a DMA can be positively tracked and controlled by the asset creators,
multiple strategies for revenue maximization and protection are available. DMA
owners who recommend or distribute DMA assets to other users can earn bonuses
and rewards. Contests and incentive programs (much like frequent flier programs)
can be used to reward registered DMA asset owners. Frequent flier programs show
the power of these types of incentives. Even very modest rewards can have a real
impact on consumer behavior.
All of these revenue streams can be tied to legitimate DMA purchases, making
the use of the legitimate DMA system a boon, not a bane, for media users. Even
major pirates can become positive parts of the media distribution system by
rewarding them as resellers (with higher levels of compensation for large numbers
of referrals). And, for those pirates who persist, the value of simply duplicating
DMA-protected assets will go down, as many legitimate customers will prefer to
participate in the legitimate “media commerce” system.
P LAYING
WITH
S ECURE D IGITAL D ISTRIBUTION
Many PC and even console publishers and developers argue that the game industry
is moving towards digital distribution for games. The rapid growth in broadband
networks and reduction in bandwidth costs make this a technically viable and
sound business strategy. In addition, many see digital distribution as a solution to
the challenge of used games and piracy.
88
Protecting Games: A Security Handbook for Game Developers and Publishers
Digital distribution is a particularly appealing anti-piracy strategy for consoles,
because it can take advantage of the closed architecture of the console platform to
substantially raise the barrier for potential pirates and, if implemented properly,
make it quite difficult for them to scale their attacks effectively across multiple users.
This section describes a highly simplified, conceptual architecture for a secure
digital distribution system oriented towards consoles, although it could be used for
PCs. I am going to ignore many details to focus on some key security themes.
There are two main elements of this distribution system—the distribution
process from the central server to the console and the method to secure local storage within the console. The main objective of the distribution system from the central server to the console is to operate quickly and efficiently, but somehow
incorporate some form of uniqueness for each game shipped to each console. In
this case, the important requirement for uniqueness is not in the encryption and
distribution service, but to be able to determine where piracy may have occurred in
an efficient manner. Also, this example is not really concerned about the manipulation of the game code or assets. See Figure 9.2.
FIGURE 9.2 Secure digital distribution system architecture
In order to isolate who may have compromised a game, this example uses
steganography to embed a “covert fingerprint” or tattoo (CTAT) into each copy of
the game (GAME). During preprocessing, it will determine where you can safely
combine these bits with the actual game file to create a “tattooed game” (CTGAME)
for each console i:
CTGAME(i) = GAME xor CTAT(i);
Chapter 9 Other Strategies, Tactics, and Thoughts
89
You do need to encrypt the resultant file and, inn this case, it makes sense to use
a cryptographic function that is error extending, such as a ciphertext autokey
(CTAK) or cipherblock chaining (CBC) mode.
// Note, both modes require an initial value IV = PT(0) that is passed
in the clear or is somehow known to both parties
CT(j) = E[PT(j-1)] xor PT(j);
// CTAK encryption, where E is the encryption function
PT(j) = E[PT(j-1)] xor CT(j);
// CTAK decryption. An advantage of this mode is that there is no
need for a decryption function.
CT(j) = E[PT(j-1) xor PT(j)]; // CBC encryption
PT(j) = D[CT(j)] xor PT(j-1); // CBC decryption, requires a decrypt
function
CRYPTOGRAPHY: THE DEVIL IS IN THE DETAILS
When I was working through this design, I almost made a big mistake. I wanted to
use a simple key-additive system:
CT =
KeyStream xor PT;
// where the keystream is generated by a cryptographic function
The advantage of this approach is that I could store the combination of the game
and keystream:
GenericProtectedGame = KeyStream xor Game;
And then I would have added in a tattoo stream at the last moment for each
player:
ProtectedGame(i)
= GenericProtectedGame xor CTAT(i);
This would have been very fast and efficient from a performance and storage
point of view. Unfortunately, it would have allowed an adversary to combine two
ProtectedGames together to isolate the tattoo, just as fingerprint systems were
attacked (see the sidebar entitled “Attacking Fingerprints and Watermarks” in Chapter
6). Instead, I had to change to the CTAK or CBC cryptographic modes to avoid this
problem.
90
Protecting Games: A Security Handbook for Game Developers and Publishers
The reason you want the system to extend errors is that you do not want a third
party who looks at the cipher streams from different consoles to be able to start isolating the covert tattoo. In general, there is little benefit to using a different key when
sending the data to each individual console. The cryptographic modes described
here can allow unique identification, even if the key is common for all users.
If possible, it would be more efficient if the assets that are tattooed are at the
end of the game file. This would allow the encryption of the front part of the file to
be computed once and stored for all users. Then, the only portions of the game file
that would need to be computed uniquely for each console would be in the tattooed
region. It probably would be wise to change the key associated with a game regularly, but the risk of disclosure is more likely at the server than on the console. Thus,
for each console (i) and game (g), the package sent to the client would be:
ProtectedGame(i) = E[GAME xor CTAT(i),gkey];
// where gkey is the current key associated with that game.
The console and server will create or exchange the game’s key (gkey) via some
public key or private key management protocol. On the console side, once the game
has been completely downloaded and decrypted, the gkey will be deleted.
At this point, the tattooed game file will be available at the console. There is a
huge business advantage for consoles to allow players to purchase their own standard, commodity hard drives. Console makers make more money with less risk by
focusing on the media that they want to distribute rather than on selling hard drives. In order to safely use a standard drive, however, the console needs to encrypt
all data that is stored on the disk. There is no need for any other console or even the
central server to know what key the console is using. This is nice from a production,
operations, and key management perspective. (Exercise: propose a sensible way to
handle console hardware failures that do not require the redistribution of all of the
previously sent games.) Because the data is stored locally and encrypted with a
unique key, the tattooed game file will be less vulnerable to hackers.
Fortunately, consoles, and even many PCs that have a Trusted Platform
Module (TPM), do have some internal secure storage. The key that is used to
encrypt all of the keys for the various games will be stored in the TPM or encrypted
in a unique key that is stored in the TPM.
By using this process, if a game is found to be compromised, the game publisher can look at the game’s tattoo and use the tattoo to determine which console
was the source of the game. The console maker can then determine which other
games that had been sent to the compromised console are at risk. This does not
recover the previously lost games, but it can help reconstitute the system as a whole.
Chapter 9 Other Strategies, Tactics, and Thoughts
91
Also, the publisher can implement a recovery strategy for other games that were
distributed to that same compromised console.
R EFERENCES
1. M. Martin (2006), “Cause Mayhem to Disrupt Illegal Downloads, Says Introversion,”
http://www.gamesindustry.biz/articles/cause-mayhem-to-disrupt-illegal-downloads-says-introversion
2. Wikipedia (2008), “MediaDefender,” http://en.wikipedia.org/wiki/MediaDefender
3. soulxtc (2007), “Gotcha! New MPAA Site Tries to Trick Users into Illegally Downloading Movies,”
http://www.zeropaid.com/news/8877/Gotcha!+New+MPAA+Site+Tries+to+Trick+Users+into+Illegally
+Downloading+Movies
4. R. Paul (2008), “Revision3 CEO: Blackout Caused by MediaDefender Attack,”
http://arstechnica.com/news.ars/post/20080529-revision3-ceo-blackout-caused-by-mediadefenderattack.html
5. E. Gibson (2006), “Exit Games CEO Harald Behnke: Interview,”
http://www.gamesindustry.biz/articles/exit-games-ceo-harald-behnke
6. Valve Software (2008), “Business,” http://www.valvesoftware.com/business/
7. Polybren (2008), “Mass Effect, Spore DRM Loosened,”
http://www.gamespot.com/news/show_blog_entry.php?topic_id=26385172&part=rss&subj=6190791
8. R. Purchese (2008), “250,000 Spore Creatures Created in a Day,”
http://www.eurogamer.net/article.php?article_id=155360
9. HP and EA (2008),” Electronic Arts and HP Organize Regional Spore Creature Creator Design
Competition,”
http://h50025.www5.hp.com/ENP5/Public/Content.aspx?contentID=25116&portalID=375&pageID=1
10. Wikipedia (2008), “Battle.Net,” http://en.wikipedia.org/wiki/Battle.net
10
Anti-Piracy Bill of Rights
t the end of the day, treating your customers like criminals is bad business.
Although piracy is a problem that should be taken seriously, the primary
goal of any game company and the industry is to maximize revenues, not
punish pirates. The industry does not need to disclose the details of its anti-piracy
strategy to anyone, including consumers, but it is important that game companies
are clear as to what they are doing to a customer’s computer and their expectations
from their customers.
A
The entertainment industry, in general, and the game industry in particular,
have come under fire for some of their anti-piracy tactics. Sony BMG’s Rootkit,
the Recording Industry Association of America’s (RIAA) aggressive lawsuits, and the
Starforce DRM problem among others have left consumers with an active distrust
of the industry that has further encouraged piracy.
Many games have had public relations problems with anti-piracy, including
Bioshock, Spore, and Mass Effect, all of which have run afoul of their own antipiracy systems.
Although most consumers are generally sympathetic to the industry’s concern
about piracy, some of the draconian measures that have been taken have alienated
many players and created more sympathy for pirates than game creators. Some of
these cases can bite back. A crusading politician, or friend of a politician, who has
a bad experience with a game’s security system could easily put forward, and even
pass, legislation that would be difficult for the industry.
Think it can’t happen? Illinois recently passed a law that specifies the requirements to be able to cancel an online game subscription after an unhappy gamer
whose father happened to be a local alderman complained to a friend in the state
legislature1.
92
Chapter 10 Anti-Piracy Bill of Rights
93
Although it would be ideal for an organization such as the ESRB to add Fair
Use designations to their current product-labeling program, the game press and
online review sites could include Fair Use Principles in their review criteria and ratings. Hopefully, publishers and developers will consider these guidelines when
selecting and implementing their anti-piracy strategies.
What follows is a proposed set of basic principles and designators for managing Fair Use for games (and other applications).
B ASIC F AIR U SE P RINCIPLES
Computers, cell phones, and other devices are the property of consumers. It is a
privilege to be selected by a consumer to be installed on a platform. Conversely,
consumers should value and respect the rights of the creators and it is reasonable
for a creator to be compensated for his or her work as he or she chooses.
Therefore:
1. Any application that is installed on a consumer’s computer should be able
to be cleanly uninstalled if for any reason the consumer no longer wants it
on a platform. This means that there should be no residual software, drivers, data, or other information remaining on the platform as a default.
Any variations from this should be clearly specified and at the discretion of
the consumer.
2. No application shall alter other applications, drivers, libraries, or data on
a platform. “Upgrades” or changes to other applications, drivers, and
libraries should be clearly and individually indicated and approved during
the installation process. Upgrades shall not be for the purpose of adding
security or other functionality beyond that intended by the developer of
those applications and should not impair the operation of other programs
or libraries that may use these shared resources. Essentially, the only case
where an application should modify another provider’s application is when
it acts as an alternative distribution channel for that provider’s application.
3. No application, driver, library, or data will be installed on an application
without the consent of the consumer. A clear and complete manifest of
the applications, files, libraries, drivers, and data shall be provided to the
consumer with the application process. Also, if any shared registry data,
configuration information, or other such changes are made, they shall also
be clearly indicated in the installation manifest as well as a listing or copy
of the previous state of these configuration files, data structures, and so on.
94
Protecting Games: A Security Handbook for Game Developers and Publishers
4. No applications, libraries, or drivers shall operate when the provided game
or application is not running. The consumer is the individual who determines when, or if, the application operates. The expectation is that this will
be a manual decision by the consumer, not operating as a continuous or
background task, unless clearly and affirmatively agreed to by the consumer.
Any tools to facilitate updates or other background features shall be available and used solely at the discretion of the consumer. The consumer shall
have the clear ability to disable any continuously operating or background
services or applications at any time.
5. If the license or DRM service shuts down, the provider will either disable
the DRM solution, transition support of its existing customers to a third
party, or provide a no-cost migration path to a new solution. This problem
recently came to light with Yahoo!’s announced termination of its music
service.
R EGISTRATION O PTIONS
Registration is the process of validating an installation of an application on a
specific platform, often prior to use. This may be done via a license key, payment
process, provision of personal information, or other process.
RR: Registration Required—The application will not work without initial reg-
istration. It is highly recommended that any application that requires initial
registration support a multitude of registration options, including phone,
email, web form, and fax, and not just direct Internet connection. (See the
“Connection Options” section.)
Rxx (D or T)—Registration required within xx days (D) or times (T) that the
application is used.
V: Registration Value—Registration is required to access value-added services.
The application is still a meaningful, complete application without registration,
not a demonstration or otherwise crippled product.
RO: Registration Optional—There is no required registration for the installa-
tion and operation of the application. This may also include the case where
there is no registration process at all.
Chapter 10 Anti-Piracy Bill of Rights
95
I NSTALLATION O PTIONS
Installation is the process of installing and configuring an application on a given
platform.
I1—The installation is for a single instantiation on a single platform. It is highly
recommended that any application that operates in this mode have a way to
reconstitute or move the installation to another platform. This configuration is
expensive in terms of customer good will.
A1—This installation allows a single active copy associated with a license. The
installation can be moved or reinstalled on another platform. As with I1, the
developer or publisher should carefully consider the operational scenarios
where users may have legitimate problems with their platform that may require
a reinstallation or transfer without a prior clean uninstall process.
Ix—The installation is for a total of x copies spread over one or more platforms,
but by a single licensee.
Ax—The installation is for a total of x concurrent active copies associated with
a single licensee. The licensee is responsible for the activities of all individuals
who use the product or service provided. Thus, if a “ban” or other punitive
action is taken, it will be against all of the copies associated with that license.
C ONNECTION O PTIONS
CR: Connection Required—The application requires a live Internet or data
connection to operate. This levies a strong availability and scalability requirement on the application provider. It also constrains users from many legitimate
usage scenarios.
Cx (D or T)—Connection is required within x days or sessions to maintain use
of an application.
CV: Connection Value—A connection is required for certain value-added features of the application. The application is still a meaningful, complete application without a live connection, not a demonstration or otherwise crippled
product.
CO: Connection Optional—There is no required connection for the installation and operation of the application. This may also include the case where
there is no connection process at all.
96
Protecting Games: A Security Handbook for Game Developers and Publishers
I am not the only one concerned about this issue; see Talkjack3 for another
DRM Bill of Rights via ByteShield 4 and Stardock’s Gamer’s Bill of Rights5.
R EFERENCES
1. M. Fahey (2008), “Illinois Law Spurred by Final Fantasy XI Cancellation Issues,”
http://kotaku.com/5032004/illinois-law-spurred-by-final-fantasy-xi-cancellation-issues
2. D. Rothman (2008), “Why We Hate DRM: Yahoo Music Store to Shut Down and Shaft Customers
Who Bought Legal Music,” http://www.teleread.org/blog/2008/07/25/why-we-hate-drm-yahoo-musicstore-to-shut-down-and-shaft-customers-who-bought-legal-music/
3. Talkjack (2008), “Is DRM Killing PC Games? (Part 1),”
http://talkjack.wordpress.com/2008/06/22/is-drm-killing-pc-games-part-1/
4. ByteShield (2008), “Is Anti-Piracy/DRM the Cure or the Disease for PC Games?,”
http://www.byteshield.net/byteshield_whitepaper_0005.pdf
5. Stardock (2008), “Stardock Announces The Gamer’s Bill of Rights,”
http://www.stardock.com/about/newsitem.asp?id=1095
11
The Piracy Tipping Point
n the past several years, piracy has moved from a nagging nuisance to being perceived as a real threat to the entertainment industries. The power of the music,
film, and game publishers has been based on their control of distribution,
marketing, and funding for new creative works. The Internet has radically reduced
the costs for distributing and marketing entertainment. It is now possible for independent entertainment creators to compete with global corporations. Even more
threatening, piracy no longer requires expending any real capital. Piracy no longer
requires organized gangs who need factories and tools. Individuals can engage in
piracy for their personal benefit. The extreme view, taken by the RIAA and some
members of the film and game industries, is to target individual consumer “pirates”
as if they were major criminals1. In the US, the entertainment industry’s lobbying
efforts appear to have succeeded in pushing the government to take a lead role in
both civil and criminal prosecutions of copyright theft cases2. Although this may
succeed in the short term, it is too easy for pirates to move beyond the reach of
prosecutors3.
I
D ETERMINING
THE
G OAL
OF
A NTI -P IRACY P OLICIES
The real question that entertainment companies need to answer is whether they are
seeking to maximize revenues and profits or seeking to stop copyright theft. The
two questions lead to quite different strategies.
Is it really possible to stop copyright theft? The honest answer has to be no.
No Digital Rights Management scheme or Trusted Platform Module or any other
wonderful widget is going to “solve” copyright theft 4. Anyone who tells you different is simply trying to sell you a product. (Simple question: Will any anti-piracy
vendor guarantee its product against failure?)
At the end of the day, do you want to be a policeman or a businessman?
97
98
Protecting Games: A Security Handbook for Game Developers and Publishers
The real power of large entertainment publishers comes from their portfolio of
products and tie-ins to each product. Instead of worrying about fighting pirates on
a product-by-product basis, large companies can enmesh customers in an “entertainment ecosystem.”
This is not a new idea. Disney pioneered licensing its characters for everything
from lunch boxes to wristwatches and bed sheets5. The same Internet that makes it
almost trivial to pirate media also makes it much easier to link products and services together. Whether it is something as simple as a loyalty card or as elaborate as
an online community, there are many, many “carrots” that can be used to draw
customers into the legitimate, paying entertainment ecosystem compared to the
DRM and TPM “sticks.” They may still require security technologies, but the goal
is to transform the hard problem of stopping copyright theft into the easier mission
to verify and service legitimate customers.
The game industry has recently and loudly joined the music and movie industries in the fight against piracy. Yet, of all of the major entertainment categories,
the game industry is probably the best positioned to finesse the piracy problem. The
early battles with piracy in Asia have resulted in the move to online subscription,
and now free-to-play gaming. Although these solutions are far from perfect, they
make piracy manageable. They raise the barrier to entry for meaningful abuse, provide continual incentives to participate in the legitimate game system, and make it
much easier to take action against a much smaller pool of pirates… if anything, the
music and movie industry should learn from the game industry, not the other way
around.
As a business, entertainment is amazing because it scales so well. A threeminute song or a game can entertain millions and millions of people. iTunes has
shown that 99 cents is a great price for a song. The games Rock Band and Guitar
Hero are showing that you can take this same song, wrap it into a game for modest
cost, and sell the song again… and with substantially reduced concerns about
piracy6.
Reducing barriers to entry is key. iTunes made digital music good (enough),
cheap (enough), and easy (enough). Game developers and publishers need to make
similar assessments. If charging $50 creates a barrier to entry, perhaps changing the
price or the way games are built to be able to charge $20 is necessary. Games are still
substantially less expensive to create than movies, yet they cost several times as
much to buy. Developers may want to consider episodic gaming as a way to reduce
the in-store cost of a title. Rather than sell the whole game for $50 in a store, simply distribute the first $10 or $20 physically and sell the rest online to already
hooked customers. This could battle the appeal of used games, the poor margins in
retail, and the challenges of piracy all at once.
Chapter 11 The Piracy Tipping Point
99
Games are released at very different prices at very different times around the
world because of the costs of localization and other issues. Ubisoft recently made a
move to add subtitles to all of its internally developed games to make its titles more
accessible to deaf players7. Simple subtitles, combined with digital distribution,
could make it easier and quicker to release games globally simultaneously, just as
movies do, to reduce the value of piracy for customers in many countries 8.
“Piracy” is a trap. It reduces a whole range of problems, challenges, and issues
into a single word. It invites one to believe that there is a simple solution. As you
unpeel piracy into its components, you’ll find a number of problems and a range of
solutions. Some may require you to change the way you do business, some have
technical fixes, and some problems are simply hard. Albert Einstein stated9 that the
definition of insanity was “doing the same thing over and over again and expecting
different results.” By that standard, we should reconsider the industry’s approach to
the piracy problem and do something different.
R EFERENCES
1. C. Dring (2008), “Law Firms Declare War on Pirates,”
http://www.mcvuk.com/news/31730/Law-firms-declare-war-on-pirates
2. A. Broache (2008), “House OKs Copyright Czar, New Piracy Penalties,”
http://news.cnet.com/8301-10784_3-9939265-7.html
3. C. Doctorow (2007), “Trade Court Allows Antigua to Violate U.S. Copyright,”
http://www.boingboing.net/2007/12/22/trade-court-allows-a.html
4. M. Androvich (2008), “Encryption Chip Will End Piracy, Open Markets, Says Bushnell,”
http://www.gamesindustry.biz/articles/encryption-chip-will-end-piracy-open-markets-says-bushnell
5. E. Epstein (2005), The Big Picture: The New Logic of Money and Power in Hollywood, Random House,
ISBN 0-8129-7382-8
6. T. Johnson (2008), “Ripping on Metallica: Death Magnetic and Guitar Hero III,”
http://www.nationalledger.com/artman/publish/article_272622686.shtml
7. J. Snow (2008), “Ubisoft Adds Subtitles to All Future Games,”
http://blog.wired.com/games/2008/09/ubisoft-will-in.html
8. X. Jardin (2005), “Thinking Outside the Box Office,”
http://www.wired.com/wired/archive/13.12/soderbergh.html
9. A. Einstein (attributed), “Albert Einstein Quotes,”
http://www.brainyquote.com/quotes/quotes/a/alberteins133991.html
This page intentionally left blank
Part
III
Cheating
In this part, you’ll find the following topics:
Chapter 12, “Overview of Cheating”
Chapter 13, “Cheating 101”
Chapter 14, “App Attacks: State, Data, Asset, and Code Vulnerabilities
and Countermeasures”
Chapter 15, “Bots and Player Aids”
Chapter 16, “Network Attacks: Timing Attacks, Standbying, Bridging,
and Race Conditions”
Chapter 17, “Game Design and Security”
Chapter 18, “Case Study: High-Score Security”
101
12
Overview of Cheating
heating and games go hand-in-hand. It seems every game has its cheaters.
This discussion of cheating mainly focuses on cheating in multi-player
games. In traditional card and board games, the game’s mechanics and
game play systems are clearly visible. This makes it easy for cheaters to see how to
attack the games and forces game designers to consider cheating as the game is
built. Computer games, on the other hand, have mechanics that are concealed by
their elaborate graphics and high-speed play. They also have a strong, single-player
legacy (often from standalone PC and console games) where cheating was hardly
considered; cheating was a private affair between the player and herself. There are
also cases where people trade on the seduction of “cheating” as a marketing tactic
such as with cheat codes and Diablo 2’s Cheaters’ Tournament where players all
play with maximized statistics. This is not really cheating; it is just an alternate set
of rules of play. This part will explore a wide range of categories of cheats for computer games and discuss potential countermeasures.
C
Cheating is the next big frontier for computer game security. Multi-player and
social games blend business, marketing, and anti-piracy strategies for many game
companies. Multi-player, online, and social game services reduce distribution costs,
ideally by bypassing retail, but certainly through sale of downloadable content and
virtual items. The rich interaction system (RIS) strategy (see Chapter 9) is a powerful anti-piracy strategy because it ties players to the game publisher’s online
service. Cheating problems undermine the very same business and security benefits
that these strategies provide. Gaming services, such as MMOs and portals, need to
acquire and retain players and keep their operational costs down—all of which are
adversely affected by cheating. Finally, there is substantial growth in “for money”
games. The success of promotional games, tournaments, and contests, and, of
course, skill games and gambling games, is intimately tied to their control of cheating. Even the humble single-player game, after a high score system is added, counts
on controlling cheating to achieve its social gaming success. Who wants to play
when you know the high scores are rigged?
102
13
Cheating 101
heating is as old as gaming. When we shuffle and cut a deck of cards or use
a dice cup, we are continuing the age-old battle against cheaters. Although
the primary security concern of computer game companies is piracy, the
number one concern for players is cheating. No matter what motivates a player to
play a game, cheaters damage the game experience for everyone. The oldest
commercial game companies, the casinos, recognize this and structure everything
in their operation to instill confidence in their customers that there is no cheating.
C
C HEATING
AND THE
G AME I NDUSTRY
For a long time, the computer game industry has consciously traded on the
seduction of cheating by incorporating “cheat codes” into their games. They sell
“strategy guides” that give their users what some consider an unfair advantage in
the games by disclosing details and tactics that a player would have great difficulty
discovering through ordinary game play. They even have gone so far as to sell cheats
to players1. There are several ways to interpret these cheats:
Cynical attempts to cash in on player laziness
Methods to make up for poor game design
Bugs in game implementation
Because these were single-player games, there were no consequences for the
industry. This has, to some extent, created a “cheating culture” where players think
cheating is okay.
103
104
Protecting Games: A Security Handbook for Game Developers and Publishers
However, as games turn into services and multi-player and online games
become the dominant business model, the cheating culture remains. The problem
is that no one wants to play a game where they perceive that they are at an unfair
disadvantage. See Figure 13.1.
When I first started talking about game security, I heard story after story about
how players would work hard to cheat at any game with no real reward. They will
cheat at anything from a simple Flash game on a website to earn a high score to
hack a first person shooter to gain invulnerability. Do a Google search for “cheat”
and you’ll get almost 80 million results (by comparison, “Angelina Jolie” returned
a mere 35 million results). And at the top of those results are cheats for computer
games. Search on “cheat code” and you’ll find 3.5 million results. Again, the top
results are all for computer games. Cheating in games is a topic of compelling
interest for many game players; everyone wants an advantage.
If you create a good game that has value, someone else will try to squeeze it…
Hacking we’ve found is like a drug. It’s addictive for the player, and they have
a difficult time enjoying the game without the hack tools... A lot of players are
turned off by it.
[Hackers] turn away new and existing users, increase account theft rate,
shorten life span of a user, create [an] abusive community [environment,]
and discourage purchasing.
[Hacking is] an epidemic we’d been ignoring in Korea. We realized it’s not just
a US thing, and we developed detection tools and did mass bans…we moved
the critical values to server side and implemented third party solutions.
—Min Kim, Director of Game Operations at Nexon America on Cheating2
FIGURE 13.1 Why cheating matters
Chapter 13 Cheating 101
105
Cheating is costly. Players leave a game when they feel cheated. Players call
customer service when they believe that they are cheated—whether they are actually cheated or not. Cheating players are often punished by being banned, but this
deprives the game operator of further revenue from that individual. Lost players,
banned cheaters, and increased customer support all cost a game operator money.
Even worse, cheating is a problem whether it is real or just player perception. If
players think that they are being cheated, they may quit even if there is no actual
cheating.
The same powerful network effects that bring players together for multi-player
games, MMOs, and virtual worlds can rapidly turn from rapid growth to stagnation
and even collapse if players feel that they are being cheated. Anything that even
slightly reduces the likelihood a player will join a social network or reduces the
duration that they stay can have large consequences. Exponential growth is very
sensitive to small changes in its inputs. The key to success for social and multiplayer games is the perception of trust for all players and credible deterrence for
potential cheaters.
Often executives and thought-leaders in the computer game industry talk
about becoming “like the movie industry.” In some sense, the computer game
industry is becoming much more like its closer (and much larger) cousin, the gambling industry. The movie industry sells tickets and DVD products; the casino
industry sells an ongoing entertainment service. This is where the game industry
really seems to be moving. As this migration continues, the game publishers and
developers will change their focus from battling piracy to fighting cheating.
F AIR P LAY
Once we start talking about cheating, we need to ask—what is a “fair” game. First,
there is the question: Is the game itself “fair”? A game is fair if it has an agreed-upon
set of rules known by all of its participants and an expectation that those rules can
be reasonably enforced.
By this standard, casino games, even if they are biased towards the casino, are
fair. The rules are known. Conversely, an MMO may not be “fair” if it is ripe for
abuse: The often-cited example of real-money transactions (RMT) is not in and of
itself unfair. RMT, or any other aspect of game play, become unfair only if it is not
an explicit part of the game or a part of the culture of the game that is shared by all
players. Collusion in poker is unfair only because it is not part of the game’s culture.
One could easily imagine an alternate version of poker where players set up partnerships and agree to share winnings. The card game bridge works this way.
106
Protecting Games: A Security Handbook for Game Developers and Publishers
Second, what is “fair play”? Fair play includes the game’s rules, the game’s
environment (the way it is being operated), and the game’s culture. It is certainly
plausible to have a computer game that explicitly supports a “hacker culture,”
where programming hacks and mods, aimbots, and wallhacks (and maybe even
hack countermeasures) are all part of the game.
Responsibility for fairness rests with everyone—the game designer, its operator
and implementer, and its players. Game designers should consider cheating and
other threats to the game in its basic design. Game operators and implementers
need to protect the game play environment and ensure that the specific service
they are offering cannot be abused. Players, too, have a responsibility to the other
players to stay within the construct of the game, even if its implementation is flawed
or the rules are incomplete. In a board game, a player has a copy of the rules. The
lack of clear, written rules for many computer games makes cheating easier: You’re
not “cheating,” you’re exploiting the code. A successful game will cultivate an
environment of mutual trust and obligation to play together fairly.
Perhaps the saddest legacy of single-player computer games is that lazy
programming and poor game design have made cheating acceptable or even
admirable. Even worse, players now expect to find “cheat codes,” and game companies and magazines profit from the sale of these codes and guides. Is it bad
game design that makes it necessary to purchase a $25 strategy guide in addition to
a $50 game, or just greed? What is clear is that now that multi-player and massively
multi-player games are emergent, the sudden objections by the game industry to
cheating sometimes seem a bit disingenuous.
C HEAT C ODES
Cheat codes seem to be an accident of history. Testing software requires exercising
all of its features and failure paths. For a game, this means spending a huge amount
of time testing the application, and it is terribly inconvenient to have to start over
the game from the beginning or require your testers to all be expert players for them
to be able to do their jobs.
The rather simple solution is to allow the game to be changed so that even a
minimally competent game player can thoroughly test the application. Cheat codes
were simply efficient triggers to access these test modes. Cheat codes can give invulnerability, infinite ammunition or lives, allow players to fly and jump around
the game—whatever it takes for testing.
Chapter 13 Cheating 101
107
Most of the time, test code is removed from a game or application prior to its
release. Security is one reason, but some of these test codes can also undermine the
proper operation of the application.
Unfortunately, this didn’t happen with some early games. Players discovered
these “cheat codes” and became fascinated with finding them. Players would sometimes even pay for these codes, and cheat codes have become part of the marketing
machinery of the computer game industry. Cheat codes are a currency used by
public relations and marketing to reward magazines, reviewers, and websites, as the
codes can bring in more traffic, advertising, and revenue for the publications.
There are two real problems with cheat codes. The first is a missed business opportunity. These codes are rarely fully integrated into the game’s design and interface. In some sense, the cheat codes provide a wide range alternate modes of game
play that should be easily accessible to all players. These alternate modes should
include all of the features that you would expect from a game mode: an infinite life
mode should have a separate high score, rewards, and other incentive systems
distinct from playing without that feature. Game designers can tap these alternative
game play options to efficiently expand the game experience for a wider range of
players. I, for one, rarely buy first person shooters (FPS) because my “twitch” skills
are pretty pathetic. If FPS games included well thought-out game modes that were
more accommodating of slow folk like me, they might make some additional sales.
The more dangerous problem with these cheat codes is that in many cases the
game itself really doesn’t know that a cheat code is active. For single-player games,
this is not really a problem. In fact, from a strict software testing perspective, it is
better that the game doesn’t “know” that it is running in a cheat mode. For a multiplayer game, however, this situation leads to trouble. Players have been able to use
some of these single-player cheat codes in multi-player environments in a way that
HARDWARE HACKS: R4 AND GAMESHARK
From their early days, some cheaters have targeted game hardware—the console
itself or its various inputs and storage interfaces. These hardware hacks can modify
game save files and, in some cases, allow active modification of a game while it is
running. The R4 product that targets Nintendo’s DS handheld and, to some extent,
Mad Katz’s GameShark both subvert the console’s external storage systems. Some of
these tools can even bypass the entire console operating system and give the hacker
total control over the behavior of the platform. This can be done to give players an advantage in the game or as a method to pirate games. These devices have mainly had
an impact on single-player games. However, they could cause real trouble as console
multi-player gaming grows.
108
Protecting Games: A Security Handbook for Game Developers and Publishers
is not detectable by the other players. These kinds of careless cheat code implementations can allow a player to play a multi-player game at a huge advantage and
ruin the game for the other players. Sloppy labeling of cheat code modes and poor
management of state information in multi-player environments aggravates these
problems.
In an ideal world, the entire language and use of cheat codes would be abandoned. All of these additional game play modes would become part of the game
play experience and listed on the back of a game’s box, just like other features.
Only real cheaters would look for “cheat codes”… except they wouldn’t be able find
them. Is it too much to ask those clever folks in marketing to find some other way to
grab the interest of players, magazines, and websites besides advocating “cheating”?
EXPLOITS
There is some confusion about the definitions of cheating, hacking, and exploits. In
some sense, I am not really interested in clarifying the issue. For purposes of this
book, cheating is an attack on a game application. I don’t care if it is based on some
tool-aided assault or a quirk in the interface or game engine or some combination
thereof. My categories have been based on how game developers and publishers
typically perceive problems and their countermeasures.
It is worth highlighting exploits, however.
Exploits are flaws in the game as implemented that give a player an advantage.
For example, the set of fantasy pub games for Fable 2 have a race condition flaw (a
situation where the player can induce an inconsistency in the game’s behavior) that
gives them a huge advantage. The Fable 2 pub games are a set of casino-style games
where players can bet and win or lose chips. In one game, a player can “change her
bet” from 60 gold to 600 gold (and win as if she bet 600 gold), but only be penalized for losing as if she bet 60 gold 3. There are innumerable variations on this
problem. Basically, the game programmer and game designer are not implementing
the same game design or the game programmer has not been sufficiently careful in
controlling changes to the game’s behavior.
All games have some sort of state (the current status, location, and other information about players, assets, time, and so on) and rules (the way that players can
alter the game’s state and when they can take these actions). Race conditions are actions that alter the game’s state in a way that should not be allowed under the rules.
One way the Fable 2 problem could occur is that there are two different systems: a
player account system and a game system. The player’s account is checked when the
initial bet is made and this is sent to the game and debited from the player account.
But subsequent changes to the bet are not checked against the player account; they
are only changed in the game itself. Then, if the player wins, the game sends the gold
back to the player account.
Chapter 13 Cheating 101
109
Race conditions are associated with most “dupe” exploits (where players abuse
the inventory system or other game mechanics to duplicate items). A sample “dupe”
exploit could work as follows:
1. Player 1 drops an item out of her inventory and it is added to the local game
environment.
2. Player 1 abandons the game before her inventory is updated.
3. Player 2 picks up an item from the local game environment and it is added to
her inventory.
The item has now been duplicated. The “dupe” attack works because the three
data stores do not properly synchronize with each other.
The key is that games are essentially transactional systems and need to be built as
such. A proper transactional system would not allow the player to drop the item without updating the inventory: Either the item would be dropped and the inventory updated or nothing would happen at all. These problems can be even worse in online
games when developers choose not to use standard databases or do not understand
proper data transactions or are just not careful.
Another major exploit area occurs when game developers use graphics engines to
enforce game play. Graphics engines are optimized to smoothly render graphics and
animation. Smooth playback is the most important requirement for most graphics
engines, not careful enforcement of physics features such as collision detection or
pathfinding. This can create a number of problems: Many games use the graphics
engine’s model of the game environment to determine legal moves, visibility, and position. Exploits take advantage of conflicts between a game’s need for accuracy and
a graphics engine’s goal of smooth rendering.
Exploits can even exist in paper-and-pencil games. I used to play the super hero
role-playing game Champions in high school. I was one of several people who found
an exploit in the game’s mechanics that allowed me to deliver 20 times the damage
of other players.
Exploits are the responsibility of the game developers. They really aren’t “cheats,”
because they do not require any modification of the game’s software or data nor can
they be effectively addressed by anti-cheat tools. Basically, they require corrections to
the game’s design and implementation. Clear documentation of general game rules
and procedures should help reduce exploits and make them obvious flaws when they
occur. The Age of Conan had an exploit that allowed customers playing the
Demonologist class to advance extraordinarily quickly through the game4. For online
games, detailed logging can be critical in locating exploits by tracking their consequences. Also, given the scope of the games, it is probably good to reward players
who find exploits—after all, they are paying you for the privilege of testing your software. (Note: When a player reports an exploit, it is probably also worth reviewing their
game play logs to see if they had some fun taking advantage of the exploit for a while.)
110
Protecting Games: A Security Handbook for Game Developers and Publishers
T HE CARRDS R EFERENCE M ODEL
In order to continue this discussion about cheating, it is important to have a framework for talking about how games are built. CARRDS is a conceptual framework
for talking about games and game security, and is illustrated in Figure 13.2. The
advantage of the CARRDS framework is that it allows you to focus on the common
elements of computer games that can affect security.
Control—The keyboard, mouse, joystick, controller, Nintendo Wiimote,
voice, biofeedback, or whatever raw means a player uses to interact with a game.
Action—The normalized control that the game rules understand activities such
as go left, fire, strafe, jump, turn right 30 degrees, fly NNW 1 hundred meters,
and so on.
Rules—The actual rules of the game.
Random—Random events sit in the nebulous intersection of actions (players
rolling dice to determine their move choices), rules (determining the result of
an attack), and state (a player’s cards). Random events raise some interesting
problems in a networked environment, as there are real questions as to how to
provide fair random online.
Display—The presentation provided to a player of the game’s state. (Note:
There can certainly be multiple views of the game’s state.)
State—The current state of the game, or, in a multi-player game, the partial
state known to a single player.
FIGURE 13.2 CARRDS game architecture
Chapter 13 Cheating 101
111
T HE R EMOTE D ATA P ROBLEM
In 2000, Matt Pritchard published one of the first significant papers on multi-player
game security. In it, he set the basic categories of attacks—data and network—and
began the discussion about one of game security’s most trying problems—trusted
clients5. The “Trusted Client Problem” is seen in many games to this day. The
Trusted Client Problem was targeted at client-server games and can be generalized
and restated as “The Remote Data Problem,” as follows:
Games tend to trust the state or information provided by other players.
This approach seems works fine, most of the time, and is very easy to implement by using data synchronization techniques. Data synchronization is very good
at handling cases where the players’ games’ states become slightly inconsistent.
Unfortunately, the system falls apart when one of the players is cheating. Because
the remote data is trusted, the peer player or game server tends to blindly accept information that is manipulated on the cheating player’s platform or on the network
connection. If cheaters can force others to accept whatever data they want, they can
change the game however they want—anything from giving themselves more
ammunition and health, to changing their location, or entirely altering the game
environment.
It is also worth noting that in a number of game environments, there is a
concern with cheating by the server. Gambling games and contests are obvious
examples where players don’t trust the game server. Simple multi-player games
that use player-run servers, like many first person shooters (FPS) and even MMOs,
can have situations where players are suspicious of the server operator. The FPS
Battlefield 2 ended ranked games on third-party servers because of this problem 6—
a costly decision, as its publisher, EA, had to operate all of its ranked servers itself.
STATE-BASED NETWORKING
The simplest way to implement a networked game is to use a distributed state (or
object) application that synchronizes the game state, as illustrated in Figure 13.3.
This is very tempting. It is easy, fast, and the developer doesn’t have to think about
the multi-player design. Essentially, the multi-player game is implemented as a
series of parallel single-player games and the distributed state tool “smoothes out”
the differences between each player’s version of the game.
112
Protecting Games: A Security Handbook for Game Developers and Publishers
FIGURE 13.3 State-based networking
There are several basic synchronization models that can be used by a distributed state system. At a minimum, players exchange state information (Sx), but they
may also exchange time information (Tx):
Newest Wins—In this synchronization scheme, the players exchange both
state and time information. The one individual that has the latest timestamp
determines which state is authoritative. For any of these systems, there is an interesting challenge associated with synchronizing time, particularly when faced
with lag over a wide area network. Somehow, all of the participants have to start
at the same time. Time itself can be spoofed by malicious players who alter their
own local time to be much later than that of the other players, distorting the results of any application that uses this synchronization model by always forcing
the other players to use the cheater’s state and time information.
if (Ti > Tr) then (Si = Si, Ti = Ti);
// for the case where the internal player (i) has
// a newer timestamp than the remote player (r), the
// internal player state and time is used.
else if (Ti<Tr) then (Si = Sr, Ti = Tr);
Chapter 13 Cheating 101
113
// for the case where the internal players (i) has
// an older timestamp than the remote player (r), the
// remote player’s state and time is used.
// there is an interesting question as to what to do if
// the timestamps are identical. It is likely that many
// developers would stick with local state, although there
// is a reasonable argument that if the states are different
// and the timestamps the same, there is a problem.
Average—The players average both the time and state information that they
receive from each other. There are various weighting schemes that can be used
to bias data based on how recent the information is both according to its timestamp and the actual, local time. It is quite possible for a cheater to abuse these
systems by providing data that is far outside the ordinary behavior of a legitimate player (altering state information to be very different will cause its value
to dominate the information from the other players—that is, if the cheater is
only supposed to have 100 hit points, setting her own hit points to 100,000 will
result in an average of (100,000+100)/2, or 50,050 hit points.
Ti = AVERAGE{Tx}; // where {Tx} is the time for each player
Si = AVERAGE{Sx}; // where {Sx} is the state for each player
Vote—Players use a voting scheme to determine the local time and state. These
systems can also use a weighting scheme. One of the security measures used
with these types of systems is to throw out outlying results (if there are multiple players). Collusion can be a problem for both vote-based and averaging systems. An important consideration for voting systems is that there is reasonably
good time synchronization between the players. In order to have workable
votes, all players need to participate with a vote for a given game “tick.”
Ti = VOTE{Tx}; // where {Tx} is the time for each player
Si = VOTE(Sx); // where {Sx} is the state for each player
Internal Authoritative—In this type of scheme, players “trust” themselves
more than other players for data about themselves. The different portions of
the game state are updated based upon what the data is and who is doing the
updating. “Neutral” state and time data (information not associated with a
specific player) is updated using an averaging or voting scheme:
114
Protecting Games: A Security Handbook for Game Developers and Publishers
// In general, a player’s game state is the state of
// the player’s own information, such as her own status,
// (internalPS) and the other players view of their own status.
GameState(playerx) = {externalPS1, externalPS2, …,internalPSx,
…,externalPSn);
// the game state for each player x uses the state
// information from each other player for that player’s
// state and her own data for herself.
// for example
Game(player1) = (internalPS1, externalPS2);
// Player 1’s view of the game state with player 2
// providing the state updates for player 2 and player 1
// providing the updates for player 1.
Game(player2) = (externalPS1,internalPS2);
// Player 2’s view of the game state.
External Authoritative—One of the ways to address cheating is to trust “the
other guy.” In this model, the player trusts herself for data on everyone but herself. If there are more than two players, the player’s internal state and time is
based on an average or voting scheme of the external players:
// In general, a player’s game state is the state of the
// other players’ view of their information (externalPS).
GameState(playerx) = {internalPS1,internalPS2, …,externalPSx,
…,internalPSn);
// the game state for each player x uses the state information from the
// external players for her state and uses her view for their state.
// for example
Game(player1) = (externalPS1,internalPS2);
// Player 1’s view of the game state with player 2 providing the
// state updates for player 1 and player 1 providing the updates for
// player 2.
Game(player2) = (internalPS1, externalPS2);
// Player 2’s view of the game state.
Chapter 13 Cheating 101
115
All real-time network game schemes share one challenge: handling the synchronization between the game’s actual local state and its displayed state. This is a
concern when games are played over a network because the network lag can introduce discrepancies in time in addition to any differences in time because of clock
differences in each player’s game platform. In general, developers have two competing goals: a smooth presentation and an accurate reflection of the actual game
state. The danger of erring too far on the side of smoothness is that important,
current state information that could affect game play is not available to the player’s
display. Also, player control inputs may not accurately reflect the game actions that
they intended because the display state that they see and are reacting to is not the
actual, local game state.
Another common challenge for networking systems is how to handle scenarios
where one player gets out of synchronization with the other players. It is very common to defer to the out-of-synch user to keep the displayed game smooth for that
player. This choice leads to many of the more obvious attacks against multi-player
games. In these “standbying” and “bridging” attacks, players intentionally break
their connection to push the system from its regular operation into its “synch
recovery” mode. These attacks are very simple to implement by simply installing
a switch that physically disconnects the game computer or console from the
network.
HIDDEN STATE AND PARTIAL INFORMATION
Many games have asymmetric information: There is state information that is
known to some, but not all, players. Players have partial information about the global
game state. The most familiar example is card games. Players are dealt cards face
down that are not known to the other players. A well-formed game has the characteristic that when a player sees an action from another player, this player can determine if the action is consistent with the game’s rules and its current state, even if she
cannot determine exactly that that the action is legal. Once again with card games,
when a player privately passes a card to another player, the receiving player can validate that cards that were passed are not cards that the receiving player knows could
not come from that source, even if she cannot validate that the sending player legally
had those cards. Hidden information can be verified only after the game is over (or
when the hidden information no longer has an impact on the game—such as when
all players are dealt a new hand in cards).
Although real-time verification of fair play is ideal, because games include partial
information, retrospective verification is sometimes the only option available.
116
Protecting Games: A Security Handbook for Game Developers and Publishers
In general, the problem with state-based networking is that:
Games are distributed transaction systems, not distributed state systems.
The rules are the key. As you can see from Figure 13.3, if a game uses statebased synchronization, cheating is very easy because the game’s multi-player
system exists independently of and underneath the game rules. The incoming state
from a remote player is implicitly trusted by the very nature of the communication
system: The game’s rules are not part of the state synchronization process. Even if
the communication path itself is encrypted, a malicious player can use a tool like
Cheat Engine to manipulate her local game state and trust in the distributed state
system to push the corrupted data to the other players, and it is even easier if she
can get to the cleartext messages.
In general, it is better to disrupt the game experience for the out-of-synch user
and defer to the server or majority of users. In games where synchronization is critical, the game should roll back to the last shared “good state.” As we go down this
rabbit hole, we do realize that a malicious player could attempt to attack the “last
good state” system; therefore this also needs to be designed to be secure. In order
to protect against attacks on the “last good state,” the players should immediately
confirm that they’ve received a version of the game’s state with the other players as
they move forward so that everyone knows the current “last good state” before one
of them can exploit this. One of the protocols, Strobe, from our anti-cheating software, SecurePlay, is actually designed to provide a secure synchronization process
for peer-to-peer or less trusted client-server systems: It delivers a “secure tick” to
stop several attacks on time in games.
CLIENT/AUTHORITATIVE SERVER NETWORKING
The other standard approach to multi-player gaming is to implement a clientserver design with the server being trusted by all of the players, as illustrated in
Figure 13.4.
Trusting the server is secure—at least as long as you and your players both trust
the server (see the section, “Security, Trust, and Server Architectures,” later in this
chapter, for further discussion of trust and server architectures). Control or actions
are sent to a central server for processing. The server then returns state updates to
the client. The archetype of this approach is a MUD where players enter raw telnet
text and send it to the server which in turn returns new state information. It is technically possible to implement a multi-player game solely via exchange of control
information. The main limitation of this approach is that there are often substantial
differences between computers in their raw control data (for example, encoding of
characters, line termination, resolution and mapping of mouse position information,
Chapter 13 Cheating 101
117
FIGURE 13.4 Client with authoritative server networking
and so on). Also, different game players may want to use different types of control
input devices (mice, keyboard, trackballs, and D-pad controllers) with different
formats and content for the raw data provided by each. It is unnecessarily burdensome to force the game to understand all of the different valid control systems.
The main problem with the authoritative server model comes from cheating by
developers. The “cheat” I am talking about is that too often developers wind up
implementing state and rules on the client-side and using a state synchronization
approach to update the server. This is often done for legitimate performance reasons,
but leads right back to the “trusted remote date” scenario that you thought you had
escaped by using this networking strategy.
ACTION-BASED NETWORKING
The remaining choice for multi-player gaming is to exchange actions instead of
state or control information over the network. Action-based game play networking
(see Figure 13.5) has a lot of advantages. Game actions are almost always bandwidth
efficient, as they reflect player choices that are limited by the inherent abstraction
of all games. Architecturally, a nice aspect of action-based networking is that it can
operate in either a client-server or peer-to-peer network, leaving more flexibility for
game developers.
118
Protecting Games: A Security Handbook for Game Developers and Publishers
FIGURE 13.5 Action-based networking
Actions are selected prior to the invocation of a game’s rules. This has a
substantial security advantage, as the pre-existing rules validation and processing
system become part of the networked game’s security system. Control-based clientserver networking has some of the advantages of this approach, as control information is converted into actions at the server (where they are validated); however,
state information is passed down to the player client where it is accepted without
verification. By exchanging action information with remote players or servers, the
game’s own rules can be used to protect against cheating. Also, the architecture is
nicely independent of the location of the player or the game’s underlying communications (local or remote, client or server or peer), making testing easier by allowing the game rules to be fully tested through its API. Logging and replay features are
also easy to add when using action-based network, as are metrics and tracking for
performance monitoring and debugging.
It is fairly easy to see why action-based networking is secure by looking at playby-mail chess. In chess, a player sends his moves to the other player. The receiving
player:
1. Receives the incoming action.
2. Determines whose turn it is (can any action occur now from the specified
player?).
3. Looks at the board and determines if the piece is available to move.
4. Determines if the move is legal (can the player take the specified action?).
5. Moves the piece.
Chapter 13 Cheating 101
119
In state-based networking, chess would be played by sending a new chess board
or by sending the moved piece’s new position (along with any removal of an
opponent’s piece). The receiver has a much more difficult time determining if the
move is valid because she basically has to reconstruct the move or look at a list of
all available moves and see if the selected one is included. For a computer game
with more complicated actions and multiple active players or “pieces,” this problem rapidly becomes intractable.
Formally, there are two basic types of action-based networking messages:
PlayerID,Action + Parameters, ActionInitiationTime;
and
PlayerID,OldGameState,Action + Parameters, ActionInitiationTime;
Under action-based networking, the model is essentially the same as for chess:
1. Receive the incoming action from a player (local or remote).
2. Determine if the player can take that action given the current game state.
3. Implement the action (use the action and its parameters in conjunction
with the game rules to determine the new game state).
4. Update the state.
It is important to note that there are really two types of rules processing. First,
there are the rules that determine if a specific player can take a specific action given
the current game state. This is an area where programmers often make errors.
Often, the problems occur because the developers don’t assume someone would
attack the control interface or the network directly and drive the game faster than
normal. This type of action overrun attack is a fairly common form of network
attack. The second type of game rules are those that take an input action and its
parameters and determine the outcome to update the game’s state.
One of the challenges with implementing action-based networking is maintaining synchronization between players. This is not a problem for state-based
networking systems. In addition to being easy to implement, state-based synchronization schemes can be fairly “sloppy,” especially if they use an averaging scheme
to synchronize. The various players will continually converge towards a shared
state... and it almost doesn’t matter if the different player’s state is ever
exactly the same. This approach is used in large-scale simulations where cheating
security issues aren’t a problem for performance and simplicity of development.
120
Protecting Games: A Security Handbook for Game Developers and Publishers
Action-based networking first requires setting an initial state and time between
all of the game players. Time can be particularly difficult to coordinate. One approach is to handle network time as a sequence of synchronized “ticks” that all
players need to participate in before the game proceeds to the next tick.
MONEY, VIRTUALIZATION, ROOTKITS, AND THE END OF CLIENT-SIDE SECURITY
Historically, the main focus of anti-cheating techniques has been on client-side security tools. These software techniques, libraries, and even standalone applications
“look” for malicious code and alterations to the operating environment for the game
application. These tools have been reasonably effective: There is only so much work
a hacker will do when they are attacking a game “just for fun.”
The game industry is changing rapidly. It is much larger than when most of these
anti-cheating tools were created, and hackers are now breaking games to make
money.
The computer industry is also undergoing a bit of a revolution. Virtualization tools,
like VMware and the open source product Xen, are changing IT. At the same time,
hackers have moved to rootkits as a way to avoid detection.
Barring the rhetoric, both of these tools are similar. Virtualization wraps an operating system instance and its associated applications in an isolated shell that is unaware that it is in a shared environment under control of another application. Rootkits
are applications that use very low-level utilities to hide themselves from ordinary operating system monitoring tools. SoftICE, an early Windows tool, hid itself from the
operating system as part of its function as a powerful platform debugger, and was
used to attack Diablo.
Most anti-cheating products are reactive; they detect specific cheats only after
they have been identified. Like anti-virus software, they don’t actually search for new
attacks; they look for signatures of known attack applications. This distinction is important. The company or group that keeps the game security software up to date
needs to have an actual copy of the attack software in order to create a signature for
it. If the attack software is changed, the signature needs to be changed as well. Even
worse, a completely different program that exploits the same weakness also will
need to be retrieved by the security company and a signature created for it as well.
The key challenge that these tools face is that it is inherently difficult to separate
legitimate programs, like mouse or keyboard controllers, from malicious programs
that are virtually identical in function. After all, what is a “bot” but an exceptionally
clever input device?
Chapter 13 Cheating 101
121
When cheats are done “for fun,” they are widely distributed and easily detected by
a game company’s “Cheat Surveillance System” (the game’s online forums and fan
sites). When cheating a game becomes serious business, hackers don’t share their
attacks or sell them for a nominal fee; they profit from them directly. I have been told
anecdotally that there are proprietary bots used by gold farmers for many MMOs that
are not widely distributed, but used only as a tool for professionals.
Detection of serious cheats can be difficult. An outsourced employee at a company that made an online poker calculator player aid (the tool automatically tracks
the “rake” by the poker site operator) inserted a rootkit into the application 7. The malicious program installed a key-logger and other programs useful for looting the poker
player accounts. This rootkit was still not detected by any traditional security software
months after its insertion—I suspect, because it was neither widely distributed into
the general population nor obvious in its nefarious activities.
Virtualization provides a powerful avenue for attacking games. Just like other applications, software security tools live inside the virtualized environment and cannot
detect that they are not part of the platform’s “real” operating environment. As software developers create more and more powerful virtualization tools, it is highly likely
that some of these virtualization management, security, and testing tools will be used
for malicious purposes, just as the SoftICE Windows testing tool was turned into a
game hacking tool. Combining rootkits and virtualization is a plausible security nightmare with the recent demonstration of a rootkit that could move an operating system
into a virtualized shell without being detected and leaving the rootkit in control of the
platform8.
Targeted malicious code is a growing problem for the security software industry.
Previously, hackers would create viruses and other malware just to spread them to as
many computers as possible. Recently, online criminals have begun to target specific,
lucrative targets: companies or even individuals. The reasonable revenues and
exceptionally low risk make all forms of online gaming a very tempting opportunity.
Virtualization will also allow hackers to more effectively and inexpensively scale
automated gold farming, pokerbot, and other systems to attack online games.
S ECURITY , T RUST ,
AND
S ERVER A RCHITECTURES
Almost every multi-player game uses a central server in its design. Even peer-topeer games include a minimal server system for matchmaking and storing persistent data and rankings. The standard assumption is that the server is trustworthy.
122
Protecting Games: A Security Handbook for Game Developers and Publishers
This is the view of the developer, of course. Players may have a different view, and
rightly so, in some cases. Servers can be hacked or, even worse, a malicious insider
may be abusing the game for his own benefit as happened at the online poker site
UltimateBet.com9. In this case, the malicious insider was using the fact that the
game state was available on the game server to read other players’ hidden cards—
and, as a result, make extremely profitable wagers. Online gambling sites are not the
only victims. A Shanda Interactive vice president and two accomplices were
arrested for creating and selling virtual items in the MMO, Legend of Mir 210. The
only reason that they were caught was that they chose to create and sell exceptionally rare items. They might never have been caught if they had chosen to sell widely
available, but still valuable and profitable, game currency as has happened at several
other online games.
In addition to the “trusted server” and simple “peer-to-peer” models, there are
at least three other architectures to consider: Trusted Third Party, Blind Service,
and Collaborative Game Play.
FIGURE 13.6 Trusted third-party architecture
The Trusted Third Party model (see Figure 13.6) is an independent service
provider who has no interest in the game’s operation or outcome. The third-party
provider does not run the game, but either audits its behavior, or, more powerfully,
implements key portions of the game itself to ensure its integrity. This scenario is
the gaming analog of a real estate escrow agent who mediates part of a sales transaction to ensure money is transferred appropriately between buyer and seller. For
MMOs, an escrow agent could be used to handle all asset transfers (and not just for
sales between players as some Real Money Transaction (RMT) providers are doing
Chapter 13 Cheating 101
123
today). Conceivably, these third-party providers could roll dice, resolve combat, or
even host the entire game. The success of the Trusted Third Party comes from
proving its independence from the players and game operator, both technically
and from a business perspective. Poker is an example of this architecture already
being used for gaming. The players are not playing against the house, as in a casino,
but against each other. Thus, the poker operator has no vested interest in the
game’s outcome. The challenge comes from enforcing this separation. If an employee of the poker operator has a vested interest in the game’s
outcome, as in the UltimateBet.com example, the model is undermined. Just as in
promotions and contests, there are real benefits to the integrity of a game from
prohibiting game company employees (or their friends and families) from playing
the game (a topic that I will be revisiting in Chapter 25).
FIGURE 13.7 Blind service architecture
A variant on the Trusted Third Party model is to have an untrusted third party.
The Blind Service model, illustrated in Figure 13.7, is a scenario where there are
multiple service providers that can be chosen at random by the game participants.
Ideally, the blind service would not even know who the players are. If there are
enough blind service providers and the players use an intelligent randomization
scheme for selecting the provider, the system can be secure. The nearest analogy is
the Tor anonymous web browsing service11. The problem with this model is to
find a way to make the set of anonymous providers large enough and make the service economically viable for a game operation. The system also needs a mechanism
to communicate some information between the game operator and the blind
service and players. Depending on the specific system and business model, cryptographic techniques, such as public key cryptography, may be helpful.
124
Protecting Games: A Security Handbook for Game Developers and Publishers
From an anti-cheating perspective, the ideal is to be “N-1 Secure.” If there are
N players in a game, the game should be fair if at least one of them is honest (or,
at least not part of the same cheating team). Action-based networking actually
addresses a portion of this architecture, and is all that is needed for games like
chess. The combination of exchanging information by actions with local verification of rules by each player means that the only role of a central server is to adjudicate disputes (see Figure 13.8). Players can independently rebuild the changes in the
game’s state over time by looking at all of the players’ actions. If the previously
recorded state is not identical (or at least is consistent) to the reconstructed state,
some form of manipulation or corruption has occurred. My company, IT
GlobalSecure, took this basic concept and extended it to cover more types of games
and other game interactions, such as fair random numbers, handling hidden information, and securely synchronizing network time with our SecurePlay software.
FIGURE 13.8 Collaborative game security architecture
Issues of trust are important for game developers, game operators, and game
players. Payment processors, regulators, and law enforcement may all be concerned
with the integrity of a game for a number of reasons.
One advantage of this architecture is that security evaluation can be made
much simpler. Because each party to the game has an independent copy of the
rules, independent game implementations can be used by each participant as long
as everyone follows the same API. This could have some very interesting benefits
for casino games, skill games, and contests where criminals can currently target
game software for attack and there are ongoing concerns about game developers as
potential threats.
Chapter 13 Cheating 101
125
R ANDOM E VENTS
Fair random number generation is a really challenging problem for multi-player
games. When we play games face-to-face, we have standard products (dice and
cards) and standard procedures (shuffle, cut, and dice cups) that ensure integrity.
If you go to a casino, a massive portion of the security design for games is around
ensuring the integrity of random events. Slot machines, the most familiar and
trusted form of automated random number generation, use real random noise
(almost always) to generate random bits and the systems are sealed and have their
code evaluated line by line—and they’ve still been attacked12. In the CARRDS
model, “random” is highlighted because it creates its own set of issues and was one
of the motivations for creating our SecurePlay software.
An example of the blind service model, described previously, has been used for
years by board gamers who play by mail to roll dice fairly. The players designate a
stock symbol and future date and use the cents portion of the price as a random
number. (Electronic Arts ERTS closed at 47.06 on Wednesday, 20 August 2008, so
the random number would be 06.).
There are actually several distinct types of random number systems that are of
concern in computer games:
Private Random with Replacement—The random value is known only to the
individual player, but is drawn from a random sample, like dice, where random
values can reappear.
Public Random with Replacement—The random value is known to all players
and the random values can reappear.
Public Random without Replacement—The random value is known to all
players and the random pool is sampled without replacement. For example,
cards from a deck, where random values cannot reappear.
Private Random without Replacement (Separate Random Pool)—The
random value is known to only an individual player and the random pool is
sampled without replacement, but the random pool is not shared across players (as in the game Magic, where each player has her own deck of cards).
Private Random without Replacement (Shared Random Pool)—The random
value is known only to an individual player and the random pool is sampled
without replacement. The random pool is shared like cards dealt by a dealer.
The question in each is how to generate a fair random event, preferably in a way
that is N-1 secure. It is possible to use a trusted third party for random numbers
(interestingly, this has not been tried for online gambling to my knowledge).
126
Protecting Games: A Security Handbook for Game Developers and Publishers
The random numbers could be encrypted as they are provided to the individual
players for private random numbers. The sole problem with this approach is that
you have to trust the trusted third party.
Collaborative random number generation is an effective solution. Instead of
involving a third party, each participant can create a random number, share it with
the others, and combine the results:
SharedRandom = (Random1 + Random2 + Random 3 +... + RandomN) mod Z;
// where each RandomX is a contribution from one participant and Z
// is the range of values desired as well as the range for each
contribution.
If everyone is honest, this system works well. The problem comes from the contributions not being simultaneous. If you have ever played Rock-Paper-Scissors
with a child, you’ve seen this problem—the child sees the value you’ve selected and
somehow their hand slips into the advantageous value. Our SecurePlay software
addresses this problem by creating a “logically simultaneous” action; we can use
irreversible transforms to get things started:
for each Player j {
Transformj = IrreversibleTransform(Randomj,padding);
// each player computes an irreversible transform of her
// random value with arbitrary padding appended to it.
}
Next, each player shares this information with the others and once everyone
confirms that they’ve received the transform, each reveals the random value to the
others, which can then be verified:
for each Player j {
AllegedRandomj = Randomj,padding;
// each player shares their random value with padding
if (Transformj == IrreversibleTransform(AllegedRandomj) {
use Randomj; // as described above
} else {
call Police; // or other action
}
}
Chapter 13 Cheating 101
127
This core algorithm, with slight variations, can be used to cover most of the
required random scenarios. For public random events, the process works exactly as
described. For random events without replacement, the range (Z) is reduced by one
as the random pool is depleted. Private random events can simply be handled by
having the player who is keeping the random event secret (Player j) not provide
her a value (AllegedRandomj) until after the game is over so that it can be verified.
The one case where there is a bit of a problem is when there is a private random
without replacement and a shared random pool. In order to generate a draw from
a random pool without replacement, the dealer needs to retain knowledge of what
has been dealt which allows her to share information with others. The dealer
cannot affect the random event outcome, but she can disclose the private random
information to other players—often a problem in games, as it can give advantage.
A variation on this system can be used with a server/dealer to generate large
numbers of random events quickly and if the dealer is somewhat trusted. Instead of
directly generating random events, the players can all contribute towards building
a collaborative random seed that is used with a deterministic random number generator to create a series of random events.
As seen with the UltimateBet.com case, trusting a central server at all can be a
potential threat. It may make sense to alter a game’s design so that the game is
naturally N-1 Secure. Poker, for example, could be changed slightly so that players’
private cards are drawn from a separate, private deck (like in Magic: The Gathering).
This would slightly shift the distribution of hands in the game and make it possible
for a player to actually be dealt a natural five-of-a-kind hand, but separate decks
would stop attacks from a compromised central server.
P LAYER C OLLUSION
Player collusion is one of the more troublesome problems for all forms of gaming.
Many, if not most, multi-player games are built on the premise of player competition. Collusion can occur “in band” using the game’s communication services or
signaled via game play or “out of band” using external communication systems, like
a telephone. Although it is easy to say that collusion is against the game’s rules (or
terms of service), in practice it is very difficult to eliminate collusive behavior. It is
even worse online where players cannot be physically monitored and they have easy
access to alternate communications channels to share information and coordinate
strategies.
Collusion needs to be considered very carefully in game design. In one of my alltime favorite game design failures, a Swedish lottery firm, Svenska Spel, designed a
128
Protecting Games: A Security Handbook for Game Developers and Publishers
game called Limbo where players guessed a number between 1 and 99,999. If you
selected the lowest number that no one else had chosen, you won a prize. If two or
more people chose the same number, they “bounced” and were disqualified.
Collusion was against the rules (as was making too many bets by a single person).
You can probably guess what happened: Players formed large syndicates to
systematically guess different numbers to increase their odds of winning and won
hundreds of thousands of kroner.
The contest was rather quickly and abruptly withdrawn13. Closure of the game
cost Svenska Spel one hundred million kroner (over $15 million) per year.
If you think this is funny, consider all of the games that forbid gold farming,
but allow inter-player item exchanges.
Many MMOs have a limited form of player vs. player (PvP) conflict, where you
can fight players on other teams, but not your own. Members of “Something
Awful” (an interesting collection of people who play a number of games, often in
ways not intended by their designers or other players) organized a pair of guilds
in World of Warcraft with the intent of using both guilds against other players and
groups. World of Warcraft has two “teams,” the Horde and the Alliance. Players are
allowed to attack members of the other team, but not their own side (Horde players
could attack Alliance players, but not other Horde players and vice versa). The
“Something Awful” guilds colluded together for their mutual benefit to take advantage of the game’s economy. The “Something Awful” Horde guild would escort
and aid their Alliance counterparts who entered Horde territory since they were
immune to attack by other Horde players. They also used the paired guilds to act as
a protection racket: While an ordinary Alliance player can do nothing to another
Alliance player, a friendly Horde player (or group) can attack Alliance players
mercilessly 14.
There are three main types of collusion:
External Affiliation—In this case the colluding team has an external relationship that, in and of itself, gives them an advantage. Poker players who have a
shared bank roll have an inherent advantage over the others at their table, even
if they do nothing active in the game but share their winnings after the game is
over. This type of collusion is essentially impossible to detect from the game’s
or game operator’s perspective.
Shared Knowledge—The next level of collusion is sharing knowledge between
the conspirators. In poker again, this is easy to appreciate. When two players
share the values of their hidden cards, they will have a substantial advantage in
their game play.
Chapter 13 Cheating 101
129
Coordinated Action—As seen in the Limbo lottery game and the World of
Warcraft examples, active collusion can be terribly destructive to a game. Many
of the tournament attacks, discussed in Chapter 20, are based on players
colluding instead of competing.
You can randomize the matchmaking process to make it less likely that teams
can exploit their relationship. In some face-to-face games, it is possible to restrict
communications to avoid covert signaling. In its highest-level tournaments, bridge
players use cards to indicate their bids so that vocal cues are impossible.
Completely stopping collusion is virtually impossible. Online poker sites claim
to look for team play by analyzing game play patterns. This may have some effect,
but it is unlikely to even slow down a serious collusion conspiracy.
For online games, at least, the best anti-collusion strategy may be to legalize collusion or otherwise alter game play so that collusion confers no significant advantage.
B USINESS M ODELS
AND
S ECURITY P ROBLEMS
Sometimes game security problems are a nuisance, and sometimes they are devastating. Game play and balance problems, no matter how bad they are, can almost
always be repaired. Players may gripe or even quit when their favorite characters are
“nerfed” (had their abilities reduced due to a software update/rules change) or
favorite tactics thwarted. These are serious customer service problems, but they
rarely are a threat to the business.
Some game security problems can ruin your business.
The more closely game play is tied to your business model, the more risk you
face. For a game that is sold as a product, the major threat is piracy. For a subscription game, the threats are unauthorized, unfunded subscriptions and excessive
play. At the other end of the spectrum, any form of cheating or abuse can undermine the success of a gambling or skill game operation.
Free-to-play games and other games with hybrid business/game play models,
like Second Life and Project Entropia, face some interesting challenges. Free-to-play
games make their money by selling in-game virtual assets to players in lieu of charging subscriptions. This approach is becoming the dominant business model used in
Asian games and is rapidly entering Western markets with games like Nexon’s
MapleStory and Three Rings’ Puzzle Pirates. Although many players do not pay to
play these games at all, some can spend hundreds of dollars on virtual items—
much more than they would spend in a subscription game. Also, because the cost
to play is zero, it is easier to reach a wider potential audience.
130
Protecting Games: A Security Handbook for Game Developers and Publishers
Unlike a subscription game, the game systems and real money payment systems are closely intertwined. Attacks on the game can damage the company’s business model directly. Recently, I was told about a licensed MMO that had a serious
problem in which malicious users could hack the game and simply give themselves
all of the virtual items they want by using a SQL injection attack to directly edit
their inventory—even getting items not yet available to other players because they
had not been enabled by the game operator.
Several online games and virtual worlds have embraced the notion of user-created content and trading as central to their business model including IMVU, Second
Life, and Entropia Universe (formerly Project Entropia). In these communities, the
players can use tools to create and trade virtual items that can be bought and sold
for real money (or, rather, virtual currency that can be converted into real money).
Entropia Universe has gone a step further by directly auctioning off a massive space
station for $100,00015 as well as five banking licenses for a total of $404,00016.
The fact that virtual currency can be converted into real money raises the stakes
for security. Second Life faced an attack that allowed a hacker to steal player’s money
just by “walking by” a modified QuickTime file (moving their game character/
avatar close enough to an object in the game that included the hacked QuickTime
file so that the game would cause the file to be loaded). For a while, Apple’s
QuickTime file format was vulnerable to an attack that gave hackers the ability to
insert and execute malicious code on the target computer, if the hacker could get
the altered file onto the computer. Because players in Second Life can create virtual
items, including items that incorporate QuickTime files, this attack could be
launched against players dynamically in the virtual world. The hack basically forced
the victim’s Second Life account to automatically transfer the game’s currency,
Linden Dollars, to the thief17.
MindArk’s Entropia Universe has the feature that many items that players find
useful are consumed or damaged over time and need to be repaired or replaced: the
essence of the company’s business model. Instead of a hack, players found an exploit that allowed them to guarantee that they would earn more money than it cost
them to play18. This exploit undermines the virtual world’s business model, much
as a slot machine that pays out more than it takes in is quite harmful to a casino’s
bottom line, if not its popularity.
What if your partners rebel? Activision and Infinity Ward faced a rebellion over
the security failures of the World War II first person shooter, Call of Duty 2. The
rebels were not ordinary players, but highly motivated gamers who hosted servers
for the game. They called a strike to stop operating their servers until the game’s
anti-cheat systems were fixed19. Even more costly, MGame in Korea’s licensee in
China, CDC Games, stopped paying royalties until the company fixed piracy and
other problems with Yulang, an MMO20, a dispute that was eventually settled.
Chapter 13 Cheating 101
131
R EFERENCES
1. B. Sinclair (2006), “EA Sells Tiger Woods Cheats on XBL,”
http://www.gamespot.com/xbox360/sports/tigerwoodspgatour07/news.html?sid=6159881
2. Virtual World News (2007), “Blogging the AGDC: Coming to America: Nexon’s Micro-Transaction
Revolution, “http://www.virtualworldsnews.com/2007/09/blogging-the—5.html
3. R. Miller (2008), “Fable 2 Pub Games Exploit Will Make You Very, Very Rich,”
http://www.joystiq.com/2008/08/15/fable-2-pub-games-exploit-will-make-you-very-very-rich/
4. S. Schuster (2008), “AoC Demonologist Exploit Fixed in Recent Patch,”
http://www.massively.com/2008/05/26/aoc-demonologist-exploit-fixed-in-recent-patch/
5. M. Pritchard (2000), “How to Hurt the Hackers: The Scoop on Internet Cheating and How You Can
Combat It,” http://www.gamasutra.com/features/20000724/pritchard_01.htm
6. P. Klepek (2005), “Battlefield Server Delisting—EA and DICE Respond to Recent Server Modding by
Users,” http://www.1up.com/do/newsStory?cId=3141484
7. R, Naraine (2006), “Rootkit Infiltrates Online Poker Software,”
http://www.eweek.com/c/a/Security/Rootkit-Infiltrates-Online-Poker-Software/
8. R, Naraine (2006), “VM Rootkits: The Next Big Threat?,”
http://www.eweek.com/c/a/Security/VM-Rootkits-The-Next-Big-Threat/
9. J. McCarthy (2008), “Online Casino Admits Insiders Changed Software to Cheat,”
http://www.onlinecasinoadvisory.com/casino-news/online/online-casino-admits-cheaters-existed-1728.htm
10. A. Xu (2006), “Three Men Tried for Selling Online Game Weapons,” via
http://www.playnoevil.com/serendipity/index.php?/archives/763-Insider-Virtual-Asset-Crime-inShandas-Legend-of-Mir-2-IMPORTANT.html (original link expired)
11. Wikipedia (2008), “Tor (Anonymity Network),”
http://en.wikipedia.org/wiki/Tor_(anonymity_network)
12. S. Bourie (2008), “The World’s Greatest Slot Cheat?,”
http://www.americancasinoguide.com/Tips/slot-cheat.shtml
13. J. Savage (2007), “Game Stopped After Cheat Allegations,”
http://www.thelocal.se/6788/20070324/
14. Joe Blancato (2006), “Diseased Cur,”
http://www.escapistmagazine.com/articles/view/issues/issue_30/188-Diseased-Cur
15. BBC (2005), “Gamer Buys Virtual Space Station,”
http://news.bbc.co.uk/2/hi/technology/4374610.stm
16. MindArk (2007), “Virtual Banking Licenses Sold!,”
http://www.entropiauniverse.com/en/rich/6357.html
17. Internet Security For Your Macintosh blog (2007), “Second Life Hack Steals Real Life Money,”
http://www.isfym.com/site/blog/Entries/2007/12/6_Second_Life_hack_steals_real_life_money.html
18. Entropia Universe Examined blog (2007), “The Final Entropia Exploit,”
http://blogtropia.blogspot.com/2007/03/final-entropia-exploit.html
19. IWNation (2005), “The Time Has Come for Action, We Will Be Ignored No Longer,”
http://iwnation.com/forums/?showtopic=17450
20. L. Alexander (2007), “CDC Sues MGame for Security, Tech Support Failures,”
http://www.worldsinmotion.biz/2007/10/cdc_sues_mgame_for_security_te.php
21. M. Greene (2008), “MGame, CDC Settle Yulgang Dispute,”
http://kotaku.com/365550/mgame-cdc-settle-yulgang-dispute
14
App Attacks: State,
Data, Asset, and Code
Vulnerabilities and
Countermeasures
o abusively paraphrase Sutton’s Law1, hackers attack the local application because “that’s where the game is.” And, it is convenient. And developers leave
the application a vulnerable target. Both hackers and developers are lazy.
T
Author’s Warning: I name and discuss several programs used for cheating games
during this chapter and elsewhere in the book. I am in no way recommending that
people use these tools. Even if the tools themselves are safe, game cheating and
hacking tools are often provided with free “extra” features, like key-loggers
and other additions that may be used to hack your computer, steal your passwords, and otherwise ruin your day. Even compiling these tools from source code
may be risky, because you aren’t actually going to review all the code, are you? And,
even if you did, do you really think you could find serious, malicious code?
There are many ways to attack a game via the local application. Hackers can
modify the game’s state, its data, memory, and assets, or even the application itself.
There are countermeasures for many of these attacks. However, many of these
countermeasures can themselves be circumvented because they, too, are applications that run on the player’s computer. Local hacking is one of the reasons that
developers have moved towards server-based game designs or should consider actionbased networking, as discussed in Chapter 13.
M EMORY E DITORS , R ADAR ,
AND
ESP
The easiest attack target is the computer’s memory. System memory needs to be
used by all games and can be easily analyzed, so attackers don’t need to do any new
work to attack different games. In the hand of even a “YouTube-educated” game
cheater, free debuggers and standard utilities can easily read out the computer’s active memory and rapidly and empirically determine where key game data is stored.
132
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
133
This allows the cheater to directly change the computer’s memory contents. At the
time of my writing this paragraph, there are 60 YouTube video demonstrations 2 of
hacks on the simple, quite fun Flash-based role-playing game, Sonny 3. These are
attacks on a free game!
All computer applications write data into RAM memory while they are running.
For an ordinary user, the operating system controls access to the RAM memory so
that the applications don’t interfere with each other. Applications themselves create a structured “memory map” so that the application can easily and quickly find
its own data. At their most basic level, memory editors are tools that can look at the
entire RAM of a computer and manually change or lock any memory value.
Smarter memory editors can learn the memory maps for different applications and
automatically remember where certain data is located. The most generic attack on
a game using a memory editor is pretty simple:
1. Start the game.
2. Launch the memory editor.
3. Look for the value in memory.
4. Change the value using the memory editor.
5. See if the value has been changed in the game.
6. Cheat and be merry (shame on you!).
In practice, this may be difficult, as a given number or string sequence may
occur in multiple places in memory. Also, games may try to hide values by changing how they are stored (via encryption or obfuscation). The more robust way to
attack a game takes only slightly more effort:
1. Start the game.
2. Launch the memory editor.
3. Tell the memory editor to “Save State” (save a complete image of the
computer’s memory or the area allocated to the game).
4. Do something in the game that changes the value of interest.
5. Tell the memory editor to look for differences in state (compared to the
previously saved state).
6. Try editing these values.
7. See if the value has been changed in the game.
8. Repeat until satisfied.
9. Cheat and be merry (shame on you!).
134
Protecting Games: A Security Handbook for Game Developers and Publishers
The power of this technique is that it will work for pretty much any game, at
least on a PC or hacked console.
Instead of modifying a game’s state, in many multi-player games, simply being
able to read state information gives the hacker a substantial advantage. Radar
attacks and ESP (extrasensory perception) both, at their core, prey on a weakness
found in many multi-player games—the need to pre-load remote data. Most
modern games are played as real-time systems and the overwhelming goal of game
developers is to provide a smooth experience for players.
Because of the drive to provide a “smooth” game play experience, the player’s
client application knows information about the game’s state that the player shouldn’t
know. Several years ago, Dark Age of Camelot players could read location and useful map information about other players by analyzing the MMO’s network
protocol (clearly, a state-based system)4. Apparently, these attacks were stopped
when Dark Age of Camelot’s developer, Mythic Entertainment (now EA Mythic),
began encrypting the network packets. Conceptually, an attacker should have been
able to attack the game “above” the network layer (after the packets had been decrypted at the client) and extract the same information, but I have not seen any
indications that this has occurred.
These attacks can affect other genres including first person shooters such as
SWAT 4 5 and, more recently, Team Fortress 2 6. Radar attacks and wallhacks, to be
discussed shortly, can look similar and have identical game-cheating consequences,
but their implementation is different. Radar attacks are dependent on reading out
game state information, whereas wallhacks attack the display subsystem. ESP attacks directly extract the game state and provide their own display.
Because Adobe’s Flash provides tools that make using state-based synchronization very easy, a number of developers of basic multi-player Flash games,
including card games, simply replicate the game’s entire state at each player’s location.
Once hackers extract this information, they have a huge advantage (as you can
imagine if you were playing poker or bridge and could see all of your opponent’s
cards).
D ATA O BFUSCATORS
The best way to prevent a game client from disclosing data is to not provide it in the
first place. Hackers can’t extract information that they can’t access. As is discussed
in Chapter 17, game design itself can be an opportunity for game designers to help
reduce security risks.
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
135
If it is necessary for the local game client to store a hidden game state, the only
real choice is data obfuscation. Data obfuscation makes attempts to hide the format
and location of important game data from memory editors. As discussed previously, memory editors don’t care where game data is stored in memory. Rather,
memory editors look for known values and changes in values. Sometimes, developers use encryption techniques to hide the data. However, because the key has to
be available on the platform as well as the data, the security, such as it is, comes
from how well any keys are hidden and how difficult it is for the hacker to reverseengineer the encryption system’s design. So, instead of using the term “encryption,”
which implies powerful security for many readers, it is more appropriate to refer to
such systems as “data obfuscators.”
“Encryption” is not the only option. According to the documentation for the
Poke memory editor, Blizzard’s Diablo II used a system where they stored critical
game data in multiple locations and, if only one was changed, the Diablo II storage
system used the smaller one and changed both values to the same, smaller value7.
Once this scheme was identified, it was fairly trivial for hackers to defeat.
A slightly more complicated system involves using “differential storage”—
where game data is split into two elements via addition or the “exclusive or” function so that individual memory locations cannot be usefully read by a memory
editor:
/// GD – game data to be stored
// compute a random value, Random1
L1 = GD xor Random1;
// compute the sum of the game data and the random info
L2 = Random1;// store the random info
GD = L1 xor L2; // retrieve the game data
This technique is simple and fast. If a fair amount of data is being updated
regularly, it will be difficult for a hacker to easily isolate correct pairs of storage registers. Eventually, a patient hacker may be able to change memory locations one at
a time and steadily work out the game’s differential memory map.
One can add an anti-tamper element to this system by incorporating a checksum with the game data:
/// GD – game data to be stored
// GDCS - checksum on game data
// compute a random value, Random1
136
Protecting Games: A Security Handbook for Game Developers and Publishers
L1 = (GD,GDCS) xor Random1;
// compute the sum of the game data and the random info
L2 = Random1;// store the random info
(GD,GDCS) = L1 xor L2; // retrieve the game data
if [Verify (GD,GDCS) == false] then {do countermeasures;} else {play;}
The challenge for any data obfuscator is that it must work quite fast and, essentially, force the hacker to reverse-engineer the design of the game’s obfuscation
code to defeat it. Also, it is essential that the data obfuscator is easy to use. For
languages such as C++, this would typically mean creating a custom data type or
template and for many other languages the obfuscated data would be stored in a
class or struct data type (when I created a data obfuscator for Flash, I created
a set of classes that mirrored the language’s basic data types). It is important that the
obfuscator not be called as a dynamic library at run-time, but integrated into
the code during compilation. If the obfuscator is called as an external library, it can
be “plugged out” so that it is bypassed entirely, as discussed in the next section.
Also, beware of optimizing compilers, as they may optimize your data and code
obfuscation techniques right out of your application. Ideally, the data obfuscator
could be regularly updated by simply recompiling the game with a new obfuscator
version and no modifications would need to be made to any of the remaining game
code. The following are a number of data-protection techniques:
Encrypt—Encrypting data with a static key (hardwired or game instance
based) simply makes the static key of the encryption function the primary
target for attack. Cryptographic modes are important (key-additive, cipherblock
chaining, cipher feedback, and so on), because some may allow the hacker to
change the encrypted data in a useful way without ever breaking the cryptography. It is important to recognize that the technique does not have to be
cryptographically strong; it just has to effectively obscure the data from direct
extraction by a memory editor. Attackers must find the function method or
algorithm and key or blindly modify data in the platform’s memory.
Data Hash—Even a simple, unkeyed data hash, if implemented properly, can
be effective. A keyed hash requires the attacker to isolate the key, the code for
the hash function, and its algorithm.
Indirect Data Store—Instead of storing data in a memory location, store it
indirectly via an object pointer. This can be used against static memory map
tools by forcing an attacker to dynamically read-out memory.
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
137
Split Data Store—Split the data via some symmetric function (mod 2 arithmetic, addition) so that instead of storing a value (V), a random value (R) and
a split value (R+V) are stored. An attacker must find the correct sets of memory locations in order to effectively modify the game data.
Differential Data/Data Chaining—Instead of storing data directly, store it as
an offset split of another data object. The data chains cannot be too long or
complicated or a single data change may force many other data objects to be
changed and have an adverse performance impact.
Honeytrap Memory—A honeytrap is stored data that has a hard-coded,
known value that is periodically checked. If the honeytrap data has been
changed, the application knows it has been hacked.
Soft Failures—Detected hacks do not immediately get punished or get punished randomly.
Combined Techniques—These techniques can be combined to substantially
increase the difficulty for the hackers.
It is also important to note that these techniques do not actually allow you to
prevent modification of game data, but make such modifications detectable by
your game code. Ideally, your selected data obfuscation strategy will detect any
unauthorized data modifications so that they will be not be accepted by the game.
C ODE H ACKS
AND
DLL I NJECTION
In a computer, code is data. Just as all of the data in a game is available to a memory editor, the game’s code is also vulnerable. The most vulnerable portion of a
game’s code is its internal configuration data. These data constants are the embodiment of the game’s rules and can have a substantial impact on game play. Aaron
Portnoy and Ali Rizvi-Santiago of TippingPoint DVLabs attacked the configuration
data for Disney’s Pirates of the Caribbean MMO game client by altering the game’s
“jump height” and “ship speed” constants. These changes allowed their characters
to jump ridiculous heights and their pirate ships to move incredibly fast 8. In this
case, the security analysts were not attacking raw binary data, but the byte-code
generated by the Python scripting language. The attack was successful because the
game uses state-based networking so that the actual jump or movement data was
exchanged and blindly accepted by the remote players’ computers. This type of
attack can be thwarted. CCP Games’ EVE Online also uses Python for its client, but,
because game state is totally controlled on the game’s servers, a recent hack that
exposed the game client code caused no problem for the game’s security 9.
138
Protecting Games: A Security Handbook for Game Developers and Publishers
More serious code attacks typically target external libraries (DLLs for Windows
computers, and SOs for Linux). A hacker can insert a “shim” library with the same
name as the actual library and redirect and edit data going between the library and
the main application. Eyebeam Openlab’s tool OGLE (OpenGLExtractor) demonstrates the basic technique used for graphics engine hacks and DLL proxies to attack
games. OGLE was not developed with malicious intent, but rather to support the
extraction of 3D images for other uses. The tool uses DLL proxy techniques to
extract OpenGL graphics information and derive a 3D scene so that it can be sent
to a 3D image editor or 3D printer10.
A number of game hacks use similar techniques to cheat in games. Game
graphics engines do not pose a threat. However, developers sometimes rely on the
graphics engine to enforce game logic and this can cause problems. For example,
game engines sometimes use the graphics engine to determine whether a player or
item is visible to another player. The problem comes from letting the graphics
engine “see” a player or item that would otherwise be invisible—a tool similar to
OGLE could then be used to highlight the character, make the intervening walls
invisible, and so on, in order to circumvent the game designer’s intent to hide the
asset. The “best” solution would be that a local copy of a game doesn’t know anything it doesn’t need to. If an “invisible” asset needs to be stored locally, it should
be protected as well as possible.
To prevent easy exploitation of this information, the data should not leave the
game engine, but the scene should be managed by an intermediary program that
determines visibility and other attributes based on game rules and level design (that
is, making a wall invisible for rendering does not expose things behind it). This is
similar to a dynamic loader but instead of simply focusing on improving the graphics engine’s performance, the “safe loader” makes sure that anything that should
not be visible isn’t loaded to the graphics engine. It may even load alternate assets
based on game state and rules for the assets that are loaded. The safe loader should
have the side benefit of reducing the number of assets that graphics engine needs to
render—there is no need to waste cycles on rendering invisible items. Also, the safe
loader could allow for more intelligent camera systems (for example, walls graphics could be replaced by suitable “graphic stubs” if they block the main game action
from the camera’s current position—just as found in TV or film sets where the
director removes walls and props from sets when they interfere with observing a
scene as the director wishes).
It is even possible to locate hidden assets and information at a lower level.
Hackers can find the underlying tables that map where game functions are located
and redirect the function calls to alternative functions. This does require a fair
amount of sophistication; however, the same tools that allow assembly language
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
139
debugging and software reverse-engineering (disassemblers and decompilers,
among others) make implementing these attacks easier as software engineering
tools get better (and more widely accessible and sometimes even free). Some anticheating tools will detect that software is running in debug mode as a way of
attempting to fight these hacks. However, just as with memory editors, the debugging applications can also run independently of the application.
These attacks are very specific to an application and its architecture. Network
stacks, data stores, and other code that is tempting to store in a shared library may
become a target by allowing the hacker to break the application into convenient
pieces, just as the developer did.
B LIND S ECURITY F UNCTIONS , C ODE O BFUSCATORS ,
S OFTWARE D ESIGN
AND
A NTI -T AMPER
Protecting game code, just like protecting game data, is a very hard problem. After
all, the code has to be present for the game to run. As discussed in Chapter 5, some
games attempt to protect their code by not actually installing it with the game, but
rather accessing it from a DVD or over the network when the application is executed.
At this point, the code is loaded into the computer’s memory and it is vulnerable to
being read, modified, or stored, just as the game’s data is.
Some security techniques, such as data obfuscation, depend on the attacker not
being able to (easily) reverse-engineer the application’s design. Code obfuscators
work by making an application more difficult to reverse-engineer. Because the application does need to operate, what these tools do is introduce complexity into the
executable program that makes it very difficult for standard disassemblers, decompilers, or parsers to convert into a higher-level language that is easy to analyze (this
technique is also used for dynamic language’s byte code and simple scripting languages like JavaScript). The key advantage of obfuscators is that they can be highly
automated. However, obfuscators can’t introduce too much complexity or else they
will cause an unacceptable deterioration in performance. Games often have portions of their code that are very performance sensitive. Therefore, it is critical that
obfuscators can be tuned so that they do not affect performance in key code areas.
Blind security functions and anti-tamper software do affect the underlying
operation of the game’s software. At their core, these tools introduce checks embedded deeply within the application to ensure that its data is correct and that its
code is operating properly. Static data may be checked by loading the suspect static
data in otherwise unrelated functions and comparing it with a pre-stored hash
function or other validation:
140
Protecting Games: A Security Handbook for Game Developers and Publishers
/// pre-store hash of configuration data – CDH
Load(ConfigurationData);
if (CDH != Hash(ConfigurationData)) then {tamper processing} else
{continue};
It is also possible to check that functions are working correctly. Developers can
pre-store known results:
// pre-store input, result pair for key function
if ( result != KeyFunction(input)) then {tamper processing} else
{continue};
This approach needs to be done cautiously, as hackers can replace the verification function with a series of NOOP (no operation) assembly language instructions
or their equivalent if they can locate the verification functions. This usually means
that these techniques work better if they are called in numerous places in the code.
If a function is called only once or in only one way, it is easier for a hacker to target
and remove or bypass.
It is tempting for developers to wrap security and other functions up into a
single line of code. This is, after all, standard coding practice. Unfortunately, this
entirely valid coding technique makes reverse-engineering much easier. For example,
it is very common to consolidate digital signature verification into a single function
call:
if (verify(data) == true) then {do good stuff} else {tamper processing};
A lazy hacker will simply alter the verify function to always return true, no
matter how corrupt the data is. To detect such attacks, the developer needs to
validate that the function is working properly:
// first test the verify function by verifying corrupted data
if (verify(data+ junk) == true) then {tamper processing};
else if (verify(data) == true) then {do good stuff} else {tamper
processing};
These anti-tamper techniques can be quite powerful, but they are a lot of work
for a developer to implement unless the developer has some powerful scripting or
macro language capability to automate the integration of these features into the
application. In general, these anti-tamper tools are going to be more effective if they
operate on source code rather than on object code or an existing executable application that needs protection.
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
S AVE G AME A TTACKS , W ALLHACKS ,
AND
141
B OBBLEHEADS
Memory editor attacks are not well-suited for console games, as they usually are
sealed systems that do not allow access to their memory state and do not include or
allow the installation of memory editors or other utilities (at least until they are
hacked).
For console games, hackers can often attack and modify the save game file.
Most consoles use Flash memory or other rewritable storage to store saved games.
The save game file can be attacked and modified, as discussed in Chapter 7. Hackers
modified the save game information to get infinite ammunition and missiles and
several other benefits in Metroid Prime Hunter, a first person shooter on Nintendo’s
DS handheld game console11. This “trainer” configuration change gave the cheater
a huge advantage when playing via the handheld’s WiFi network—an unfair
modification that seriously undermined the fun of playing the multi-player game12.
Once again, this attack is largely due to the use of state-based networking to
establish player configuration information.
SAVE SHARING
Console games have typically used two types of memory: a DVD or other static media
to store the game itself and a much smaller Flash or EEPROM memory to store saved
games. Players are using both of these methods to transfer their personal player
profiles and save game information to other consoles and post results onto services
like Xbox Live.
However, some players have exploited weaknesses in the existing save game and
player mobility system (where players can use their account profile on multiple game
consoles) to cheat13. The easiest way to understand this is to think of the Save As
command in Word or other Office applications. Basically, some player excels at a
game. They make their saved game available to other players. These players launch
the game from its saved state and then use the “Save As” command (or, as it is actually implemented on a console, assign the saved game to another game save slot)
to transfer the game from its original owner to themselves.
So far, the main exploits of these shared saves have been to gain unearned
achievements on Xbox Live and, perhaps, to unlock game content and share customized data14. Without better control at the individual console or a more effective
central service, there is potential to use shared saves for more serious mischief.
142
Protecting Games: A Security Handbook for Game Developers and Publishers
It is possible to attack a game’s state without targeting the game’s state directly
via a memory editor or similar tool. Many games use the graphics display engine to
determine where players are and if they can be targeted. The simplest attack on the
graphics engine is to alter the visibility (or, more specifically, the transparency) of
the game’s scenery and walls—called a wallhack15. By making walls transparent,
other players or creatures that would ordinarily be hidden are revealed, making
them much easier targets. The same effect can be achieved by altering attributes of
the graphics in the game’s map file.
The “ultimate” level of graphics engine attack is to replace entire art assets.
Thus, instead of the ordinary player or creature that the game should use, a hacker
replaces these art and animation assets with ones of her choosing that make the
player more visible or an easier target—such as turning regular game characters
into big Bobbleheads.
GRAPHICS ENGINES VERSUS GAME ENGINES
Conceptually, the display system for a game should be distinct from the game’s
state. The game logic should determine what is visible, who can be shot, and how
one can move. In practice, many games merge the graphics engine and game engine
into one entity. Although this may have some performance benefits, it opens up the
aforementioned wallhacks and other exploits like “holes,” where players can get
behind or between graphical elements by abuse of the graphics engine.
A pure “Game Play” engine should be much less vulnerable to these problems, as
it is handling less data: Level models are simpler, player models are more abstract,
and so on. Also, a game play engine understands what a “wall” is in a formal way,
versus simply a polygonal mesh to be rendered.
By splitting the game play engine from the game presentation/graphics engine,
game developers might also have an easier time moving between computer or console platforms. Also, by decoupling game play from game presentation, developers
should be able to improve testing and scheduling.
S ECURE L OADER
AND
B LIND A UTHENTICATION
Client-side problems are hard. As noted in several places within this chapter, changing the networking model to an action-based network architecture should help.
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
143
It is possible for the client application to authenticate map, asset, and save information, however. Anything that is loaded can be digitally signed, use a keyed hash
function, or a cryptographic checksum. All of the solutions are equivalent from a
security perspective. If hackers can determine the algorithm and find the associated
static or semi-static key used with the algorithm, they can either replace the key
with their own (the way to attack the digital signature) or use the key (which will
work for the keyed hash function or cryptographic checksum).
A very common design mistake is to use a regular hash function, such as MD5.
Hackers will test common hash functions, like MD4, MD5, and the various SHA
standards, over any loaded data to see if the hash values can be found within the application. MD5 is often used first, because it is probably the most widely available
hash function. This can even work on consoles as seen with a partial, at least, hack
of Gears of War16.
More sophisticated hackers may alter the asset after its initial load by using a
memory editor to change the pointer for the asset file to a preferred, alternate asset
file. Thus, it is not usually sufficient to validate an asset only when it is initially
loaded, but it should be checked periodically, preferably every time it is used
(obviously, this has the potential to have a sizeable performance impact).
The process for secure loading is very closely related to secure bootstrapping
(see Chapter 7). A good secure loader design will also prevent rolling back to a
previous version of software or assets, a problem that has plagued Sony’s PSP 17.
From a performance perspective, using a regular cryptographic checksum,
sometimes called a Message Authentication Code (MAC), is probably best, as these
functions are faster than hash functions.
This system can be used to validate game saves, art assets, maps and levels, and
even game code. First, it is necessary to create the authentication word (AW):
AW(assetx) = securityfunction(assetx,secretkey);
store AW(assetx);
// store the authentication word (and actual asset) somewhere
Then, to verify the asset, either when it is initially loaded or some other time,
the authentication word is retrieved and it is compared with an alleged authentication word for the asset of interest:
AW(allegedassetx) = securityfunction(allegedassetx,secretkey); //or
AW(allegedassetx) = securityfunction(allegedassetx,publickey);
// for the case where digital signatures are used
if (AW(allegedassetx) != AW(assetx))
then { do tamperfunction;} else {process normally};
144
Protecting Games: A Security Handbook for Game Developers and Publishers
There is another use for this mathematical technique—blind authentication. It
can be desirable to attempt to authenticate data or code at a remote game player’s
location. In this case, keyed hash functions or cryptographic checksums are effective and digital signatures will not work.
The challenging party generates a secret key and sends it to the other participant. The challenging party also sends an identifier associated with the code or
data that is to be verified and must have a copy of the data:
ChallengeMessage = randomkey,assetidentifier;
// challenger generates random key and sends asset
// identifier to challenged party
Both parties compute the authentication word for the specified asset:
AW(asset(assetidentifier)) =
securityfunction(asset(assetidentifier),randomkey);
The challenged party then sends the authentication word back to the challenger, who then compares it with her locally computed authentication word:
if (challengerAW != challengedAW)
then {take tamper measures} else {proceed normally};
This process is not perfect, but it does at least ensure that the challenged party
has a copy of the valid asset. For a constrained platform, like a handheld console,
this may be sufficient. It is also very efficient for authenticating saved game data for
consoles, because most have some small amount of protected memory that can
hold a secret key that can be used to check the integrity of a stored game save file.
Chapter 14 App Attacks: State, Data, Asset, and Code Vulnerabilities and Countermeasures
145
R EFERENCES
1. Wikipedia (2008), “Sutton’s Law,” http://en.wikipedia.org/wiki/Sutton%27s_law
2. YouTube (2008), “YouTube Search: Sonny Hack,”
http://www.youtube.com/results?search_query=sonny+hack&search_type=
3. Armor Games (2008), “Sonny,” http://armorgames.com/play/505/sonny
4. RadarFTW (2005), “The Truth About Radar,”
http://daoc.catacombs.com/forum.cfm?ThreadKey=511&DefMessage=1031585&forum=DAOCMainForum
5. sarzamineiran (2008), “SWAT 4 Aimbot/Wallhack/Radar Cheat,”
http://www.youtube.com/watch?v=tsO_2KR-vbk
6. Smik3r (2008), “TF2 Hacks Aimbot NoSpread ArtificialAiming.net Scout Ownage,”
http://www.youtube.com/watch?v=LWVqtzK0zf4
7. M. Anka (2007), “POKE,” http://codefromthe70s.org/poke.asp
8. A. Portnoy, A. Rizvi-Santiago (2008), “Reverse-Engineering Dynamic Languages,”
http://dvlabs.tippingpoint.com/pub/aportnoy/RECON2008-PortnoySantiago.pdf
9. M. Martin (2008), “CCP Plays Down EVE Online Source Code Leak,”
http://www.gamesindustry.biz/articles/ccp-plays-down-eve-online-source-code-leak
10. Eyebeam R&D (2006), “OGLE: The OpenGLExtractor,” http://ogle.eyebeamresearch.org/
11. gbatemp.net (2006), “New Trainer: Metroid Prime Hunters (+4),”
http://gbatemp.net/index.php?s=23f5870b73924be42c7c7a26a1de1a3f&showtopic=34050
12. 4 color rebellion/Mitch (2006), “Warning: Incoming MPH Cheating,”
http://www.4colorrebellion.com/archives/2006/06/30/warning-incoming-mph-cheating/
13. M. Nelson (2007), “Xbox LIVE Account Sharing and Gamesave Tampering (Don’t Do It),”
http://majornelson.com/archive/2007/10/30/Xbox-LIVE-account-sharing-and-Gamesave-tamperingdont-do-it.aspx
14. B. Kuchera (2007), “Microsoft Tries to Stamp Out Cheating, Hurts Enthusiast Sports Gamers Instead,”
http://arstechnica.com/journals/thumbs.ars/2007/05/16/microsoft-tries-to-stamp-out-cheating-hurtsenthusiast-sports-gamers-instead
15. Wikipedia (2008), “Wallhacking,” http://en.wikipedia.org/wiki/Wallhack
16. mr hoodie lol (2007), “Gears of War Hacked,”
http://forums.maxconsole.net/showthread.php?t=45086
17. J. Ransom-Wiley (2007), “PSP Downgrader: 3.03 to 1.50 in 8 Simple Steps,”
http://www.joystiq.com/2007/01/30/psp-downgrader-3-03-to-1-50-in-8-simple-steps/
15
Bots and Player Aids
he next stage of cheating beyond wallhacks, ESP, and radar is to use this
knowledge to augment player performance. After all, once you are playing a
game on a computer, it is a fairly small step to program the computer to play
the game on your behalf.
T
Game players have always used tools to help them play better, whether the
tools are legal or not. Bridge has its hand-ranking systems; blackjack has its basic
strategy1; and chess and go have endless volumes of analysis. Interesting borderline
cases exist, such as card counting where players use their memory to improve their
performance in a game—a tactic that some consider legal and other people view as
cheating.
I S I T “H ELP ”
OR
I S I T C HEATING ?
When do strategy and analytic aids cross over into cheating? When an individual
person is no longer setting the strategy or making a decision, but the game play is
driven by a machine or a team of people colluding together. The problem with
fighting player aids is that they are separate from the game and are therefore essentially impossible to detect. There are tons of solvers for the very popular numeric
puzzle game, Sudoku; the only way to even consider detecting a solver is to capture
the precise timing and order that a player enters numbers into the game state
array—both of which can be faked as well. Online poker faces a similar problem.
Programmers are building increasingly sophisticated programs that can play a reasonably strong game of poker (in fact, the Polaris Pokerbot won the 2008 Man vs.
Machine Poker Championship2). These automated play tools don’t actually need to
perform optimally to succeed; they simply need to outperform the majority of players in the majority of hands for the majority of money—poker farming anyone?
146
Chapter 15 Bots and Player Aids
147
Automated poker play strikes at the very heart of the online poker industry. If
players believe that they are not playing with other people (and they are losing), the
industry could be in real trouble. There have been several largely unsuccessful
experiments with using the skill game business model with first person shooters.
These types of games are particularly vulnerable to botting and if one of these services ever takes off, it would be interesting to see how long or successfully they
would be able to keep botters at bay.
Even traditional chess is not immune. Chess computers have been around for
years. However, in a recent case in India, a chess player was caught getting advice
from a partner with a chess computer and a Bluetooth connection3, resulting in
suggestions that future tournaments should be played in Faraday cages.
Some games directly support tools for automating portions of game play, but
as a feature, not as a cheat. These macros range from simple playback systems that
repeat sequences of key strokes to highly elaborate scripting languages. Game developers become concerned when these tools are too successful at game play either
when they undermine competition between players or allow totally automated
game play (for example, the Glider4 tool automates play for World of Warcraft and
is currently the subject of a major lawsuit about the legality of such third-party
tools5). Automated game play can be disruptive to other players or can be used to
over-efficiently exploit the game’s economy (see Chapter 22 on gold farming). In
many cases, the only real violation of the game rules is the fact of these game automation tools’ existence. They are not cheating or exploiting actual game systems,
but simply using a computer to play the game instead of a person.
In practice, player aids and macros are very difficult to detect because they are
not manipulating the game, only automating game play. Either the game operator
has to try to detect the player aid application (which doesn’t need to even be on the
same computer) or the macro program or else they need to detect automated
play—unfortunately, this is often little different than the behavior of a highly skilled
player.
Some programs do more than play the game well by the rules. They take the
next step and cheat. Welcome to the world of aimbots and other bots. A simple bot
doesn’t really need to cheat. It can capture display information and use the same
data to determine its strategy and directly drive the mouse and keyboard or controller. However, computer actions and reactions are far faster than a player’s and
therefore the bot can perform much better (even without elaborate artificial intelligence programming).
More sophisticated bots combine wallhack, radar, ESP, and memory editors
with some AI programming and automated controls to play much better than a
human. Some even replace the game client entirely. Aimbots can find targets and
148
Protecting Games: A Security Handbook for Game Developers and Publishers
DEMONSTRATING A HACK AND THE YOUTUBE THREAT
I am lazy. When someone contacts me about their game and wants to discuss security, the first thing I do is check out YouTube. Often, I’ll find wonderful demonstrations
and tutorials of hacks for the game. Almost as often, I’ll see examples of what are
pretty clearly “fake hacks” that are used to lure players to disclose their account
information and passwords. These fake hacks use memory editors and other tools,
like Photoshop, to con players by altering the game display on one computer. The
clearest way to demonstrate a cheat properly is to show the game display of more
than one player at the same time, ideally from two different monitors. The reason for
the separate displays is to show that other players are actually seeing the results of
the cheat and that it is really having an impact on game play. If this can’t be done, it
is actually better to show the perspective of the “cheating victim” rather than the
cheater—especially for attacks that involve interaction with other players or the game
environment like dupe attacks and speed hacks. This is not true for state disclosure
hacks like wallhacks, ESP, aimbots, and radar.
shoot better and faster than any player6. Call of Duty added an interesting feature
called “kill cam” that showed the final five seconds of a victim’s life from the
perspective of the killer after the victim was killed. Because tools like aimbots and
radar cause players to take rather unnatural actions (such as tracking targets
through walls), the kill cam was seen as an interesting anti-cheating tool—allowing
victims to detect their cheating killers from beyond the grave (or after the fight)7.
Automated play, combined with full state information and the ability to
simply edit the game’s state, can make for a devastating attack on a game. Real-time
games, like first person shooters, MMOs, and real-time strategy games, are all
particularly vulnerable to these attacks. After all, any game that favors speed over
thought is always going to favor a computer player.
Bots and game cheat tools are not just for fun; they are a serious business.
Glider, the rather well-known automation tool for World of Warcraft, has an Elite
version that costs $5 per month or $60 for a lifetime subscription8. There are several bots for NCsoft’s Lineage 2 that are sold on a subscription basis, including
L2Walker and L2Superman that has a $7.50 per month subscription9 with upgrades
that add features and keep the tool ahead of the game’s cheat detection system (for
comparison, it costs $15 per month for a Lineage 2 subscription).
Chapter 15 Bots and Player Aids
149
Finally, it should be noted that serious game cheats have moved their hack
tools off of the computer. In Korea, commercial game hack tools use a smart USB
token that includes its own processor. This computer looks like a keyboard, mouse,
and video card (all of which can use USB interfaces), but processes the screen and
game data totally passively (at least from the PC’s perspective) to implement game
cheats. Some of these devices cost as much as $20010. This type of bot could actually be used very effectively against console games as well because it relies purely on
information from the game’s display and inputs from the game’s peripherals. Just
as cybercrime has moved towards advanced infrastructures and custom products
that put conventional IT security companies at a huge disadvantage, criminals,
gold farmers, and other serious exploiters targeting games are already developing
their own tools and methodologies to attack games more profitably. Advances in
virtualization from Xen and VMware are going to make creating very advanced and
virtually undetectable client-cheating tools easy.
CAPTCHA S : D ISTINGUISHING P LAYERS
FROM
P ROGRAMS
CAPTCHA (Completely Automated Turing Test To Tell Computers and Humans
Apart) is a widely used computer security technique that attempts to distinguish
people from computers11. CAPTCHAs are mostly used for login and registration
authentication, but some game developers have moved to using CAPTCHAs to
stop bots. CAPTCHAs work by providing words, math equations, or images that
are difficult for a computer to solve, but easy for a person to distinguish. The problem has grown as hackers have gotten better, and the CAPTCHAs have become
more difficult for even a human to use. On a troubling personal note, a regular
reader of my blog, PlayNoEvil (http://www.playnoevil.com/), was unable to submit
comments for a while because my CAPTCHA system relied on colors. However, he
has impaired vision. (Fortunately, I could solve this problem by changing the
system’s settings.) I am having more and more difficulty getting through some of
these systems myself.
Personally, I’ve found it more than a bit ironic that interactive entertainment
systems like games are even considering using CAPTCHAs, as this seems to be the
ultimate admission of a design flaw.
Once you are in the situation where security is a serious problem (as opposed
to my blog), CAPTCHAs tend to fall apart quickly. The simplest answer for an attacker is to hire someone to process the CAPTCHA or do so herself. Yes, you can
outsource CAPTCHA processing for $1 for 1,000 CAPTCHAs and look at what you
get12 (from B. Kreb’s “Web Fraud 2.0: Thwarting Anti-Spam Defenses”):
150
Protecting Games: A Security Handbook for Game Developers and Publishers
The quality of recognition is between 90 percent and 95 percent.
We support two-word CAPTCHAs.
We support mixed upper- and lowercase CAPTCHAs.
The volume that we can accept at any moment from new clients is between
500,000 to 1 million CAPTCHAs in day.
We automatically issue refunds for any CAPTCHAs that were solved in more
than 60 seconds.
We automatically return money for solved CAPTCHAs that include incorrect
text.
There is also the option to buy software that processes CAPTCHAs automatically13.
C HEAT D ETECTION S YSTEMS
The dominant anti-cheating tools today are cheat detection systems. The most
well-known commercial products are Even Balance’s PunkBuster, nProtect’s
GameGuard, and AhnLab’s HackShield. Some game developers have chosen to
create their own tools including Valve Software’s Valve Anti-Cheat (VAC) and
Blizzard’s Warden. There are also several independent open source security projects. The single biggest advantage that these systems have is that they can be added
to a game anytime, even after it has been completed. In fact, Electronic Arts contracted with Even Balance to add PunkBuster to its MMO Ultima Online nine years
after the game launched, although it appears that the project was eventually put on
hold14. Cheat detection systems are essentially operated as a service. They need to
be constantly updated to identify the latest threats as well as to protect themselves
against hackers who choose to target the security tools directly.
In general, all of these tools work the same way. There is a security client
installed with the game client and a central security server that runs in parallel with
the game client and game server.
The Security Client creates a client ID and may use hardware-fingerprinting
techniques to identify the player’s computer. This client ID is used to register the
game client/security client pair with both the game server and the security server.
The security client has two major functions: It is responsible for analyzing the
player computer to identify any sort of threat (such as the radar, aimbot, and other
hacks, and, in some cases, key-loggers and other forms of malicious code that can
target the game). It is also responsible for reporting its status regularly to both the
Chapter 15 Bots and Player Aids
151
FIGURE 15.1 Cheat detection system architecture
game client and security server—sending a “heart beat” signal that it is still alive
and operating correctly (Note: The blind authentication technique discussed in
Chapter 14 can also be used to verify the integrity of the security client.)
In general, cheat detection systems use the same techniques as anti-virus
programs: They scan the entire memory space of the computer looking for items of
interest. Instead of looking for worms or virus-infected programs, cheat detection
systems look for signatures associated with known cheat applications or malicious
libraries loaded in memory. If a cheat signature is identified, the security client
sends a notification to the game client and security server. The security client can
use whitelist and blacklist techniques to help with the forensic analysis of potential
cheat applications. Whitelists are known programs that have been determined to
not affect the security of the game and blacklisted programs are known cheating applications. The problem, of course, is that there are hundreds of thousands, if not
millions, of different programs that may be installed on a user computer.
Also, game cheat writers, just like virus authors, use techniques to hide their
applications and obscure their signatures. World of Warcraft hackers used the Sony
BMG Rootkit to hide their attacks from Warden within weeks of the disclosure of
the rootkit15. It would also be possible for these cheat detection applications to
profile all of the programs installed on the player’s computer by scanning the PC’s
hard drive, even if the programs are not apparently being run while the game is
being played.
Because these security clients often report back information about the applications on the player computer, there are some rather serious concerns about privacy
that may create legal risks for the game operator or security firm. Most of the security clients do not return actual information back about the applications that are
152
Protecting Games: A Security Handbook for Game Developers and Publishers
running on a PC, but rather send a hash value signature back to the central server
to minimize their privacy impact. Whether this is legally sufficient or not is a different question.
Hackers do not actually need to stop the security client’s operation, however.
Instead, they can spoof the security client’s communications to report that everything is okay to the game client and the security server, even if the security client has
been shut down or has detected a hack. The game client is a particular target for this
sort of attack: It is rarely designed with security in mind and the security client API
(application programming interface—the connection between the two applications) was likely integrated into the game client very late in the development
process. Because many games support player-to-player communications, it may be
possible for a hacker to send data that looks like a cheat as part of regular game
communications to trigger a penalty for another player16. After all, cheaters just
want to win, they do not care how they do so.
It is important that the security server and game server coordinate their actions.
After all, the cheater is really targeting the game client and game server and if the
cheater can somehow separate the security systems from the game systems, the
cheater will win, even if cheats are detected. Thus, it is critical that the client ID is
shared and used effectively by both servers.
A cheat detection system is more than its technological platform; it is really a
service. The security client is not a preemptive security tool; it only can profile
known cheats, just like an anti-virus product. Unlike anti-virus tools, however,
which can cover everyone with a Windows or OSX operating system, cheat signatures are almost totally game specific. Game publishers need to contract with the
security provider for each game for as long as they want the system to be kept upto-date. For some licensed MMOs, the licensee also has to pay for the service.
(I think this is a bad business practice; adequate security should be included as part
of any licensing agreement.) The operational activities for a cheat detection system
service are as follows:
Surveillance—The CDS provider monitors cheater forums and hacker sites, as
well as getting information from the game operator about the latest cheats.
However, the criminalization of game hacking has meant that some of the most
damaging cheats are not being used by many people. This implies that the
most damaging cheats will not be found by this sort of surveillance. Anti-virus
companies are having the same problem with viruses, worms, and other malicious code being targeted at single companies or even individuals.
Collection—Once a new cheat is identified, the CDS provider needs to acquire
a copy. Both surveillance and collection require CDS provider personnel to be
able to infiltrate cheating communities.
Chapter 15 Bots and Player Aids
153
Analysis—The CDS provider will disassemble, analyze, and determine the
risks for the cheat, whether it actually works, how the cheater attempted to protect it, and how to construct the best signature to identify the cheat.
Signature Development—The CDS provider may either create a simple new
signature to be added to the CDS security client signature database or require
an update to the security client to add a new scanning capability.
Distribution and Update —The CDS provider must then update the security
clients and/or their signature databases. It is important for the CDS provider to
ensure that all active security clients are fully updated.
The distribution, updates, and operation of the security client all have an impact on network bandwidth and available CPU resources at the player computer.
There have been a number of complaints, some quite serious, about the performance
impact of these tools on the performance of the game that the tool is intended to
protect.
One real weakness of the cheat detection system strategy is that it is rarely used
to improve the game, just patch over weaknesses. Once a cheat is identified, it
should also be assigned to the game’s ongoing support team to see if there is a way
to actually solve the underlying problem that allows the cheat.
Some skill game operators use cheat detection systems. As skill games, online
gambling, and other games-for-money businesses grow, this security strategy will
likely fail. Highly targeted, limited distribution cheats can be very profitable in
these games, just as they are for gold farmers.
As attackers get more sophisticated, the cost for an effective CDS will rise. This
may force game operators to bring the service in-house. The most costly portions
of the CDS are surveillance and collection. It may make sense for game operators
to carry out these activities themselves and only consider outsourcing the remaining CDS functions: analysis, signature development, and distribution.
Philosophically, the cheat detection system strategy essentially encourages
developer laziness. Rather than avoiding cheating problems from the beginning of
the game development process (and, at this point in the evolution of the game industry, many of the cheating problems are quite well known), game developers
simply leave cheating and the whole host of operational and support issues to those
people unlucky enough to still be on the project after the game is completed. Lack
of life cycle engineering and accountability for games is quite costly. The cheat
detection system strategy does work very well as a “belt and suspenders” tool to
augment strong security engineering throughout the design process.
154
Protecting Games: A Security Handbook for Game Developers and Publishers
As a final note, I have seen a couple of Asian online games experimenting with
bundling traditional security software with their game security tools. This is an
intriguing idea, as game businesses are hit hard and in their pocketbooks by keyloggers and other viruses and malware.
R EFERENCES
1. M. Shackleford (2008), “How to Play Blackjack,”
http://wizardofodds.com/blackjack
2. Stoxpoker.com (2008), “The Second Man vs. Machine Poker Championship,”
http://www.stoxpoker.com/man_vs_machine.html
3. Australian IT (2006), Bluetooth Chess Cheat Caught,”
http://www.australianit.news.com.au/story/0,24897,20981444-15306,00.html
4. MDY Industries, LLC (2008), “Glider FAQ,”
http://www.mmoglider.com/FAQ.aspx
5. B. Duranske (2008), “World of Warcraft Glider Litigation Update: Final Briefing On Blizzard’s Request
for Injunction Filed,” http://virtuallyblind.com/2008/08/27/glider-blizzard-response-injunction/
6. Smik3r (2008), “TF2 Hacks Aimbot NoSpread ArtificialAiming.net Scout Ownage,”
http://www.youtube.com/watch?v=LWVqtzK0zf4
7. G. Kasavin (2003), “Call of Duty Review,”
http://www.gamespot.com/pc/action/callofduty/review.html (page 2)
8. MDY Industries, LLC (2008), “Subscribe to Glider Elite,”
http://www.mmoglider.com/Subscribe.aspx
9. GoGYGO (2008), “GoGYGO Products,”
http://www.gogygo.com/products.php
10. Cho J. (2006), “Mouse Plays When Gamer’s Away,”
http://search.hankooki.com/times/times_view.php?term=online+game++&path=hankooki3/times/
lpage/culture/200603/kt2006032619493065520.htm&media=kt
11. Carnegie Mellon University (2008), “What Is a CAPTCHA?,”
http://recaptcha.net/captcha.html
12. B. Krebs (2008), “Web Fraud 2.0: Thwarting Anti-Spam Defenses,”
http://voices.washingtonpost.com/securityfix/2008/08/web_fraud_20_defeating_anti-sp.html
13. CL Auto Posting Tool (2008), “CL Auto Posting Tool,”
http://www.adsoncraigs.com/
14. Electronic Arts (2006), “PunkBuster on Hold,”
http://www.uo.com/cgi-bin/newstools.pl?Article=9619
15. R. Lemos (2005), “World of Warcraft Hackers Using Sony BMG Rootkit,”
http://www.securityfocus.com/brief/34
16. Pansemuckl (2005), “The Unerring PunkBuster...,”
http://forum.netcoders.cc/announcements/14061-unerring-punkbuster.html
16
Network Attacks: Timing
Attacks, Standbying,
Bridging, and Race
Conditions
he Internet is like the Wild West. Totally untamed and dangerous, we are all
told. Hackers, thieves, and criminals lurk around every corner. No one seems
to have told a lot of game developers, as they regularly leave their online
games wide open to all sorts of attacks.
T
Network attacks target game applications from their network interface. Once
again, attackers benefit from the habit of developers to start with a standalone,
single-player game and then add online play as a feature. Building a safe online game
requires a level of formality about time, transactions, and interactions that most
programmers are not used to.
Consoles and MMOs are the main targets. Typically, PC games are attacked
more directly through the game application.
ACID, D UPES ,
AND
SQL A TTACKS
Games are transactional systems. Unfortunately, game developers often fail to build
their games on a foundation of well-constructed transactions and attackers regularly exploit these poor implementations. Even simple stock market games can be
vulnerable. Market games are very popular with aspiring investors and the genre
has grown to encompass everything from celebrities to fashion and even the U.S.
Congress1. Trading is an easy game mechanic to understand and reasonably easy to
implement. Developers need to be careful, as CNBC found out with its “Million
Dollar Portfolio Challenge” in 2007 where players determined that they could post
virtual stock trades after the real market had closed. The technique was fairly simple—they entered their trades before the stock market closed at 4PM Eastern Time,
but did not execute them until after 4PM when the companies announced their
earnings and their stock prices jumped in after hours trading. If the stock didn’t
pop, no problem, the player simply didn’t complete the order 2. The scandal was
155
156
Protecting Games: A Security Handbook for Game Developers and Publishers
eventually exposed and caused a delay in awarding the top prize and caused a black
eye for what would have otherwise been a very successful promotion. These types
of race conditions can also happen within a PC game, as Lionhead found with its
Fable 2 pub games3. Mostly, however, these attacks occur over networks.
Virtually every online game has been hit by some sort of dupe attack. Players
use the game’s interface and controls to induce the game to duplicate virtual items
or currency and can cause great difficulty for the game operator. Recently, the
Philippine licensee of Ragnarok Online, Level Up!, had to roll back the game (costing players two weeks of game progress and leading the company to provide two
weeks of extra game time and other bonuses in compensation) because of a severe
dupe problem that resulted in nearly 500 percent inflation of the game’s currency 4.
Dupe attacks are often caused by race conditions in different parts of the game
application. Different parts of the application are updated at different times or
“trust” data from unreliable, intermediate sources (often internal variables or cached
information). In the CNBC case, it appears that permission to make an order was
determined at the time the player chose the stock ticker rather than when they
selected the number of shares and clicked the Order button. World of Warcraft
apparently had a similar race condition in which a player could transfer all of her
gold from one account to another, log off quickly, and then log back in again and
the gold would still be in the first account5.
The solution to dupe attacks comes from applying good database design
principles to game transactions. ACID is an acronym for the properties necessary to
ensure that transactions are properly processed 6:
Atomicity—Either an entire set of transaction tasks occur or none do.
Consistency—No bad data will be introduced into the system due to a
transaction.
Isolation—State or date affected by the transaction will not be visible to
entities outside of the transaction until it is complete (or rolled back).
Durability—Once completed, a transaction will persist.
In MMOs, the server is typically the authoritative source for information and
so there is a single database which, conceptually, makes implementing proper
transactions easy. For peer-to-peer games, however, ensuring data consistency over
a network can be very challenging from a technical perspective. It is also important
to provide a clear player display and control process to handle rollbacks to a previous state and other problems.
Chapter 16 Network Attacks: Timing Attacks, Standbying, Bridging, and Race Conditions
157
So far, we’ve discussed action-based networking and state-based networking.
Some MMO developers have chosen a truly dangerous approach that lies between
the two: SQL-based networking. SQL (Structured Query Language) is a widely used
standard protocol for communicating with a database. I’ve heard anecdotally that
there is at least one MMO that ships with a full SQL client embedded in the game
client. Because SQL communicates directly with the database that stores the
game state, SQL commands can be used to directly read, write, and edit anything
about the game. In some sense, this is even worse than a state-based system. A
malicious user with full SQL access to a database can create new items or player
attributes or pretty much anything they can imagine.
Some web applications are vulnerable to SQL injection7 attacks—where players can somehow bypass the server application to communicate directly with the
database. There are tools and programming techniques to stop such attacks from
happening by stopping web users from entering any SQL commands via the web
interface. However, building a game that uses SQL for networking is almost
impossible to protect because the player client application relies on posting player
actions or state updates via SQL queries. The best way to protect against these
attacks is to insert a proxy between the game client and database server that converts
game actions into SQL queries that the database, server-side data store, or game
application can process.
D EFENSIVE P ROXIES
Proxies are a powerful security tool that, if implemented properly, truly provide
“defense in depth.” A communications proxy takes incoming communication
packets or streams and parses and validates its structure and content independent
of the state of the underlying application. A proxy answers the question: “Is this a
well-formed communication?” Once processed by the proxy, the game application
determines if the message is appropriate to the game’s current state and that the
message is from a valid source. Only if an incoming message is validated by both the
communications proxy and the game application will the game application proceed
and process the player action. Standard Internet firewalls and packet inspection
tools are, essentially, generic proxies that can parse and validate a wide range of web
protocols.
The art of proxy design is to manage the trade-off between the functions of the
proxy and the actual application (see Figure 16.1). Some proxy systems go an extra
step and actually reformat incoming message data into an alternate format for
internal processing to further isolate external from internal communications.
158
Protecting Games: A Security Handbook for Game Developers and Publishers
FIGURE 16.1 Defensive proxies
Proxies can also handle access control, source authentication, and they are a
natural location to implement logging. Proxy servers can be implemented in front
of game servers instead of, or as a complement to, conventional firewalls. Where
possible, they should be designed to be stateless so that they can be replicated using
low-cost real or virtual servers. A stateless proxy server design will make it easier for
the game service to scale efficiently.
An implicit advantage of a deep, powerful proxy design is that having a separate software application (and, ideally, a different development team) will likely
tighten the implementation and security of the overall system’s interfaces by both
groups. Problems such as buffer overflows and malformed messages will have at
least two independent chances of being caught, as the two development teams
should each be looking at the incoming data separately (simply replicating the message parsing code in the two systems will undo this security benefit, of course).
Defensive proxies can be part of the architecture for peer-to-peer systems as
well as client-server applications. They can provide performance as well as security
benefits and can help cleanly decouple the networking subsystem from the core
game application (local player actions could be processed through the proxy service
as well so that the game engine has a single interface for all players).
H ACKER P ROXIES
A hacker proxy is typically a computer that sits between the target platform (PC or
console) and the remote server or other player platforms that is used as a means to
attack games on their network interface. It is possible for the hacker proxy to be an
Chapter 16 Network Attacks: Timing Attacks, Standbying, Bridging, and Race Conditions
159
additional application on a player’s PC that intercepts and alters network packets
before they are sent to other players. Another hacker proxy technique is to simply
insert a switch that disconnects the player’s PC or game console from the network8.
A consistent, underlying problem with networked games is that game designers
often assume that they have secure, reliable communications. However, it is sometimes still possible to attack a game even if its communications are fully encrypted.
Halo 2 on the Xbox console had some serious proxy problems, as discussed in an
entertaining and detailed article at GamesFirst! by Shawn Rider 9:
The bridger is the center of power in a cheating setup. [The cheaters] use
a fairly complex method to run the Xbox’s Internet connection through a
personal computer. On the computer [the cheaters] use [commercial] software,
including the popular Zone Alarm firewall program, to control what computers
the Xbox can connect to. By using some tricky methods, [the cheaters] can
completely control the hosting of the game. They can determine who can connect, they can lag out [induce sufficient network delays so that the player will
be knocked out of the game] especially good players on the opposing team, and,
most importantly, they facilitate the “standby” technique.
The standby cheat is simple: Cheaters with cable or DSL modems will push the
“standby” button on the modem [or in software on the bridger computer] to
force everyone else in the game to be presented with the blue screen of “waiting.”
During this time, the gamer who initiated the standby can move in the game
world freely while all of the other players stand frozen in time. The cheater can
blow away a flag holder, for example, return the flag, [and] then press his
modem’s standby button again, resuming the game.
It is easier to understand hacker proxies in terms of chess.
Players A and B are playing chess online. The game developers didn’t really
bother to understand the rules of the game, so they just implemented the game as
a big blob of code and game state. The easiest way to network this game is to
duplicate the game state over the network (here is where developers can fiddle with
object synchronization and differential object synchronization, prediction, and all
sorts of clever things). So, basically when Player A makes a move, the updated game
board is sent to Player B. Then B moves (or, if they are playing Real-Time Chess,
they both move) and the game board objects are synchronized.
Viola—a “network” game. This is also why it is so easy to build these “network
games” ... and why it is so easy to hack them.
160
Protecting Games: A Security Handbook for Game Developers and Publishers
This attack works by abusing the multitude of problems here. Evil Player B
wants an edge. So, what she does is stop listening to Player A for a while and
simply run the game (she can even add in suitably “helpful” moves on Player A’s
behalf to get the results she wants). Once Player B gets the game “just right,” she
reconnects to the network and sends the game to Player A... whose computer
simply accepts the data.
The problem is that with anything but the most trivial game, it is impossible for
the receiving game object blob to validate the new game object blob against any
form of rules. Think of looking at a chess game if you were allowed to move all of
your pieces at once, but you are only able to do validation of the game board at
Time 1 versus the game board at Time 2.
There are two types of hacker proxies:
White Box Proxy—A proxy application that can peer into the game data packets and edit them, control when they are sent, reorder them, as well as pass data
on to either the local game instance or the remote game instances. This is the
most powerful form of proxy and may not always be practical (for example, if
hardware and cryptographic security work effectively on a game console, it
may not be possible to edit packets or re-order them—your mileage may vary).
Black Box Proxy—A proxy application that cannot peer into the contents of
game data packets. A black box proxy can control game data packets externally:
controlling when a packet is sent, the order in which packets are sent, whether
packets are sent multiple times (replay), and whether a packet is sent at all. This
kind of proxy can sometimes be implemented by simply pressing the Standby
button on a cable modem, as noted previously. This type of proxy cannot really
be prevented, but should be detectable and addressed in the game’s design and
networking system.
Hacker proxies can be used to implement a wide range of attacks on a game,
purely from its network communications:
Speed Hack—There are three types of speed hacks that work by accelerating or
decelerating the pace of network communications. This can sometimes be implemented even if network communications are encrypted:
Message Overflow/Speed Hacks—By driving messages/commands at a
pace that is not expected by the remote system, a malicious user can perform substantially faster than permitted 10, 11.
Chapter 16 Network Attacks: Timing Attacks, Standbying, Bridging, and Race Conditions
161
Lazy Communications/Telepathy—By slowing the apparent response and
reception of messages by the recipient application, a malicious player can
effectively “predict” incoming data and respond at an advantage.
Late Bet—Wagers are a sure thing when you already know the outcome.
Gambling cheaters target all sorts of games to figure out how to place a bet
after the event has occurred. Late bet scams have shown up in “The Sting,”
a real racing scandal in New York12, and at roulette, craps, and other casino
games.
Standbying: Lag/Resynch Attack—An extreme version of the lazy communications attack. It works by dropping the malicious computer out of the network/
game and proceeding with game play disconnected. Then the malicious player
reconnects in a preferred state13, 14. The length of time that a game will
tolerate a dropped or slow connection can vary widely. This attack is predicated
on trusting data from a remote player. Typically, it requires a state-based resynchronization model.
Packet Hack—The raw manipulation of network packets. It is the network
equivalent of a memory editor. Good network manipulation tools will correct
checksums, sequence numbers, and other non-secure message integrity features.
Encryption might not always stop packet hacks, because some cryptographic
modes allow linear changes to encrypted data to be undetected. This type of
manipulation can be very effective if the hackers know what the underlying text
is and what they wish it to be without breaking the encryption function.
Bridging—A special, more common, case of a packet hack. It works by using a
proxy, such as a firewall, to pretend to be a different server or computer.
Bridging is typically done as part of another attack because the specified address, often a company server, is considered trusted by the client application.
Game Injection—A wholesale synchronization attack. The hacker can save the
state of a favorite game with the right number and type of players and push its
state out to the other players. Note: This may require a proxy to facilitate the
attack. Depending on the networking architecture, a malicious player could use
a proxy to “push” a preferred game state to an accomplice who would then
propagate it to the other players.
Abandonment—Some players simply abandon a game to avoid losing or hurting their ranking or status. They break the connection to the remote players or
server or simply turn off the platform. The challenge for the game operator
and other players is to determine the difference between “natural disasters” and
poor sportsmanship (this issue is discussed further in Chapter 20).
162
Protecting Games: A Security Handbook for Game Developers and Publishers
Well-constructed encryption and authentication systems at the network layer
can stop many, but not all, of these attacks. Standbying and lazy communications,
for example, do not require manipulating the content of the message packets. These
attacks only require control of the physical and electronic network to slow down or
stop the delivery of game data packets.
Server-based games can address these problems by having a formal, unforgiving model for controlling network time, as discussed in the next section. At a low
level, IT GlobalSecure’s SecurePlay Strobe and Act protocols were designed to fight
many of these attacks for both client-server and peer-to-peer games. These protocols work by creating a logical network “tick” that all game players share.
Essentially, the protocols require the players to all commit to their next action or
state update and then reveal them as if they were playing an elaborate sequence of
the rock-paper-scissors game:
// Strobe Protocol
Mi = {i,Ti = T(Ai)};
// each player i selects an action Ai and computes its
// irreversible transform and builds a message package Mi
Send(Mi);
// each player sends its identity and the computed transform
// to all of the other players
Store Mi;
// each player stores all incoming Mis from the other players
if (all non-internal Mi’s received) {
SendInternal {i,Ai};
// after receiving the transforms from all of the other players,
// each player i sends his or her action to the others
}
for each {i,Ai} { // for each received action
Extract (Ti from Mi);
// extract the previously stored transform for that player’s action
if (T(Ai) != Ti) then { do exception processing;}
else { store (i,Ai) }; // accumulate players’ actions for network tick
}
if (all player actions received) {
process all {i,Ai};
Chapter 16 Network Attacks: Timing Attacks, Standbying, Bridging, and Race Conditions
163
// once all player actions are received and validated, update the game
}
repeat; // start next game tick
The protocol is structured so that all players contribute to updating the game
(either actions or state) without knowing the activities of the other players.
Therefore, it is impossible for a player to manipulate lag or benefit from prior
knowledge of other player’s actions. The Act protocol extends this concept by integrating the collaborative random number generation process discussed in Chapter
13. There is a definite performance impact from using this protocol; it requires two
sequential messages to update the game’s state from each player. This can be compensated for in the game’s design or by pipelining a parallel set of strobe protocol
instances (see secureplay.com for additional information).
T HINKING A BOUT N ETWORK T IME : A CT , B UT V ERIFY
Minute by minute and day by day, we tend not to think too much about time. It
flows along unnoticed. Unfortunately, as you read previously, neglecting time can
cause real cheating problems for game developers. Network lag and race conditions
are often hard to test or replicate and cause problems for all sorts of general business applications. The default strategy for handling time has been to make it seem
as smooth as possible for players. Errors are usually assumed to be accidental, not
malicious. The trusted client problem often includes a substantial trusted client
time component. Developers need to take a more formal view of time and create a
systematic “time policy,” as follows:
How out of synch should players be allowed to become?
Where does a game roll back to? How do you present this to players?
What are the consequences of a dropped connection?
These questions and more must be addressed consciously by game designers or
they will be handled implicitly in the hands of individual game programmers. Key
factors that need to be considered include:
Delay—What is the time interval after which the game must stop?
Interaction—How “old” can an incoming action be and still be accepted by
other players? Actions from remote players are always associated with some
time in the past. How does the game play system integrate old remote actions
with new local actions and somehow synchronize state between the players?
164
Protecting Games: A Security Handbook for Game Developers and Publishers
Tick—What is the basic “tick” of the game’s network clock? In some sense,
there needs to be a notion of “minimum duration” during which each player
can take only one set of actions. If the game’s internal temporal model for
“ticking” and player interaction does not correspond with the game’s network
model, game play can break down.
Interference—The interactions of different player actions need to have reasonable and understandable consequences based on each player’s notion of
state and action.
Display Prediction and State Confusion—The interactions of the player
display or presentation and the actual game state can become complicated by
poor predictions by the game presentation engine and the actual actions of the
remote player. Does a player have a shot available at a target? What does a
maneuver really look like relative to another player? This is an important issue
to ensure that real-time games feel responsive and that the display is accurate
and smooth.
These issues, obviously, only exist with real-time games. Turn-based games
can be paused easily and rolled back to the last action. Although the trend in game
design has been towards real-time games, another advantage of turn-based games
is that they can be “played by mail” and so players do not have to reconnect in real
time to resume play in case of an interruption. This makes game abandonment as
well as many other network attacks almost irrelevant.
It is possible to decompose players’ actions over networks into a series of
discrete phases for which game developers need to define clear time policy choices:
Decision—The instant an internal player’s action enters the game play engine.
Commitment—The instant before which the action will be automatically
aborted/changed to address new incoming information that was not available
when the player made a decision.
Success—The instant after which the action has some probability of resolving
successfully.
Resolution—The instant when the action triggers consequences in the game
play engine.
Conclusion—The instant after which the player is allowed to choose a next action.
This is a sample time policy model. Different models are certainly applicable to
different games and networking strategies. The key factor for a successful network
game experience for players from both a game play and security perspective is to
Chapter 16 Network Attacks: Timing Attacks, Standbying, Bridging, and Race Conditions
165
systematically address how game state will be updated, how players’ actions will be
resolved through the games rules, and how the game’s display will communicate
state in a networked environment.
S ECURING T IME
Handling time is probably the most difficult problem for multi-player and networked games. It collides with hard problems from computer programming for
handling concurrency and simply handling lag and latency over wide area networks.
Securely managing time in a game is aggravated by cheating players who are more
than willing to abuse game time, network communications, and synchronization
services to their own ends. Turn-based gaming is an easy answer, but it does not meet
the needs of many developers who want to fully tap the power of gaming platforms
and modern broadband communications.
R EFERENCES
1. A. Varney (2007), “Offbeat Sports Games,”
http://www.escapistmagazine.com/articles/view/issues/issue_78/446-Offbeat-Sports-Games
2. T. Catts (2007), “CNBC’s Easy Money,”
http://www.businessweek.com/bwdaily/dnflash/content/jun2007/db20070607_007145.htm
3. R. Miller (2008), “Fable 2 Pub Games Exploit Will Make You Very, Very Rich,”
http://www.joystiq.com/2008/08/15/fable-2-pub-games-exploit-will-make-you-very-very-rich/
4. Level Up (2008), “RF Online Economy Fix,”
http://risingforce.levelupgames.ph/news_main_view.html?rid=155
5. Ryan A. (2006), “Players Found New Golden Exploit for WoW,”
http://mmorpg.qj.net/Players-found-new-golden-exploit-for-WoW/pg/49/aid/75854
6. Wikipedia (2008), “ACID,” http://en.wikipedia.org/wiki/ACID
7. Wikipedia (2008), “SQL Injection,” http://en.wikipedia.org/wiki/SQL_injection
8. MFCrow (2008), “Xbox Live Lag Switch: JRG 11.5,”
http://www.youtube.com/watch?v=jvIyAkQ49Qo&NR=1
9. S. Rider (2006), “A Bridge Too Far: The World of Halo 2 Cheating,” http://gamesfirst.com/?id=1342
10. T. Bramwell (2004), “Blizzard Bans World of Warcraft Cheaters,”
http://www.gamesindustry.biz/content_page.php?aid=5800
11. CCP Wrangler (2007), “Rapid Fire Exploit,”
http://myeve.eve-online.com/ingameboard.asp?a=topic&threadID=657524
12. J. Drape (2002), “HORSE RACING; Pick-Six Fix Admitted As Giuliani Steps In,”
http://query.nytimes.com/gst/fullpage.html?res=9905E5DC1439F932A15752C1A9649C8B63
13. B. Kuchera (2006), “Saint’s Row Receives Quite the Patch,”
http://arstechnica.com/journals/thumbs.ars/2006/10/31/
14. N. Doerr (2007), “Insomniac Sets Up a Ban Policy for Resistance,”
http://www.ps3fanboy.com/2007/04/27/insomniac-sets-up-a-ban-policy-for-resistance/
17
Game Design and Security
ame design is the foundation of a fun, successful, entertaining or educational game. One of the keys to making a great game is ensuring that the
game design—the rules and framework for how the game is played—keeps
the players playing by the game’s rules. Unfortunately, computer games can hide
weak designs behind pretty graphics, stunning animations, and elaborate plots. At
least, until there is more than one player involved.
G
This discussion of game design is not about creating a great or even a good
game; it is about avoiding design traps that undermine the intent of the game
design. There may be cases where it is desirable or necessary to build a game with a
known security weakness. It is essential that when this choice is made, a game
designer does so consciously with an appreciation for the consequences. Ideally,
security constraints to stop cheating, piracy, and other forms of game abuse should
spur game designers to create successful games that also avoid the problems or
turn security problems into game play features.
D ESIGN E XPLOITS
One category of game security problems should be entirely avoidable: exploits of
game design flaws. As introduced in Chapter 13, a game design exploit is a weakness
in the game design if it gives players who use it a substantial, unintended
advantage over other players. Game design flaws are often the result of the rush to
complete games and lack of focus on game design analysis. Within days of the
launch of Age of Conan, for example, players with Demonologist characters found
a way to reach the top level in the game with just four days of game play 1. Economic
systems, combat, movement, and other game systems too often have serious flaws
that arise from focusing on the graphics and the cosmetic “chrome” of gaming
rather than proper design and thorough game play testing. Although analysis is
useful, play testing using paper and pencil may be the best way to exercise game
systems cost effectively and eliminate the worst design exploits.
166
Chapter 17 Game Design and Security
167
C OLLUSION
Collusion, first discussed in Chapter 13, is one of the more pernicious problems for
computer games. When players are playing online, there is no way to prevent
players from communicating and coordinating their plans, especially if they do so
outside the game. Simply making collusion against the rules, as Svenska Spel found
at great expense with its flawed lottery game2, is futile. The easy answer, making collusion a legal game mechanic—cooperation—is a great option when it is possible.
There are other design strategies. In-game betrayal is very effective. CCP Games’
space-based MMO EVE Online has numerous instances of players backstabbing
each other. Cooperation is allowed, even encouraged, but the game’s deep economic systems mean that betrayal can be very profitable or just fun. In one example
among many, a player set up a bank inside the game that a large number of other
players used for a while earning interest and making loans—that is, until the bank
operator ran off with the equivalent of $170,000 in virtual currency 3.
Cooperation and competition dictated by the game mechanics is also an
option. The Austrian card game, Königrufen (“The Calling of a King”)4, has
an elaborate bidding system, similar to that in Bridge. The bids themselves determine player partnerships—with some hands being played solo and others with
partnerships based on calling a king by suit, hence the game’s name. If you are the
player with the called king, you are the partner of the declarer for that hand.
Many games incorporate wagering as a game mechanic. For these games, unrestricted side wagers for or against any player can mitigate the benefits of collusion.
The only two games that I have seen that use this approach are my favorite casual
board game called “The Really Nasty Horse Racing Game” 5 and the dice game craps.
Online poker services claim to detect collusion through extensive statistical
analysis of game play and patterns. However, the weakness of online identity and the
financial benefits of serious collusion make the effectiveness of such techniques suspect. Game operators can try to use platform fingerprinting, IP address information,
account information, bank information, and basically anything else they can find to
create enough identity information to look for teams of players. Without strong
identity, any statistical analysis is going to be pretty weak. Even if you can somehow
detect a player team, the real question becomes what to do about them.
T RIVIA G AMES
Trivia games are terribly popular and terribly difficult to secure as online games.
First, trivia games as a category are inherently weak in the world of modern
computers and the Internet. Players can collude, research answers, and, most
dangerously, build a catalog of questions.
168
Protecting Games: A Security Handbook for Game Developers and Publishers
The cataloging problem is expensive to fight. Basically, every time the game is
played, the questions that are asked (and their answers, if revealed) can be added by
malicious players to a catalog list that can be used by their comrades. Economics
works against the game developers: It costs the developer more money to create
each question than it does for cheaters to catalog the answers. Ideally, from a security perspective, a question should be used only once. In practice, questions will
need to be used many times.
How does one try to balance this essential inconsistency between security and
business? Here are some ideas:
Don’t Reveal Individual Answers—Only report the bare minimum amount of
information to the players—whether they won or lost, got to the next level,
won a prize, and so on—without revealing the individual answers to the questions. This does not prevent cataloging of questions, but it makes it more difficult to collect the answers.
Cost of Entry—Create a cost to enter the game. This often creates a legal
problem for trivia games where they can potentially become gambling games
instead of contests for fun (see Chapter 31).
Strong Identity—If the game operators can create a strong identification of
each individual player, they can fight multiple entries by individual players.
This does not stop team collusion.
Split Question Pool—Once a player answers a question wrong (whether the
answer is revealed or not), she is switched to a question pool that is not used for
the “big prize.” This reduces the number of “important” questions that can be
revealed to any given player.
Analytics—It is important to track the number of times a question has been
asked and how many times it has been answered correctly. Also, it would be
valuable to track changes in any statistical changes in the likelihood that a
player answers a question correctly, because this could be a good indicator of
cataloging (if the observed daily rate for answering a question correctly jumps
from 20 percent to 60 percent, the question has likely been compromised).
Honeypot Questions—These questions are asked more often (not drawn from
the ordinary random pool) and are used to help model cataloging efforts by
players (by determining how quickly questions become “easy” for players). The
question may be extraordinarily difficult or even have a wrong answer to help
identify anomalous player behavior.
False Game—The way that players actually progress through a contest is not
tied to their answers in the trivia game, but based on some other criteria. For
example, simply entering a trivia game during a day (or achieving a modest,
Chapter 17 Game Design and Security
169
minimum score) may be enough to be allowed to progress to a final drawing
for an advergame.
Multiple Tiers—Divide the game into multiple tiers that act as filters to reduce
the number of questions that are exposed to a large game-playing population.
Non-Traditional Question Presentation Methods—Use voice, imagery, and
other alternative means to convey the questions to players. This makes cataloging harder; it does not prevent it. It may also drive up the cost to create each
question, which can have a net negative impact on the game’s security.
Face-to-Face Play—Switch players to a face-to-face competition after preliminary, online game rounds (this is essentially another multiple-tier system).
The potential embarrassment of not being able to use a catalog or other cheating methods in public can act as an additional deterrent.
Trivia games are essentially a resource battle between cheaters and developers.
The developers want to reduce the effective cost of creating each question and maximizing the number of times that the question can be reused, whereas the attacker
wants to acquire the answers to the questions as cheaply as possible. As noted earlier, from an ideal security perspective, each question should be used only once and
the sequence of questions should work to rapidly filter players away from victory
and exposing unused questions.
W ORD , N UMBER ,
AND
P UZZLE G AMES
Brain Age is a very successful and popular “self-improvement” game and it has a
number of online imitators. However, games that rely on basic mathematical, word,
or other puzzles are not very likely to work in an online multi-player, competitive
environment. It is too easy to cheat at these games and impossible to protect them.
The Scrabble Word Finder7 provides its users with all of those wonderful sevenletter words and the longest words based on their current tiles (the tool apparently
does not do any analysis of the current game board looking for highest scores, but
Scrabble players tend to do better by cycling their hand as quickly as possible).
Scrabble Word Finder is an example of a “strong play” tool. These tools do not
give optimal strategies or perfect play techniques, but rather are “good enough” to
allow their users to defeat most opponents. Because there are opportunities to play
more game sessions online than there are to play games face-to-face, these strong
play tools are good enough to give a player that uses them a substantial advantage.
The tool doesn’t necessarily need to find the actual answer, but needs to merely present a reduced set of good options that a human player can use to gain an advantage.
170
Protecting Games: A Security Handbook for Game Developers and Publishers
Word, number, and puzzle games are generically vulnerable to “catalog
attacks,” where cheaters basically exhaust all of the game play options to find good
or best solutions. A catalog attack can even work with a physics-based game if the
range of player choices is sufficiently restricted. Basically, the catalog tool would
rapidly model a whole series of different player choices and then pick the best
options or further refine possible player choices based on the best results from the
simulation. This may be substantially faster than attempting to algorithmically
solve the game. A cheater may find it faster to search for good solutions by trial and
error rather than attempting to derive an optimal, closed solution to the game.
This is especially true if the game’s interface effectively restricts the granularity of
player choices (for example, restricting distance to multiples of a unit value such as
inches or direction to a multiple of two degrees).
A LGORITHMIC G AMES , P HYSICS F LAWS ,
AND
P REDICTABLE B EHAVIOR
Many games are based on underlying mathematical models. In the real world,
modeling golf, darts, and pool would require including a massive number of variables and complex interactions. For golf they are daunting—the speed of the swing,
the precise angle and position that the club hits the ball, the wind, the terrain from
where the ball is launched, and certainly the topography of where the ball lands.
Other games, such as blackjack and roulette, rely on the random deal of cards or the
spin of a wheel to make them interesting.
In some cases, there is less complexity than people thought. For decades, players have been counting cards in blackjack to try (mostly unsuccessfully) to get an
advantage over casinos. There were no strong card counting systems until the
publication of Dr. Edward Thorp’s “Beat the Dealer,” which described a counting
scheme that would give the player a mathematical advantage over the table7.
Initially, the casino industry was very concerned by Dr. Thorp’s technique. However,
the casinos found that most players actually couldn’t follow the system—although
many players tried and tried and tried and led to huge growth in blackjack revenues
for casinos. Unlike most human players, computers can easily implement such
counting systems (as can highly coordinated blackjack teams) and so are banned
from casinos.
Modern computers have been able to solve roulette and have been used
covertly by cheaters in casinos. Interestingly, courts in the UK and Spain have ruled
that such devices are not illegal (just as card counting isn’t illegal), and it is up to
casinos to detect and control their use8.
Chapter 17 Game Design and Security
171
For standard computer games based on physics, the thousands of variables
found in real life are commonly collapsed into a very simple mathematical model.
Algorithmic attacks basically target the underlying mathematical model for the
game to find the best solution. Even if the attacker doesn’t know the precise model
that the game is using, physics is physics and is not a secret. By carefully running
experiments and monitoring results, the attacker can reverse-engineer the game’s
underlying mathematical model, or at the very least, the most sensitive parameters
affecting an action’s outcome.
Skill games based on “turn-based physics games” seem to be growing in popularity
—darts, pool, pinball, pachinko, and, of course, golf. Because the games have a
business model tied to competition based on the skill of the game’s players, there is
a real concern that players might be able to use automated tools to optimize their
play (after all, these games are really math problems and not based directly on
human physical skill) and win money unfairly from the game operator or other
players.
How much risk is there in solving a math problem? Although the developers
may hide the math behind a pretty interface, the players are really providing inputs
to solve a mathematical equation. And, because the game is turn-based, a motivated
cheater (or math student) should have plenty of time to figure out the best solution.
One option is to put the mathematical model on the game server. This seems obvious, except that there are a number of game services today that still download the
game’s mathematical model in the game client, Also, running the algorithms on a
central server doesn’t necessarily stop cheating. A mathematically inclined cheater
can still derive a “model of the model” on the server by accumulating data from a
number of game plays, looking at the results, and developing a better and better
local version of the server game model. For linear equations, if there are N unknown constants, it is going to take me N turns to fully determine the equations.
Physics equations aren’t always linear, but the idea is the same. After all, the
underlying physics models are available in high school or college textbooks;
the cheater just doesn’t know how much they have been “tweaked” by the game’s
developers.
A studious mathematician can work to isolate variables. Such a person could
run experiments in the game world to make it easier to determine the underlying
model (making short putts on different types of terrain to figure out the game’s
friction model, taking multiple shots in different directions to the wind to determine the windage model, and so on). And, the model just has to be good enough
to provide superior play; it does not need to be perfect.
172
Protecting Games: A Security Handbook for Game Developers and Publishers
RANDOMIZE THINGS
A
BIT
Wind, different types of grass, and any other randomized feature can make building the model harder for the hacker. Unfortunately, random means the game is no
longer a pure skill game (at least in some jurisdictions—see Chapter 31 on skill
games). Developers may also “randomize things a bit” by altering the player’s input
to prevent analysis and to fight botting. Randomness can also creep into the mathematical models unintentionally. The complexity of running the simulation in a
general-purpose microprocessor, including its specific resource loading and timing,
and even the behavior of the rendering engine, may introduce elements of chance
into determining the game’s outcome.
USE ABSTRACTION
Although game developers talk about using physics to increase realism, the models
in the game are still abstract equations. Altering game mechanics to utilize abstraction may create interesting and dramatic game play, particularly for player-toplayer interaction, which can often become very uninteresting (as seen by the
button mashing of many fighting games). In addition to randomizing inputs to
physical systems, abstract game mechanics can include table-driven results driven
either by random inputs or by the interaction of discrete choices by multiple players (such as a combat result table based on cross referencing the tactics chosen by
each player).
LIMITATIONS
OF
ALGORITHMIC GAMES
Physics and algorithmically driven games have a lot of powerful advantages, but
developers should use caution if cheating is a potential issue for the game:
Physics Is Not Secure—The combination of the bouncing ball and spinning
wheel is a fairly complicated mathematical model to attack (as seen in roulette).
Most games that use physics are not nearly so sophisticated.
Anything That Can be Modeled Will Be Automated—As discussed in Chapter
15, players will use whatever tools it takes to develop a superior or dominant
strategy. The strategy doesn’t have to be perfect to give them a substantial edge.
Unauthorized State Information Is Dangerous—Players don’t really need to
see the spinning ball at a roulette table except as a confidence-building measure
that the casino isn’t cheating. Similarly, in online games, it is risky to load data
to a client that is not necessary. Of course, unlike roulette, computer gamers
have exact state information, so it is much less difficult to collect the data
needed to attack the system.
Chapter 17 Game Design and Security
173
Convenience Is a Trap—How would one stop this problem for roulette? Close
wagering once the ball has been thrown. More bets placed means more money
for the casino, but the ritual of roulette would work, and the game would be
much more secure, if no bets were allowed once the ball was thrown. Security
shortcuts are routine in computer games, yet they regularly cause problems.
Some game models are fairly trivial. A number of MMO’s use “static spawning”
techniques to generate monsters for players to fight. This technique, where specific
monsters appear at specific locations at specific times, has led to a number of
annoying problems. Players “camp” to await the spawn of certain high-value creatures. Gold farmers create highly efficient routes from monster to monster to
maximize their productivity. In these cases, some randomization could be quite
helpful—varying the location, nature, and even the activities of the creatures could
undermine many abusive play tactics—and it might even make the game world
appear more “real.”
BOTS ARE HARD
TO
FIGHT
Anyone who has watched the tremendous deviousness of casino cheats would be
reluctant to trust in the ability of game operators to detect data collection and
analysis systems such as those used for roulette and card counting. These players are
not breaking the rules of the game’s play, but rather the “house rules” of the game
operator. The game’s internal security mechanisms don’t protect it from these
attackers.
Recently, many developers have embraced physics as a way of efficiently
enriching game play. As with any sort of procedural system, developers should be
careful: Things that are easy to make are often easy to break.
S PEED , T WITCH , T IMING ,
AND
P IXEL P RECISION
One of the wonderful things that a computer can do is run really fast with amazing
graphics—and game developers have been pushing the limits of both as long as
computers have been around. Games that rely on reflexes and precision work fairly
well for single-player and social games. Once multiple players are competing over
a network, however, the game is a perfect candidate for botting, as previously
discussed in Chapter 15. A game like Guitar Hero, which uses a plastic guitar as a
controller or Dance Dance Revolution, which uses a floor pad, or the Audition casual
dancing MMO that uses the keyboard, are all at their core timing games. For a
computer, it is easy to control simple button press indicators and, of course,
the computer has very precise timing.
174
Protecting Games: A Security Handbook for Game Developers and Publishers
The main reason that console games that rely on dexterity have had limited
problems with cheats is that they are played alone or socially with friends. This is
not true online. There have been a number of attacks that have targeted Audition9.
Because the game relies on timed button press in response to a simple pattern (left,
right, up, down), it is a perfect candidate for automation. Although Audition can be
attacked with a simulated keyboard, many first person shooters (FPS) are effectively
attacked with a simulated mouse. Just as with physics games, there may be real
game play (and security) advantages to looking at abstraction as a way to mitigate
automation attacks. For an FPS, no matter how accurately the player’s mouse is positioned, the player’s accuracy could be a function of her speed, length of time in a
given position, whether she is crouching and hiding from enemy fire, and so on.
True reflex games, like Audition and Guitar Hero, may need to have their mechanics reconsidered for online play. For Guitar Hero, a webcam might be helpful.
High-speed games also have problems because of network lag. The delay between player actions and game responses often force game developers to pre-position information that allows a player to cheat. A terribly simple option is simply to
force players to slow down. One of the reasons for pre-positioning data is that players can and do move quickly in these games, which requires art assets to be loaded
very quickly. However, this problem is really a function of game design choices that
are quite abstract. Players are, generally, nearly invulnerable in these games and are
often blessed with near infinite ammunition. They are hard to hit and, when hit,
take very little damage, and, when they take damage, it has very little impact on
their in-game abilities.
This is not realistic. If you look at the TV news or film of real combat, people
move very carefully when other folks are shooting at them. They do not want to die.
Simply making games more lethal would eliminate a lot of the insane level of activity that is routine in games today and a source of security problems. Also in real
life, if you are waiting in ambush for someone, you have a huge advantage. A defender who is dug in, has her ranges set, and targets selected will wipe out any fool
who comes sprinting in front of her.
Another option is to turn ambushes and other “quick” events into mini-games
or even cut-scenes. It would be interesting to use “reaction shots,” where we see the
face of our protagonist as she enters a room or turns a corner just as we are used to
seeing in film, as a way to avoid pre-loading data as well as to accurately capture the
disadvantage and risk of such actions. A more technical option could be to pre-load
multiple data sets and only activate one at the time, when needed.
Chapter 17 Game Design and Security
S TRONG
AND
D OMINANT S TRATEGIES
AND
175
D EEP G AME P LAY
There are too many computer games that have strong or dominant strategies. This
makes game play tedious and is ideally suited for automation, because the hacker
doesn’t even need to think about how to play, just how fast to shoot and in which
direction. Although many games provide a multitude of choices, most seem to have
little impact. The stereotype of button-mashing for console games or madly clicking in MMOs is all too accurate. Recently, Age of Conan attempted to enliven MMO
combat with a system that takes facing and direction of blows into account. It remains
to be seen whether this will affect player satisfaction (or scripting or automation or
other cheating problems). The “grind” that most players criticize about online
games makes automation very tempting. First person shooters that rely on speed
and reflexes rather than tactics are also vulnerable to optimal or strong strategies.
Most hackers are not good artificial intelligence programmers, so if a game has deep
strategic play, it is less likely to be vulnerable to automation attacks.
P OWER OF P EOPLE : R OCK -P APER -S CISSORS , P OKER ,
P SYCHOLOGY
AND THE
W ORLD
OF
“Interesting choices” are often associated with interesting games. It is not just that
the player can make interesting choices, but his foes can as well. Tarn and Zach
Adams’ Dwarf Fortress10 is a very highly regarded recent game. One of the things
that makes it interesting is the richness of interactions and actions between the
player and the game environment. The game is a study in innovative, deep procedural game design—so much so, that players delight in recounting their game play
experiences whether successful or catastrophic failures11. Hampus Söderström’s
Toribash12 has redefined fighting games with its combination of rag-doll physics
with simultaneous non-real-time turns. Toribash takes physics-based game play in
a new direction because players are interacting with each other’s choices, which can
have virtually infinite variety and complexity.
Strategic depth is very hard for a computer or player to fake or cheat (without
a lot of effort—chess programs play very well after all). Games don’t need to be
complex to thwart automated play. Rock-paper-scissors embodies the simple
principle that every play can be trumped and every play choice has value. Poker
succeeds as a meaningful game because of the psychological interaction of the players. Exception games, like Magic: The Gathering13, are interesting for players and
hard to automate. Every card in the game changes the rules or breaks the rules in a
different way. Cards can work in combination with each other and the game is
continually being updated.
176
Protecting Games: A Security Handbook for Game Developers and Publishers
In some sense, this is the best news of all—a well-designed game with “good”
game play is much less likely to have security problems than a poorly designed one.
G AME P LAY P ATTERNS : C OMBAT D EVOLVED
Although there may be many kinds of games, there are actually very few actual
game-play patterns. The patterns discussed here are not thematic (science fiction,
fantasy, and historical) or genre-related (first person shooter, real-time strategy,
MMO), but are the essential ways that players interact with each other and with the
game’s rules. Many of the common game-play patterns that are used in computer
games are an artifact of the history of the industry. Single-player computer games
typically use an “Action, Randomized Resolve” game-play pattern. Traditional
board and card games tend to sequence players since simultaneous play is difficult
while some of these play patterns may be better suited for computer play. Each
pattern has its advantages and disadvantages and, of course, different security characteristics:
Action, Deterministic Resolve (Chess and Battleship)—Taking turns and
moving or acting. A very simple pattern; if there are N potential actions, there
are N possible outcomes. Strategy comes from choices of actions and when to
take them.
Random Input, Action (Backgammon and Many Family Games)—“Roll your
dice and move your piece” and “draw a card”). A very simple variant on the
Action, Deterministic Resolve pattern where randomization constrains player
choices.
Action, Randomized Resolve (Most Combat Results Table Games and Many
Computer Games)—The combat results table (CRT) is a legacy of many board
war games. Basically, a player takes an action, rolls a die, and the result is determined by cross-referencing the action with the die roll. The total number of
possible outcomes is the product of the number of actions (A) and distinct die
roll values (D) (AxD). As with all randomized results, the question is always
how to generate fair random events.
Player 1 Action, Player 2 Response, Deterministic Resolve (Magic: The
Gathering)—Players take turns to act, but the results of their actions can be
modified by the actions of other players. Usually, this pattern is associated with
a finite resource that constrains actions and responses such as available cards or
“action points” that are consumed and slowly replenished. Generally, Action,
Response patterns modify only the initial action; they do not introduce new
game-play elements.
Chapter 17 Game Design and Security
177
Player 1 Action, Response Chain (Each Player, Deterministic Resolve) (Magic:
The Gathering, War card game)—See Player 1 Action, Player 2 Response,
Deterministic Resolve. Players can continue to take additional contingent
actions until they are unable to continue or choose to conserve resources for
subsequent use.
Action, Response, Randomized Resolve (Some War Games)—Players take
turns to act. The main effect of responses by other is to alter the initial action.
Simultaneous (Player 1 Action, Player 2 Action), Deterministic Resolve (Ace
of Aces, Toribash)—Simultaneous action is well suited to computer-based
play, but it has not been used very often, mainly, I think, because it is not familiar from either single-player computer games or multi-player traditional
games (because of difficulties in implementation). The security challenge with
this pattern is to ensure actual “logical simultaneity.” One of the interesting aspects of simultaneous action is that there is typically a rich range of outcomes
that naturally flow from the intersection of player choices.
Simultaneous Action (Player 1 Action, Player 2 Action), Randomized
Resolve—See Simultaneous (Player 1 Action, Player 2 Action), Deterministic
Resolve. Randomization perturbs a basic result from the intersection of player
choices.
Action(t), Deterministic Resolve (“Physics”-Based Games, Guitar Hero)—
The interest in these games comes from the procedural complexity of physical
systems. The problem, as noted previously, is that complex physical systems
can be modeled very well by a computer. They are also very vulnerable to automation. The most common error for real-time game systems is neglecting to
consider the “reset” time to recharge between actions, particularly when the
games are implemented over a network.
Action(t), Random Resolve (“Real-Time”-Based Games)—See the previous
bullet. These games really replace the abstract model for a physical system with
a set of game mechanics that are time based (and still are often tied to physical
system modeling). Often, the only real random element is a damage model.
Player 1 Action(t1), Player 2 Action(t2), Deterministic Resolve (Baseball and
Other Real-Time Reflex Games)—Typically, these games are associated with
physical systems. The main change is the potential for complex interactions
due to the actions of multiple players. Network lag and time models can sometimes be abused to “see” remote player actions before they happen, as discussed
previously.
Player 1 Action(t1), Player 2 Action(t2), Random Resolve—See Player 1
Action(t1), Player 2 Action(t2), Deterministic.
178
Protecting Games: A Security Handbook for Game Developers and Publishers
Deterministic Update(t)—Timed or triggered events, often seen in physics
games such as a dropping ball or weight or a timed elevator. The only concern
with this pattern is whether the update to the game’s state is supposed to be
hidden from the player(s).
Random Update(t)—See Deterministic Update(t). Randomization is used to
add complexity to the game experience. One could argue that some artificial intelligence systems for automated opponents are an example of this type of system, because their behavior is not quite deterministic.
Definitions:
Action—A decision and corresponding game play made by a game player (or
piece of artificial intelligence code taking on the role of a player) that impacts
the game. Actions can also be “secret”—where they are made at some time and
not revealed until later.
Response—A decision and corresponding game play made by a game player
(or piece of artificial intelligence code taking on the role of a player) that impacts the game that is dependent on the action of another player.
Simultaneous Action—A decision and corresponding game play made by two
or more game players (or piece of artificial intelligence code taking on the role
of a player) that impacts the game and occurs at the same time.
Resolve—The basic change to the game state that is a result of one or more
player’s actions, the pre-existing game state, the game rules, and any randomized resolution. This can be thought of the closing element of a “mini-game” or
“gamelet,” basic player interaction, or rules that cause a change to the game
state.
Randomized Resolve—When the resolve is affected by some sort of randomization. Given a set of actions, responses, and game state, a situation where
there can be more than one possible resulting game state.
Deterministic Resolve—The opposite of randomized resolve. When there is
only one possible resulting game state given a prior game state, player’s actions,
and responses.
Action(Time)—Player actions that occur at a specific time for “real-time” games.
Action1(time1), Action2(time2)—A real-time interaction model that allows
rich interaction between players.
Random Input—This type of randomization is very typical for traditional games.
These patterns can be assembled into a wide range of higher-level game-play
patterns.
Chapter 17 Game Design and Security
D ESIGNING
FOR THE
179
M EDIUM
Computers are an amazing tool for gaming that we are just beginning to explore.
The reemergence of multi-player gaming has provided opportunities for new types
of game play. There are so many game types, business models, and ways to interact
that it is impossible to neatly categorize computer games today. The key is to truly
understand the implications of the entire design and its environment. Eye of
Judgment for the PlayStation 3 took a paper collectible card game and combined it
with a video camera to create a new form of game play. Unfortunately, the developers seem to have neglected to consider the possibility that players would scan
cards and undermine the core collectible element of the game14. For many years,
online games were metered by the minute, just as online access was. This meant
“problems” like botting and gold farming weren’t nearly as big an issue, because the
game operator could recover their costs better and ill-gotten profits were constrained
by much higher connection costs.
Game protection can take advantage of innovations in game design. True replay
systems as found in the Prince of Persia series with its ability to rewind time or
replay an entire game as with Halo 3’s Saved Films feature can serve both the game
designer’s vision and become tools to strengthen security by helping detect
cheaters.
Careful consideration of security in game design may be the single most effective use of security resources. Many security problems can be avoided entirely
through good design practices. Conversely, bad design choices may make good
security impossible or exorbitantly expensive.
R EFERENCES
1. ferv0r (2008), “There Are Level 80s in Age of Conan,”
http://ferv0r.wordpress.com/2008/05/25/there-are-level-80s-in-age-of-conan/
2. J. Savage (2007), “Game Stopped After Cheat Allegations,”
http://www.thelocal.se/6788/20070324/
3. P. Pollack (2006), “Online “Banker” Runs Off with Cash, Avatars Cry Foul,”
http://arstechnica.com/news.ars/post/20060828-7605.html
4. J. McLeod (2008), “Königrufen,” http://www.pagat.com/tarot/koenig.html
5. Upstarts! (1982),“The Really Nasty Horse Racing Game”
6. S. Fallon (2007), “Confessions of an Online Scrabble Cheat,”
http://www.wired.com/culture/lifestyle/magazine/16-01/ps_scrabulous
7. E. Thorp (1962), “Beat the Dealer”
8. P. Lewis (2006), “For Sale for £1,000: Gadget that Means You’ll Never Lose at Roulette Again,”
http://www.guardian.co.uk/uk/2006/sep/16/gambling.mainsection
180
Protecting Games: A Security Handbook for Game Developers and Publishers
9. YouTube (2008), “Audition Bot—61 Search Results,”
http://www.youtube.com/results?search_query=audition+bots&page=2
10. T. Adams and Z. Adams (2008), “Dwarf Fortress,” http://www.bay12games.com/dwarves/
11. B. Harris (2006), “Dubious Quality—Dwarf Fortress Articles,”
http://dubiousquality.blogspot.com/2006/09/dwarf-fortress-1-prepare-for-journey.html
12. H. Söderström (2006), “Toribash,” http://www.toribash.com/
13. R. Garfield (1993), “Magic: The Gathering”
14. M. McWhertor (2007), “Eye of Judgment Card Creating Easier Than Expected?,”
http://kotaku.com/gaming/rumor/eye-of-judgment-card-creating-easier-than-expected-315714.php
18
Case Study: High-Score
Security
igh-score systems are one of the easiest and quickest ways to turn a singleplayer game into a social game. Achievements, ranks, ladders, and badges
can substantially increase interest in a game as well as foster player community, as seen at game portals like Kongregate. A high-score table is also an easy
way to get marketing data, encourage repeat visitors, and otherwise make the game
“stickier” than simply having a downloadable or simple online game. Many
businesses are taking this strategy to the next level by adding contests into the mix,
sometimes with large prizes.
H
C HEATING
IN
H IGH -S CORE G AMES
Sadly, cheating rears its head the moment you introduce this new feature. Players
will even cheat to get a high-score on an obscure website for the simplest Flash
game. These cheaters can undo all of your community and interest building
efforts—who wants to play a game with cheaters? Why compete for a high score if
you don’t think you’ll have a reasonable shot at winning?
Although this can be a nuisance for an independent game developer who is
simply showing off a new game, the problem becomes more serious for an advergame or a commercial game. The reputation of the sponsor, site operator, and
developer’s business and real money are at stake. Things get even more serious
when high scores are used for a tournament or if there are contests or prizes involved. (Note: If you are running a contest, sweepstakes, or a game with prizes,
please consult a lawyer. Even skill-based games are regulated in the US and internationally; See Chapter 31). Deloitte Touche Tohmatsu in the Netherlands did a
study tracking 40 Dutch advergames over a four-month period. The games, almost
all in Flash, were plagued by high-score hacks and leader board griefing (posting
crude, malicious, or defamatory names as high scorers). Several of the marketing
campaigns had to be shortened or canceled because of these security problems1;
see2 for the English translation.
181
182
Protecting Games: A Security Handbook for Game Developers and Publishers
High-score games are typically developed as single-player games that then post
the high score to a server. If the games are played in a browser, the security sandbox used by Flash, Shockwave (Director), Java applets, and DHTML/JavaScript
put real limits on both the computing power of the game as well as its ability to
access the resources of the computer. Often, the high-score feature is added as an
afterthought.
Because the high-score feature is often added late in the development process,
it is often a separate part of the game architecture. As a consequence, making
attacks on the “score” is easier. The security adage “if security is easy to add, it is
easy to remove” shows itself again.
What is the simplest attack on a high score? You simply send a better score to
the high-score server, ignoring the game entirely.
E NCRYPTION , D IGITAL S IGNATURES ,
AND
H ASH F UNCTIONS
The first solution that game developers typically consider is to use encryption, hash
functions, or digital signatures to send the score to the server. Often, the available
SSL library that is used is the one provided by the browser. Although an encrypted
or signed data stream on the network-side is safe, the problem is that the game
attacker controls the computer. This is not the security assumption that most
encryption and digital signature systems are designed for (including SSL). In a typical game scenario, the bad guy is an insider. So, how do you protect against him?
Let’s quickly review the available tools. Hash functions are mathematical functions
that, when applied to a data stream, produce a hash word. A good hash function,
like MD5 or SHA1, will produce a wildly different hash word from even a slightly
different data stream.
An encryption function uses an encryption key to transform a data stream into
a protected stream. Often, there is a decryption function that will use the decryption
key to transform a protected stream back into the data stream. In private key or
symmetric key cryptography, the encryption key and decryption key are the same.
In public key or asymmetric cryptography, the encryption key and decryption key
are different, and one is publicly known.
Finally, a digital signature function combines a hash function with a public key
encryption system to create a protected hash word. Another cryptographic tool is a
cryptographic checksum. Cryptographic checksums are similar to digital signatures
but they use private key cryptography to create a protected hash word.
Computationally, private key cryptographic functions tend to be a lot faster than
public key cryptography.
Chapter 18 Case Study: High-Score Security
183
What’s the problem with SSL? SSL, like any other external library or application
extension (accessed as a DLL or SO), has a local interface that can easily be
intercepted and modified. This form of interceptor is often provided with a software
development kit (SDK) as a debugging tool or it can be implemented as a custom
proxy. The interceptor allows data (in this case, the game’s high score) to be freely
grabbed before the high score is sent to the encryption library. Because the attacker
can get between the game and the encryption function, she can modify the game data
or even send arbitrary data to the security library: Encrypted “bad data” is still bad.
The fact that SSL is an external library is its biggest weakness compared to an
internally implemented encryption (or digital signature) function. An internal
encryption function will need to be attacked and reverse-engineered using a lowerlevel debugger. This is not impossible, just more difficult. The problem moves from
one of API interception to reverse engineering. The same is true if the hacker wants
to directly modify a game’s high score or internal state.
In order to attack the game’s state, the hacker would require a memory editor
(see Chapter 14). Most memory edit or map tools are pretty simple. They actually
don’t reverse-engineer the game; they simply watch the player run the game for a
while and isolate the changes that have occurred to the application’s memory footprint. The player then can read out the memory map of the game (or any other
application). The technique is both generic and effective for virtually any application
that runs locally on a specific computer.
Attackers do not necessarily have to attack the game’s score. Instead, they can
alter the score table constants associated with different actions that get rewarded.
For example, if destroying a common item is supposed to be worth 25 points, the
hacker could change that value to 2,500 in the game’s code image. Then, each time
the player destroys the item, they will get 100 times the score they would have
earned legally. A limited countermeasure for this type of attack is to post a vector
that passes the components of the high score to the server: number of hits on item
1, number of hits on item 2, and so on. Encrypting or authenticating this value may
make attacks a bit more difficult.
The problem with encryption, digital signatures, digital rights management
(DRM), and other software security solutions is that they are inherently weak
against a local attacker because the hacker has control over its platform. Simple
client-side security does not work because, for games, client software should be
assumed to be malicious.
After all of these concerns, if you still choose to use encryption or other clientside solution, do not hardwire the algorithm’s key. Hardwired keys are no different
from a security perspective than a hash function. Instead, use the key as a part of a
“challenge/response” system and send the client a key in real time to encrypt the
score (see Chapter 14).
184
Protecting Games: A Security Handbook for Game Developers and Publishers
Digital signatures are of no more value than a regular encryption system, in this
scenario. A signature is only useful if the data that it signs is accurate. By downloading the key in real time, the attacker will need to reverse-engineer your game.
However, do not be fooled; if the hackers are motivated, they will succeed. These
solutions are only a minimal fix to the simplest of attacks.
If you choose to use internal cryptography, you will face the general problem of
a lack of “interoperable” cryptography. Basically, it is necessary to find cryptographic libraries that work both with your client software (Flash and so on) as well
as with the backend (often PHP). Using a common cryptographic algorithm suite
does not guarantee interoperability and isolating implementation inconsistencies
can be very difficult.
C LIENT -S ERVER O PTION
The next option is to implement the game in an actual client-server configuration.
This design approach implements the game as if the part that is downloaded is a
“smart terminal” that provides a nice interface to a game that is hosted on the
server—the same approach used in many MMOs. This actually stops most forms of
client-side cheating, but potentially has a large overall system impact compared to
a simple, downloaded client. After all, instead of a single download (a natural for
web servers), the server needs to interactively update the game based on player actions. This will likely add many additional connections to the server as well as additional processing on the server. Also, the developers often have completed the
game as a standalone game and the high-score system is added later, making this architecture change impractical in many cases.
R ANDOMLY S EEDED C LIENT
A hybrid solution is to implement a randomly seeded client. This approach works for
games that are not entirely deterministic (see the discussion of puzzles, later in this
chapter). Basically, there are two components to this approach. First, the server periodically and non-deterministically updates the client’s random seed. Second, the
client must store a log of the game action/state sequences. If players claim a high
score, they need to post the game logs and validate that the game session could have
yielded the posted high scores. This system is probably not adequate for contests,
but is probably good enough for free, pure-entertainment games.
Chapter 18 Case Study: High-Score Security
185
A LTERNATIVE H IGH -S CORE S TRATEGIES
There are other options to ensure the integrity of the game service, if not the high
score itself:
Buddy High Scores—Instead of having a single high-score system, it is possible to divide high scores into geographic, friends/social networks, and other
ways to give more players a chance to earn a high score. A “buddy-high-score”
system works well from a marketing point of view and makes cheating irrelevant (the benefit of cheating your friends is much lower than the ego reward of
earning the high-score globally).
Challenge/Response Score Posting—As noted previously, external encryption
services are not effective in protecting against even a slightly motivated
attacker. An internally implemented challenge/response system can be easily
integrated with an existing game (in fact, we have a version for Flash and PHP
at SecurePlay.com). As with many of these solutions, this approach is suitable
for casual games, not for contests.
Face-to-Face Competition—Depending on the business model being used, a
local high score can be used as a gateway to face-to-face competition. The
prospect of a face-to-face competition can be both a positive marketing tool
and a substantial deterrent to cheating. Public humiliation is a powerful threat.
False Games—Contests don’t need to have a truly functioning, public highscore system. Instead of using the game result and score for a contest, set a low,
minimum threshold score to qualify for entry into a drawing. The benefits of
cheating go way down, as any reasonably good player will be entered in the
drawing (arguably, the game score gateway is simply a way to convince players
that they should disclose their personal data to be entered into a drawing).
Faux Multi-Player Gaming—It may be difficult and expensive to move the
game onto the server and implement real client-server gaming. However, in
some cases, it might be much easier to use other game players as “faux
servers”—where the game and game state is coming from another player’s
computer. This might be easier to implement, as platforms like Flash include
object-replication tools. Basically, each game client runs two or more game
instances: one instance that drives the local display and captures player actions
and another instance that acts as a server engine for another, remote player.
The players either use the central game server as a relay or communicate peerto-peer. There are numerous, tricky details to this approach, but it may be
worthwhile for higher-value games where a developer does not want to move
to true server-based gaming.
186
Protecting Games: A Security Handbook for Game Developers and Publishers
Implicit Score and Player Data Authentication—The game developer can include implicit features in the game design that are not “known” at all on the
client, but can be checked only on the server. For example, a race may have a
certain hardwired minimum time or certain delays that are implicit to the game
design. These features can provide a way to detect illegitimate scores; however,
these techniques are also very vulnerable to detection and analysis by a motivated foe.
Replayable Game Logs—Traditional computer games are increasingly using
true game-play logs that allow the game to be recorded and replayed. Although
some lightweight browser languages like JavaScript and Java do not allow applications to store data on the platform, others like Flash do. Even without the
ability to save a game, it is still possible to store a game log during play. If a
player submits a suspect high score, the game server can then request the game
to upload its full game log to be verified. Ideally, the game log should be able to
be fed into another copy of the game and used to drive the game instead of the
mouse, keyboard, or controller. This can be used to visually detect game anomalies, but is no guarantee against a serious cheater.
The biggest challenge for protecting high-score games is not the lack of available options. Rather, the problem is that high scores are an afterthought in many of
the games; this fact makes it difficult to add effective security features retroactively.
P UZZLES , S KILL -B ASED G AMES ,
AND
O THER D ETERMINISTIC G AMES
As discussed in Chapter 17, puzzles and games that have strong or dominant game
play strategies or are dependent on physical skill are poor candidates for games with
a high-score or competitive element because they are often automatable. Malicious
players can create bots or support programs to have a superior game-play strategy,
speed, or solve the puzzle optimally. These games are fine in “for fun” settings
without high scores, but once high scores or multiple players are involved, they are
often attacked.
There are tools to detect bots or even try to discern the use of game aids, but it
is ultimately impossible to distinguish between optimal play from a human and
optimal play from a machine. Also, bots will be able to be hidden in a manner that
is undetectable (see the sidebar in Chapter 13 on virtualization).
Chapter 18 Case Study: High-Score Security
187
I NAPPROPRIATE P LAYER H ANDLES
The full discussion of griefing comes later (see Chapter 21). However, simple highscore games are beset by annoying at best, or disturbing at worst, inappropriate
player handles associated with players’ high scores. Most high-score games let players choose how their name will appear on the high score list—their player handle.
Unsurprisingly, many of these handles are obscene, insulting, or infringing on
copyrights and trademarks. The problem is even worse if the high-score system has
been hacked. I was told about a case where a bank had an online game which was
hacked and the pranksters used the opportunity to mock the bank and its poor
security practices via the compromised high-score table. Filters, notifications, and
voting schemes can be used to cost-effectively remove inappropriate names.
However, it is likely that any such system run by a company should include some
level of human review. Contests do have a slight advantage, as inappropriate player
handles can be grounds for disqualification.
S UMMARY
High-score systems are a great way to build the popularity of your game.
Unfortunately, cheating follows right behind. The problem may be simply a nuisance if the game is provided for entertainment purposes. In some cases, it may be
better to forgo the advantages of a high-score system than deal with potential
adverse consequences. Also, the level of threat against a game jumps dramatically
once there is any sort of prize or cash involved. Sadly, it takes very little motivation
to bring out the cheats and vandals.
R EFERENCES
1. Deloitte Touche Tohmatsu (2008), “Advergames op Grote Schaal Gehackt,”
http://www.deloitte.com/dtt/press_release/0,1014,sid%253D13354%2526cid%253D202819,00.html
2. S. Davis (2008), “Serious Advergame Hacking Problems: Deloitte Touche Tohmatsu Netherlands
Survey Findings,” http://www.playnoevil.com/serendipity/index.php?/archives/2107-Serious-AdvergameHacking-Problems-Deloitte-Touche-Tohmatsu-Netherlands-Survey-Findings.html
This page intentionally left blank
Part
IV
Social Subversion: From
Griefing to Gold Farming
and Beyond with Game
Service Attacks
In this part, you’ll find the following topics:
Chapter 19, “Overview of Social Subversion”
Chapter 20, “Competition, Tournaments, and Ranking Systems
(and Their Abuse)”
Chapter 21, “Griefing and Spam”
Chapter 22, “Game Commerce: Virtual Items, Real Money
Transactions, Gold Farming, Escorting, and Power-Leveling”
Chapter 23, “To Ban or Not to Ban? Punishing Wayward Players”
189
19
Overview of Social
Subversion
ou’ve made your game and designed it carefully. You’ve considered cheaters
and hackers, avoided exploits and engine problems, and yet, after your game
goes “live” online, everything falls to pieces.
Y
Welcome to the world of game service attacks.
Cheaters and hackers are increasingly attacking the “game around the game”—
not the game itself, but the other features of the online service. These attacks
violate the social norms and social context of the game and, often, its “terms of
service.” Some people will call many of these activities cheating. The main difference between game service attacks and traditional cheating is that these attacks
cannot be detected by the game itself as rule violations. They are slipperier and
more difficult and costly to control and they rarely can be stopped completely.
Most of these problems stem from weak identity and accountability—if no one
knows who you are, there is nothing to stop you from behaving badly.
Tournaments are growing rapidly in popularity. These services take basic highscore systems and add richer competition for multi-player games. Tournaments and
various forms of in-game competition wrap a game with a lobby or matchmaking
service and track game results. Just as players will cheat at a free Flash game to get a
high score, they will abuse lobbies and competition services for their own purposes.
Griefing and spam exploit communications systems as well as the rules of the
game. Communications abuse ranges from commercial spam, in many cases for
gold farming or other game commerce services, to verbal abuse, cyberbullying, and
sexual harassment. Griefing players take advantage of game play systems, reputation systems, and, in some cases, the anti-griefing systems themselves that are put
in place to handle customer complaints. Griefing behaviors can range from theft of
other players’ assets or experience (ninja looting and kill stealing), to disrupting the
game play of others (corpse camping), and exploits of game system quirks (spawn
camping). Certain games allow players to create content, such as Second Life and
IMVU, and, inevitably, players have found ways to abuse these services with attacks
ranging from fairly standard griefing and abuse to denial of service attacks.
190
Chapter 19 Overview of Social Subversion
191
There are people with more time than money, and others with more money
than time. In persistent games, this has resulted in unauthorized game commerce.
Trading is a powerful social tool. Unfortunately for many game developers, players
use in-game trading and gifting systems for real economic purposes. Gold farming
is probably the most widely discussed of these problems (wherein players buy and
sell virtual items and characters), but there are also outsourced services that will
play on behalf of a player (power-leveling), and escort services where paid, skilled
players play along with players to help boost their skills or acquire certain items.
Once a cheater or game service attacker has been caught, the standard impulse
is to ban the person from the game. There are other options and some negative
consequences from banning and there are real questions as to banning’s effectiveness
in deterring game abuse.
There are quite a range of game service attacks and, fortunately, corresponding
countermeasures. However, there are few standard solutions to these problems, as
the game service security weaknesses often are closely tied to specific business,
implementation, and operations choices.
20
Competition, Tournaments,
and Ranking Systems
(and Their Abuse)
istorically, computer game developers have focused more on single-player
games than multi-player experiences. This is largely an artifact of the evolution of personal computing and network technology. For thousands of
years, games have been predominantly multi-player experiences with the exception
of solitaire card games and puzzles.
H
Although cooperation is sometimes an element of gaming, competition is
deeply ingrained into its rules and language. There are very few games that don’t have
some sort of notion of “winning,” even if the game has only one player. Wagering
and rewards have long been tied to games—after all, the Bible’s Book of Job is centered on a proposition bet between God and the Devil. Players are encouraged to
earn the most points, finish the game most quickly, and get the high score.
With the emergence of online computer games, competition and tournaments
are rapidly growing in popularity. As discussed in Chapter 18, high scores can invigorate the audience for a single-player game, but they can also inspire abuse.
Multi-player game competitions are more interesting and varied than singleplayer high-score services. Lobbies, ranking systems, and tournaments are varied in
form and targets of a wide range of attacks.
U NDERSTANDING T OURNAMENTS
AND
R ANKING S YSTEMS
In order to understand the attacks on game competition, it is worth reviewing how
a variety of these systems work. Although most game players are familiar with
sports competitions, the growth of online play has introduced several new types of
ranking systems. There is surprisingly little good discussion about how these
systems work from a practical perspective, but Christopher Allen and Shannon
Appelcline have put together a number of excellent articles on the subject at
Christopher Allen’s blog, Life with Alacrity1.
192
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
193
There are two essential types of ranking systems:
Closed Ranking or Tournaments—These ranking systems are built around a
limited pool of entrants (restricted either by total population or a specific registration period). They use some process to rank the entrants or determine one
or more victors. There are a number of types of tournament formats, including2:
Single-Elimination—A tournament where players are removed from
the tournament as they are defeated. Only the top player is ranked, not
any of the other participants.
Consolation—A tournament where players are moved to a “consolation” single-elimination tournament after they lose once. Once they
lose a second time, they are eliminated.
Double-Elimination—Very similar to the consolation tournament,
but players enter more senior brackets, based on how far they proceed
through the brackets in the single elimination tournament. If a team
successfully won three rounds, but then lost its match, that team would
enter at the third round of the consolation tournament, rather than at
the first round.
Up and Down/King of the Hill—Participants all play for a fixed period
of time. The leader or victor at the end of the interval progresses
“upwards” toward the top position and the losers move “down.”
Swiss—Participants all play in a set number of rounds. Players play
against others who have done comparably well, but the final result is
based on a total score, with victories worth 2 points, ties worth 1 point,
and losses worth 0 points.
Round Robin—Participants play all other participants a fixed number
of times (rarely more than two), with the participant with the most
victories crowned the winner.
There are numerous variations on these competitive schemes. A tournament
can also combine different tournament schemes, such as an initial round robin
phase, followed by a single elimination tournament for the top performing
round robin players. For tournaments with gambling, there are also variants
where players can buy back in to the tournament again or purchase additional
chips to continue to play 3, and as well as take advantage of other options4.
Open Ranking or Ladders—These ranking systems can accommodate an
unlimited number of participants or a limited participant pool over an extended
period of time to establish the participant’s relative status. Open ranking
systems are used in applications outside of gaming, most notably for reputation
and rating systems5. Well-known ranking systems include ELO and Glicko for
Chess; Xbox Live’s TrueSkill; and eBay’s rating system.
194
Protecting Games: A Security Handbook for Game Developers and Publishers
The two types of systems can be used together and interact over time. Most
professional sports teams are ranked from year to year, but also compete through
some sort of tournament system for a final victory. In U.S. college basketball, there
is an ongoing ranking system on a national basis that determines invitations to the
NCAA or NIT tournaments (sort of)6.
There are four major purposes for ranking systems:
Ranking/Serializing—Placing the participants in some sort of order and, for
ranking systems, tracking that order over time.
Grouping/Grading/Thresholding—Grouping the participants into categories
(one to five star systems, grades A to F, and so on). This is the dominant approach used for rating and thresholding systems.
Matchmaking—Competitive systems need a way to match different participants
and reward victors and penalize losers. Matchmaking systems determine who
competes. They can be structured in different ways. In a single-elimination
tournament, participants with higher ranking are matched with players with
lower ranking to increase the likelihood that the highest ranked competitors
will compete in the final match. Thus, the top ranked participant initially
competes with the bottom ranked participant, the second ranked participant,
with the second lowest ranked participant, and so on. Additionally, the highest
ranked and second ranked participants are in different brackets so that if they
win all of their matches, they will reach the finals and compete with each other.
Conversely, ongoing ladder systems tend to match participants with comparable skills to try to ensure a fair competition (each competitor having a nearly
equal chance of victory).
Handicapping—These systems typically give increased rewards for players
who defeat higher-ranked foes. Conversely, in systems like golf’s, a handicap is
a balancing system to basically allow a lower-ranked player to compete with a
higher-ranked player.
The attacks on tournament and ranking systems, discussed later in this chapter, are highly dependent on the specific purpose of the system. Careful design can
avoid many problems. For example, the online game A Tale in the Desert first used
the eGenesis Ranking System7, which attempted to limit the ability of players to create free accounts to boost their ranking by minimizing the effect of competing with
players with new accounts (basically, you could earn a maximum of eight points
from a new player, but could earn substantially more from an experienced player),
but later moved to a very different approach with its Tournament Ranking System8.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
195
This latter system works in a similar manner to the “master points” system used in
Bridge where players really only compete with other players at the same rank and
compete to earn additional points towards advancing towards the next rank. The
only real differences are that a player cannot compete multiple times at a given rank
and tournament with another player. Also, it is possible for a player to lose too
many competitions, in which case she can either start again at the lowest rank or no
longer compete within that specific tournament.
L OBBY A TTACKS
Before players enter a game, they use a lobby service to set up matches—either with
opponents of their choosing, or, for tournaments, based on algorithms and procedures provided by the game service. Hackers attack the matchmaking service itself
or its underlying ranking or handicapping system to position themselves to gain an
unfair advantage: A hacker could try to boost her chances of winning cash or prizes
by entering a contest an excessive number of times or create multiple accounts that
“compete” to boost the rank of a chosen account. Conversely, the cheater could
appear to be incompetent and lose often to set up suckers for a sting in a game for
money—just like a pool shark.
TOURNAMENT
AND
LOBBY SPIKING
Although randomized match-ups are theoretically strong, it is an interesting question whether teammates, or opponents for that matter, could collude to enter the
matchmaking lobby within a narrow time window and thus increase substantially
their chance of being matched together. After all, if ranked games are being run
continuously, there are going to be times when the game lobby is going to be relatively empty. Or, even with a relatively popular game, highly synchronized lobby
entry can overwhelm the matchmaking system’s randomization process. The larger
the team, the more effective this tactic will be. A weighting system that adds an
anti-correlation component (to ensure that players haven’t played together before)
and a measure that considers how many games someone has played (to address
disposable identities) added to the tournament ranking system could help reduce
the effect of team play. Another strategy may be to allow all players to play multiple games concurrently (this strategy works better with thoughtful and leisurely
games, as opposed to fast, reflex-based games).
196
Protecting Games: A Security Handbook for Game Developers and Publishers
ENTRY SPREADING
For continuous tournaments or ladder systems, players can “spread out” their
entries to move more rapidly up or down a ranking system. A closed tournament
matches players based on seeding or a random draw. However, it is possible, in an
open ranking system or a tournament that allows players to join over a substantial
period of time, to disperse a team of players uniformly across a large population.
Depending on the ranking scheme, these anti-correlated players can build “good”
reputations independently of each other and subsequently coordinate and play
together to accelerate the ladder performance of a few selected members.
RANK BOOSTING
AND
BUSTING
Once players have been able to be matched with whom they wish, they can then
“boost” the rank of a designated player or group of players. This is possible if the
tournament uses an open lobby, the game has a ladder ranking system, or they
overwhelm the lobby. An NBA player, Gilbert Arenas of the Washington Wizards,
was caught colluding with another player by taking turns winning game events to
boost his rank in Halo 3 9. Players can also achieve the same objective by using bots
rather than finding other colluding players for some online games.
It is a good idea to test your tournament structure against various rankmanipulation strategies to see how many cooperating players it would require to be
effective. Although players may attack tournaments just to get a high rank, tournaments with cash or prizes are the prime targets for boosting.
The other goal of a cheating player may be to rank higher in a less competitive
tournament—becoming the “best of the worst” in a junior or amateur tournament
rather than having to fight and likely not win in a more seasoned competition.
This is especially appealing for games where money is involved—a tournament
variant of a pool shark.
These attacks are all quite difficult to counter. They are all, effectively, varieties
of collusion and take advantage of weak identity systems, particularly when games
are online. Clever design of a ladder system or tournament may minimize the impact of several of these attacks. For tournaments, bringing players in for face-toface competition will often make it much more difficult for players to hide their
identities. Platform identities and signatures may be effective in determining
patterns of play that can help uncover these groups of players or accounts.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
S YNDICATES
AND
197
B OTS
Tournaments and ranking systems create a structure on a social group. There are
two ways to undermine these structures: with an organized team of individuals (a
syndicate) or virtual individuals (a set of bots). Svenska Spel’s lottery game, Limbo,
was undermined by groups of players colluding to select different entries, a variant
of the entry spreading attack where the players ensured that their lottery entries had
different values to increase the group’s chance of winning10. The online game
OutWar was targeted by a massive botnet of at least 30,000 compromised computers to help boost two players’ ranks11.
Tournament cheat bots fall into two categories—winbots and lossbots—and
are the direct counterpart to human syndicate members helping boost or bust a
teammate’s rank. In 2005, Blizzard banned 4,000 players from Battle.Net for using
lossbots and ladder abuse in Warcraft III12. Of course, bots can also be used to
simply cheat against other players in a tournament or boost a player’s rank, as
discussed in Chapter 15.
T OURNAMENT
AND
L ADDER G AME P LAY A TTACKS
There are certain attacks that can occur against a game because it is being played in
a tournament or as part of a ladder-ranking system. These are not really attacks on
the game itself but on the game’s context. Although Brain Age may be a fine singleplayer mental skill game with its mini-games based on basic mathematics and logic,
it would fail utterly in an online, multi-player, competitive environment where
players could use calculators and other player aids.
COLLUSION
Players can cooperate together when it is forbidden by game rules to gain a competitive advantage. This is a problem for multi-player games in general, but can be
even more problematic when tournaments or rankings are involved. For example,
collusion in a two-player game is meaningless unless there is a larger group ranking system that can be attacked. Usually, boosting and busting rankings can be
easily carried out by groups of colluding players; the larger the colluding syndicate,
the better.
198
Protecting Games: A Security Handbook for Game Developers and Publishers
GAME CONFIGURATION
Games played with small groups of competing players are very common in online
gaming. There are a couple of very practical reasons for this: It is easier to design a
competitive game that works with a smaller number of players rather than a large
number. Also, it is very difficult to bring together a large group of players and keep
them playing at the same time, particularly online. First person shooters, racing
games, sports games, and strategy games are usually played with modestly sized
groups (rarely more than 16 players, often 8 or fewer players).
For a game service provider, these sorts of games can be operated very inexpensively, especially when the players use a local computer to act as the game server
or when the game operates as a pure peer-to-peer network. Player-operated servers
and peer-to-peer architectures have the substantial advantage of pushing all of the
computing and networking resources onto the game’s players while only leaving a
small lobby, status, and persistence service at the game operator’s location.
Sometimes, game operators let too much control devolve to the players. In
Battlefield 2, players cleverly configured their local game servers to give them an
unfair advantage in the game’s overall ranking scheme (the exploit was really a flaw
in the game’s scoring system that ranked players much higher if they used “lowertech” weapons like knives rather than guns)13. All players need to be able to independently authenticate a game’s configuration and state, whether the game is
configured as client-server or peer-to-peer architecture. The game developer or
operator should also be able to extract an audit record of a game from any and all
players. This may not prevent all ranking system manipulation, but could help
identify gross abuse by players who post scores for game wins or losses that were
not actually played.
GHOSTING
Increasingly, game developers are adding an “audience mode” to their games. This
mode allows the game to be viewed from a number of perspectives and often supports replay and recording features. This is due largely to the rise of cybersports and
machinima and has mostly been a boon to the industry. Additional game observers
can create security problems, however. In the real National Football League, the
New England Patriots were caught using cameras and electronics to read the communications between players and coaches of their gridiron foes14. Audience mode
tools can be used by colluding players or players who hack into a game server to
achieve the same objective. The best countermeasure is probably introducing
a communications delay before sending information to the game’s audience.
This will almost certainly not be effective if a player is hosting the game server.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
199
More sophisticated blackout systems are likely to be technically difficult to implement and tempting for hackers to circumvent.
These attacks are basically exploits of the tournament or ranking system and
need to be countered as such. Although technical countermeasures may sometimes
be able to detect these hacks, they are difficult to isolate, by their nature. Ghosting
weaknesses are best thwarted by changing the tournament or ranking scheme and
rules, just like game exploits.
A BANDONMENT : T HE “G AME O VER ” G AME
One part of the game code is of particular concern for both the game operator and
the game developer—the “game over” game code. Networked games can end for a
number of legitimate reasons, but also for illegitimate ones. Dropped connections
and computer failures are too common to be simply ignored or arbitrarily punished. Game developers and providers also need to be concerned about players
abandoning a game to avoid a loss and reduction in ranking (called stat guarding).
This has been seen in the Ultimate Online Baseball MMO. Certain players (derisively called stat babies) in Netamin’s game abandon their games when it looks like
they may lose and damage the statistics of their pitchers or hitters15.
Malicious players can abuse a game’s “game over” logic, and even the game
abandonment code to their advantage. Depending on how the “game over” logic is
implemented, malicious players may be able to force the game to end when they
have an advantage or to use their preferred scores as the authoritative source for the
game. Players may even abuse the game abandonment system to make it look like
the other player has abandoned the game—and trigger the game score system to
punish the other player accordingly. The ideal approach is for the game to periodically establish a “certified game state” that can be used to replay or finish the game
at a later date (ideally, this would be done continuously).
Players can also attempt to report false scores and delay reporting of undesirable game results to manipulate a ladder or tournament system. A final problem
occurs when players make side wagers on game results. This is not something that
a game operator can handle directly, but it is an issue that they should be aware of,
because these side wagers can substantially alter the behavior of the players. It may
be more profitable for players to lose the game and distort the ranking system if the
side bets are large enough (or there is little value in having a high rank in the ladder).
Unfortunately, there are no magic bullets for these problems. Trustworthy
game logs may help, but games need to be examined on an individual basis.
200
Protecting Games: A Security Handbook for Game Developers and Publishers
ZERO-SUM SCORING
Abandonment is a particularly tricky problem for online games. The essence of any
solution is to make it more advantageous for a player to complete a game, whether
or not they win. A metric that simply rewards players for completing more games may
help. One also needs to look at how a game is scored internally. Games that have
asymmetric scoring systems (a term I’m making up as far as I know) are particularly
vulnerable to this form of attack. An asymmetric scoring system is one whereby one
player can score independently of the other players. Baseball is a good example. Runs
are earned by a given team, as are individual statistics, without direct corresponding
consequences for the other team or players.
Many games can be configured so that the game’s scoring system is “zero-sum” or
symmetric scoring. Each positive event for one player is balanced by a negative event
for the other player(s). Thus, a game will have a net score at all times of zero. In many
cases, this allows the game to end at any time and still be considered valid.
One game that uses this type of scoring system is the Austrian tarot card game
called Konigsrufen. The problem we encountered when playing the game was that
we never had the exact right number of players for the game. The game requires four
players, but we often had five or six, but never enough for two full tables.
This was a group of mathematicians, so, of course, they had a mathematical solution to the problem: zero-sum scoring.
If I scored 300 points in a hand, each other player lost 100—making the hand net
out to zero, so that the odd-mathematician-out could play the next hand while keeping the game score working for the whole evening. This is a powerful and flexible
concept.
So, if there are W winning players and L losing players, and the total reward is R,
then:
R = W*r = L*(-p)
Thus, each winning player will receive:
R/W = r reward points
and each loser will lose:
-R/L = p penalty points
Overall standings are based on players’ individual scores. Although the sum of the
players’ scores is zero, their individual scores can vary widely.
This technique may not always be applicable but it can be an effective technique
to minimize the consequences of game abandonment. Also, because the game is always at “net zero,” the game service may more easily support late player substitutions
or replacement players joining a game session to improve the game play experience
while not punishing (or excessively rewarding) late players.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
201
G AME O PERATOR P ROBLEMS
Game operators don’t like to think of themselves as a source of game problems, but
players certainly do. The most important asset a game provider has is her reputation. In order to avoid damaging public relations, game service providers should be
prepared for accusations from disgruntled players.
BIAS
Because of the nature of the games that they are offering, game providers often have
insider knowledge that would give a favored player a real advantage in a game.
Also, if there are games played in competition with the game provider, there can be
tax advantages to reducing apparent winnings by colluding to lose to a cooperating
player. (This is a concern that regulators sometimes have with casinos. Casinos are
taxed on their winnings, so sometimes a greedy casino will arrange to lose to a
player and thereby reduce its taxes. The casino then arranges to share the ill-gotten
winnings with the corrupt player.)
The MMO EVE Online faced accusations that members of the game developer’s
staff were giving their team (corporation) an unfair advantage in the game16. The best
strategy to avoid this problem is to simply not allow developers, their friends, family,
or anyone else personally or professionally associated with the game to play. I’ve had
this debate with several developers who’ve objected strongly. If developers must play,
it should be separately and they should clearly identify themselves. Also, they should
be subject to quite rigorous logging. Even the appearance of impropriety can be quite
expensive. The loss of only 100 subscribers due to damaged reputation for virtually
any MMO would likely exceed almost any employee’s annual salary.
INSIDER PLAYERS/SHILLS
This is a problem associated with closed tournaments, skill games, gambling games,
or other games for money. It is a more extreme version of the bias problem,
whereby the game provider intentionally seeds the game with insider players and alters the game for the game provider’s benefit.
PAYMENT ABUSE/TILL FRAUD/RAKE ABUSE
If the game service has payments involved, there are opportunities for payment
abuse. A game company that shaves a nickel here, a penny there, and a dime somewhere else can easily and stealthily earn substantial undeserved revenues (the general
term for this in the computer security field is a “salami attack,” in which many
individuals do not notice very small amounts of fraud but the aggregate amount
stolen can be quite large).
202
Protecting Games: A Security Handbook for Game Developers and Publishers
Game providers should provide clear payment tables that are always available
to players and full and detailed accounting records for the player’s review. It would
be optimal to provide an independent audit on the player’s platform, but this is not
always practical. An outside auditing firm in support of well-documented processes
and procedures and other measures can help build a reservoir of trust.
This type of attack could easily be implemented in virtual asset games by providing smaller amounts of virtual currency than promised to players, removing a
small amount of virtual currency or items from a player’s existing virtual holdings,
or altering virtual asset prices for non-observant players. This can happen with real
items, not just virtual assets. The use of electronic point-of-sale software has made
it possible for crooked business owners to take funds, without reporting income, by
using programs called zappers17. Basically, zappers create fake transactions from a
malicious company’s business partners for the purchase of items or they alter the
price of items. The zapper manipulates the entire accounting system to allow a
crooked business owner to extract cash without ever reporting it as income but still
have clean books for auditors and tax collectors.
ULTRA-VIOLENCE/ACTION HANDS
In games where variable rewards or payments are involved, the game provider may
be able to make the game more “interesting” and hence increase payments by players to the game operator. In this case, the game provider doesn’t really care who
wins, just that there is more activity than would be occurring normally under the
game’s rules. There have been accusations that some online poker sites have a bias
towards dealing hands that will encourage a lot of player wagers, thereby earning
the game operator more money from increased wagering.
Reputation is critical for a game provider. Anything that can damage the game
operator’s reputation can be very costly very quickly. It is important for game providers
to avoid even the appearance of impropriety. Also, as the (online) game industry
grows, it will be important for companies to cooperate and develop best practices
and perhaps even certifications to protect the whole industry from flawed practices
or individual bad apple companies that could turn into government regulation or
result in lawsuits.
I DENTITY P ROBLEMS
Identity becomes much more important once one moves to a rich online game service (see Chapter 29). The simplicity of developing a casual single-player game and
hosting free standalone games becomes substantially more complicated when other
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
203
players become involved. Undermining identity is a critical part of many of the
attacks discussed so far. There are many ways to weaken identity and some of
the problems can have particularly serious impact on tournaments and ranking
systems:
Invalid Licenses/IDs—Both paid and unpaid games often use a license key or
platform ID as part of their identification system. For performance, storage,
and business reasons, these keys are sometime not issued and validated individually, but generated by an algorithm. Malicious players can steal keys,
duplicate them, or break or reverse-engineer the ID authentication algorithm
(see Chapter 5). As discussed previously, there are ways to ensure the security
of license keys and recover from compromises—but the techniques are game
service specific.
“Alt” IDs—Free online game services often permit, or do nothing to stop, the
creation of multiple identities. Players can use these additional identities to
increase their chances of winning or boost their rank with lossbots. Positive
incentives can be used to encourage honest registration of identity, such as prizes
or loyalty programs.
Outsourcing—Players sometimes recruit or hire other players who are good at
a game to play for them to boost their score. This is offered as a commercial
service, just like gold farming, for several massively multi-player online games
including World of Warcraft, but it has also been reported with players hiring
other players to boost their rank in ladder systems for casual games. There is
not much that can be done to prevent identity outsourcing (see the section in
Chapter 22 on power-leveling).
Game Save Sharing—Some games store the state of the game or other persistent information locally. This data is sometimes exchanged with other players
to boost statistics or otherwise enhance play. This has occurred on the Xbox
360 console to boost achievements in the Xbox Live service. If the game or console needs to support storing these files, the files should be cryptographically
tied to a specific platform or user account (see Chapter 14).
Strong identity can mitigate many online game security problems, including
those associated with tournament and ladder hacking. Interestingly, cash and prizes
are great tools to encourage better reporting of identity information by players and
can easily be tied to competition and ranking systems. At the same time, cash and
prizes substantially increase the value and likelihood of attempted attacks. There
are advantages and risks with either approach. Strengthening identity is generally
quite useful and there are often solutions to reduce the effectiveness of attacks on
games, as discussed in Part III.
204
Protecting Games: A Security Handbook for Game Developers and Publishers
C OUNTERMEASURES
There are numerous ways to protect tournaments and ranking systems against
attack. What follows is a list of tactics that may (or may not) be applicable to your
specific environment:
Buddy List or Guild High Scores—Rather than having a single, global highscore system, use buddy list high scores. In order to implement this tactic, the
online service will need to keep track of all the pair-wise scores and reporting
status in a localized buddy list or guild. Because scores are only published
within a local community, spurious accounts and results will not cause meaningful problems. Buddy list scores can serve as a recruiting tool. Likewise,
giving players the ability to track their relative status with their friends may help
build the online community and virally expand as players recruit their friends.
Buddy list scores can also be used for guild versus guild or team competition,
tournaments, and so on.
Paid Versus Unpaid High-Score Systems—If there is an economic or other
model tied to the game, you publish only the high scores for those who are
actually helping your business by paying. This can even be tiered based on how
much money the person has spent.
Levels of Competition/Bridge Style Rankings—The card game Bridge has a
ranking structure based on multiple tiers. Thus, one moves from player to
master to grand master, and so on. For an online game with weak identity, this
structure can be used to radically drive up the cost and effort to spoof the highscore system (and is similar to the approach used in the tournament ranking
system in A Tale in the Desert, discussed previously). For example, in order
to move from player to master, the player must defeat 10 other players; in
order to move from master to grand master, the master must defeat 10 other
masters. (You can add more levels as desired; martial arts rankings have a “belt”
system that supports quite a number of levels.) For a legitimate player, the
minimum number of games to move from player to grand master would be 20.
But for a spoofer who was creating phony losing accounts, the number of
games would be 120 (10 fake players to move to master, 100 fake games to create 10 more masters, and 10 more fake games to get to grand master). As always,
strategies can be combined and there could be a conventional leader board at
the top level (the grand master). Additional twists can include:
1. Uncount scores if the opponent becomes inactive for 30 days.
2. For server-based games, you can track the duration of games to see if
they are unusually short (for time-based games) or fewest turns (for
turn-based games). You can then throw out games that are too short,
once you have data on typical or expected game lengths.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
205
Cash and Prizes—As noted several times already, the possibility of winning
something tangible is a powerful incentive to disclose identity. The prize doesn’t
even have to be very large. The downside, also as noted previously, is that valuable rewards encourage hackers.
Natural Achievements—For games that have achievements, rather than hiding
achievements like Easter eggs around the game, have these achievements based
on natural game activities and spread them out smoothly throughout the game
to reflect thorough and masterful play. Some games have used “unnatural
achievements,” such as playing an excessive number of times, that may wind up
costing the game operator money if the player overuses the service.
Impersonal Global High Scores—Global high scores can be listed, but not
globally attributed to the player. Thus, only a player’s game friends would know
their score (if used in conjunction with buddy lists). This may weaken the urge
somewhat to cheat, because the player needs to work harder for notoriety. The
downside is that this may reduce the value of the high-score service.
Randomized Matchmaking—There are real benefits to randomizing players
for ranked games. Player teams, such as clans or guilds, can add complexity to
this, as individual performance could add to the group’s ranking. Game operators need to be careful about lobby-stuffing tactics.
Face-to-Face Play—There is no reason that the only way to earn scores is
online. It can be a powerful marketing tool, and a deterrent to some attacks, to
invite local and regional high scorers for a face-to-face tournament where
additional rewards can be earned through live, face-to-face competition.
Server Scoring—Move the technical score accumulation process to the server
to certify the scoring process for the game. This should cause a lot of trouble for
a number of the exploits discussed so far, particularly game save sharing.
Time-Based Rank—It may be possible to thwart some players who use lossbots
or other methods to lower their ladder rank by including an additional attribute
for how many minutes of play or total game sessions the player has participated
in. Apparently, Microsoft and Bungie are incorporating this technique to help
fight leader board cheating in Halo 3 18.
Grouping Cheaters Together—Segregate rankings for cheaters and non-cheating
players into separate systems. Neither group really needs to see the other.
Blizzard incorporated a variant of this tactic into Diablo II on Battle.Net19.
206
Protecting Games: A Security Handbook for Game Developers and Publishers
R ETROFITTING G AMES
FOR
T OURNAMENTS
AND
S KILL G AMES
Many games are not really suitable for tournament or skill-based play because of
their poor security. This is both an issue and opportunity because tournament and
skill-based play extend the life and may increase revenue for game developers
and publishers.
Game fans and secondary game businesses have tried to build tournaments and
skill-based games businesses around a number of games. Many of the games that
people have tried to convert to a “for-money” business model are vulnerable to
standard hacks, including proxies and state hacking. Whereas cheating is somewhat
tolerated in a “for-free” or “for-fun” environment, when cash or prizes and payments are involved, cheating becomes a central concern for the business.
The typical architecture for these online services would include a central game
server with multiple game clients. Legitimate operations require that each player
has a licensed version of the game.
In order to improve security with these legacy games, the game can integrate a
real “action log” for each participating player. For this approach to work, the game
needs to be able to be accurately replayed from a log file consisting of the sequence
of player actions, timestamps, and, optionally, one or more random seeds. The
random seeds would be provided by the game server or the collaborative random
techniques discussed in Chapter 13.
At the end of the game, the players submit their action logs to the server. This
can be done after every game, at a random time, or when there is a dispute between
players or an unusual result. The server then uses the logs from all of the players to
reconstruct the game and see if it matches the observed results and game play
behavior in its own action, state, and visual logs. Discrepancies can be used to identify problems and take suitable action.
This approach stops many, but not all, security problems for legacy games.
One problem the “action logging” approach does not stop is the use of automation
tools or player aids. These attacks will always be hard to detect because they don’t
alter the game; they just improve the player’s performance.
S UMMARY
Game service providers are moving to provide richer player experiences to complement their games. These richer game play systems, such as tournaments, ladders,
and reputation systems, bind the players to the service and inspire the players to
continue playing. Tournaments can be great marketing tools. NCsoft has run a
number of tournaments for Guild Wars with substantial prizes 20.
Chapter 20 Competition, Tournaments, and Ranking Systems (and Their Abuse)
207
Hackers do not have to attack individual games to undermine these valueadded services. The hackers can attack the entire game service fabric. These attacks
can be costly to the game operators. Microsoft and Bungie shut down the leader
boards for Halo 2 21 and one can only speculate how many sales might have been
lost compared to the cost for improving the security of the ranking service.
Player reputations and rankings are sometimes sufficient reward themselves to
inspire hackers to exploit these competition services. Fortunately, malicious players are more interested in the fame of breaking a game’s security (and publicizing
the fact) than running up a high score. The threats to a game service change
fundamentally when a game service provider begins to support real rewards and
prizes—hackers and cheaters will stop sharing and publicizing their exploits. This
results in a substantially greater burden on the game service provider’s built-in
security and security team.
R ESOURCES
1. C. Allen, S. Appelcline (2006), “Collective Choice: Competitive Ranking Systems,”
http://www.lifewithalacrity.com/2006/01/ranking_systems.html
2. GoldenToken (2008),”Types of Tournaments,”
http://www.goldtoken.com/games/wiki?wiki=Types%20of%20Tournament;ref=Wiki%20Start%20Page
3. Full Tilt Poker (2008), “Rebuy Tournaments,”
http://www.fulltiltpoker.com/rebuy-tournaments.php?ck=ftp213758551084424
4. Pokervariations.org (2008), “Types of Tournaments,”
http://www.pokervariations.org/types-of-tournaments.php
5. C. Allen, S. Appelcline (2006), “Collective Choice: Rating Systems,”
http://www.lifewithalacrity.com/2005/12/collective_choi.html
6. Wikipedia (2008), “National Invitation Tournament,”
http://en.wikipedia.org/wiki/National_Invitation_Tournament
7. A. Tepper, J. Yelon (2002), “eGenesis Ranking System,”
http://wiki.atitd.net/tale1/EGenesis_Ranking_System
8. ATITD (2004), “Tournament Ranking System,”
http://wiki.atitd.net/tale1/Tournament_Ranking_System
9. L. Frederick (2007), “NBA Star Caught Cheating at Halo 3,”
http://www.escapistmagazine.com/news/view/77998-NBA-Star-Caught-Cheating-at-Halo-3
10. J. Savage (2007), “Game Stopped After Cheat Allegations,”
http://www.thelocal.se/6788/20070324/
11. J. Leyden (2004), “Botnet Used to Boost Online Gaming Scores,”
http://www.theregister.co.uk/2004/12/21/randex_botnet_fun_and_games/
12. Blizzard (2005), “Accounts Closed for Ladder Abuse,” http://www.battle.net/news/0503.shtml
13. N. Maragos (2005), “Battlefield 2 Security Holes Exploited, Login Problems Reported,”
http://www.gamasutra.com/php-bin/news_index.php?story=6033
208
Protecting Games: A Security Handbook for Game Developers and Publishers
14. J. Joyner (2007), “New England Patriots Cheating Scandal,”
http://www.outsidethebeltway.com/archives/new_england_patriots_cheating_scandal/
15. M. Lafferty (2006), “Stat Babies Cropping Up in Online Games,”
http://www.gamezone.com/news/08_07_06_01_49PM.htm
16. J. Blancato (2007), “Jumpgate: EVE’s Devs and the Friends They Keep,”
http://www.escapistmagazine.com/articles/view/editorials/op-ed/847-Jumpgate-EVE-s-Devs-and-theFriends-They-Keep
17. R. Furchgott (2008), “With Software, Till Tampering Is Hard to Find,”
http://www.nytimes.com/2008/08/30/technology/30zapper.html?_r=1&oref=slogin
18. Michiel Meijs (2006), “For All You Halo Fans Out There #3,”
http://www.xboxic.com/news/2045
19. A. Park (2002), “Battle.Net Cracks Down on Cheating...Again,”
http://www.gamespot.com/pc/rpg/diablo2/news_2871872.html
20. A. Rose (2006), “Guild Wars Goings-On,”
http://www.joystiq.com/2006/05/31/guild-wars-goings-on/
21. Frankie (2005), “Bungie Weekly Update: October 14th, 2005,”
http://www.bungie.net/News/content.aspx?type=topnews&cid=6864
21
Griefing and Spam
“Hell is other people.” 1
f being trapped in a room with three other people for an eternity is Hell, one has
to ask what is the name for the place where you are trapped with millions of
people who can do what they want and say what they want with impunity for
even a day?
I
The Internet, of course.
The two are easy to confuse. And, just like No Exit’s characters Garcin, Inès,
and Estelle, we all have the opportunity to escape and turn off the computer, yet
none of us do.
There are a wide range of ways that we inflict grief on each other:
Through game play. Although “emergent game play” is often seen as a good
thing, there is a dark side where players take advantage of game systems to
disrupt the experience for others. Interestingly, a number of these game play
exploits grew out of a desire to make game play “safer.”
Communications, the tools that enable community, are routinely turned into
weapons wielded to harass, abuse, and annoy others. Players also turn the very
management tools for reporting griefers into griefing tools themselves. They
can even take advantage of the simplest game services, like high scores, to
disrupt the game and attack the game developer.
User-created content is seen by many game developers as something of a “Holy
Grail.” Such content enables developers to provide a sandbox in which players
can create and play. Unfortunately, players sometime use these tools to abuse
and harass others and have gone so far as to implement denial of service attacks
against the game itself.
209
210
Protecting Games: A Security Handbook for Game Developers and Publishers
There are consequences for these actions. Some in-game harassment rises to
the level of legal harassment; off-color remarks and content can be considered
obscenity; and certain activities, such as “age play” (where adults use avatars of
children in sexual situations), can create serious legal and business problems for a
game service provider.
C OMMUNICATIONS G RIEFING
AND
S PAM
Insults and harassment are virtually routine for many online games. The anonymity
afforded to online game players has given rise to widespread and increasingly
aggressive harassment. The hardcore gamers who are otherwise prized by game
companies are often the worst offenders and taunt the newest players (derisively
called “n00bs”). This, of course, is the riskiest time for a game operator—new players
are liable to abandon a game that they find hostile. There is often a perception by
players of a “right to anonymity.” There is no legal basis for this and, in fact, the
Privacy Act in the US did not come into being until 1974 and mainly addresses an
individual’s privacy in relation to the government. Sexual and racial harassment
also, regrettably, occur too often. Additionally, the rise of gold farming in MMOs
has led to a corresponding increase of in-game spam marketing that touts these
services (see Chapter 22). As games become more and more mainstream, it will not
be surprising to see the same kind of spam we all suffer from in our email.
The Facebook social network is increasingly being targeted for spam, virus and
worm delivery, and phishing attacks2. A recent survey showed that spam was effective—nearly 30 percent of individuals surveyed had purchased a product based on
a spam message3. Response rates are surprisingly high, considering that the bulk of
spam is blocked by filters. There are 10 sales per million spam messages sent; a good
return on investment since botnet spam only costs $5 to $10 per million messages.
Even worse for game operators, some of this spam can be used for phishing for
account information or otherwise attacking the game service directly.
IN-GAME, COMMUNITY,
AND
CUSTOMER SUPPORT
To fight these problems, as well as to address other issues, game companies provide
customer support and community and forum features. Apparently as many as 25
percent of customer support calls are due to griefers4. This direct avenue for filing
complaints is also a direct cost to the game company. In 2002, Alan Crosby of Sony
estimated that his 60-person customer service staff each spent one hour out of an
eight-hour shift handling griefing for the EverQuest MMO5.
Chapter 21 Griefing and Spam
211
The most common “griefer counter-measure” is to put in place a strong set of
community services. Depending on the game, these community services provide
clan features (tools to form and support player groups or teams), friends lists, reputation systems, and other services both to tie players more closely to the game and to
create an environment that reduces anonymity for misbehaving players. One of the
best features of a strong community service is that it can provide substantial security
benefits at modest marginal cost. After all, the game developer is putting the community system into place for primarily business growth and marketing purposes.
There are two main limitations of community systems from a security perspective. First, malicious players can often create new accounts (especially for game
services that are free), thus removing the effective social stigma of griefing. Several
games attempt to fight free-account griefers and spammers by requiring players to
have reached a certain level (implying a fair number of hours of game play) or pay
to be able to broadcast messages in the game.
Second, malicious players can use the anti-griefing system to cause further grief
by wrongly accusing other players of griefing. This is an excellent and unfortunate
example of griefers using the game system against itself and other players.
Player accountability is the key to controlling griefing. Some online game
services, such as Battle.Net, X-Box Live, and Valve’s Steam have the capability to tie
a product license key or other unique tag to a player and can use that identity to
punish or ban abusive players.
The other major form of customer support is found in persistent world games.
In-game game masters provide live monitoring of the game play environment. This
gives the game provider the ability to respond in near real time to griefing incidents.
This solution is quite powerful, but it does come at a cost. Consider the Sony
EverQuest example. Crosby estimated that one eighth of each of his 60 employees’
time was spent handling griefing. So, basically, he had the equivalent of 7.5
employees devoted to griefing full time. If we assume a modest salary of $40,000 per
year (this is really cheap, as it wouldn’t include additional fees for shift work, health
and other benefits, or management overhead), Sony was spending approximately
$300,000 per year, at least, and probably closer to $500,000 on the griefing problem
(2002 was in EverQuest’s heyday, so the game probably had approximately 425,000
subscribers at that time6). Although this may not be a huge portion of the game’s
revenues, it comes directly from profits and, even worse, there are likely additional
costs that are hard to measure directly in terms of lost subscribers or non-renewals
by existing subscribers.
The cost of managing griefing can grow rapidly for a game service provider and
can lead to lost subscribers, redirecting staff from other assignments, reducing
player satisfaction, or increasing the total staff costs for the game by simply adding
212
Protecting Games: A Security Handbook for Game Developers and Publishers
staff to handle the complaints. For a small game, the cost of managing griefers can
be the difference between success and failure. For a large game, these costs are a
continual drag on the bottom line.
Given these numbers, a game company can make a rational decision as to
whether a new security solution is needed. If griefing is at all a problem in a game,
it is probably costing hundreds of thousands of dollars, minimum. The question is:
are there solutions and what do they cost?
ANSWERS
TO THE
GRIEFING PROBLEM
A security solution is not likely to be able to stop griefers, but should detect, and
hopefully deter, them. A common, but usually unsuccessful, approach to stop
griefing is to use “dirty word” lists. “Dirty word” systems basically operate an ever
growing list of “banned” words and phrases that will cause a message to be blocked
or the offending words or phrases removed. A very different approach is to (mostly)
eliminate open communications as Disney has done with Toontown Online. Disney’s
children’s MMO has a communications architecture that eliminates “chat” except
among trusted friends7, and this approach has been followed by other children’s
games. These games use totally structured communications for most players with
all text and even sentence structures provided by the game company. If friends
have shared a code outside of the game environment, they can communicate
through a monitored chat service (see Chapter 30). Monitoring communications
can be expensive. Another children’s game, Club Penguin, has 100 real-time employees monitoring player communications and adds 500 to 1,000 words per day to
its “dirty word” filters for its 12 million total users and 700,000 subscribers8.
For most games, a general-purpose communication capability—either via text
chat or voice or increasingly video—is integral to the game experience. Real “dirty
word” lists are very vulnerable to “misspelling” attacks that will thwart the security
system while effectively conveying the harassing message. Live license keys are fairly
effective in using platform identity to deter griefing (by the threat of banning), but
these keys do not have a strong binding mechanism to an individual message or
person. Similarly, credit card controlled accounts for massively multi-player games
can strongly identify an individual player during a session, but they also cannot be
bound to a potentially offending message.
One tool that binds the actual communications to an individual is a digital
signature. Digital signatures can support both client-server and peer-to-peer
communications. This is especially important as games grow larger and the cost of
simply relaying messages grows rapidly for voice and video communications to the
point where a central service cannot log and monitor all communications.
Chapter 21 Griefing and Spam
213
Although there are numerous references that can explain how digital signatures
work, the important feature they support is non-repudiation. Non-repudiation is
defined as the property that only one individual could have signed a message. This
works by taking advantage of the unique characteristic of public key cryptography,
namely, that knowing the public key (P) “half” of a public-private key pair will not
allow the reconstruction of the private (secret) key (S). This feature allows an individual to broadcast their public key to everyone and they will be able to decrypt my
messages, but only the individual who knows the private key can encrypt them.
The player can then use her private key to “sign” a message by encrypting a
hash of the message (or the message itself). Then, anyone can use the public key to
validate the message’s signature.
The signed message is formatted as follows:
S(message) or message,S(hash(message));
// where only one person knows how to compute S(x)
The verification process works as follows:
P(S(message)) = message or P(S(hash(message)) = hash(message);
// where everyone knows how to compute P(x) and hash(x)
/* if the hash of the message received does not match the hash
included in the signature, then the message is not verified */
Now, if you build the communication system (voice, video, or text) and add
a digital signature service, players will not be able to deny that they created the
messages that they have sent nor will other players be able to misrepresent messages
from the actual sending player. At least, this is so as long as there is reasonably good
identity information for the players (see Chapter 29). If a player can store all of the
messages that she receives and forward them to the game operator when she wants
to file a complaint, the operator will have an undeniable record of the conversation
that cannot be manipulated. This has several benefits.
First, the potential griefers will be deterred, knowing that their actions are
neither non-deniable nor spoof-able. This is probably the most important characteristic of the system. Deterring griefing (like crime) has a much better return on
investment than hunting down and catching the troublemakers. This technique
actually can be extended to regular in-game actions to deter spawn camping and
other griefing problems by utilizing logs stored by players for evidence of abuse.
214
Protecting Games: A Security Handbook for Game Developers and Publishers
Second, the game operator can reduce the live team and customer support
staffing for grief-management. Because there are reliable logs of alleged griefing,
real-time response by the customer support team is less critical. Players can post
messages for reliable adjudication and both players’ versions of a conversation can
be used as reliable evidence—which leads to the third benefit of this approach—
fewer customer disputes and complaints.
Digital signatures do nothing to stop spam. Unfortunately, spamming players
usually have found a way to acquire an account that can broadcast messages and
they are willing to risk being banned from the game after sending even a single message. The simplest solution is to remove broadcast communications services from
the game, but these services can be very useful for many reasons such as helping
players form ad hoc groups to ask for help.
Another approach is to phase the distribution of broadcast messages. Most of
the time, this type of spam is sent via text, not voice or video. Broadcast voice and
video are just too disruptive, so players tend to only use them with much smaller
groups and can simply “mute” or blank out anyone who annoys them.
Phased distribution works by dividing the active players into a (binary) tree
structure at random. When a player sends a broadcast message, it is first sent to the
players in the same low-level branch, and then sent to the players in the same
higher-level branch, until eventually, it is sent to everyone (see Figure 21.1).
FIGURE 21.1 Anti-spam phased message propagation system
Chapter 21 Griefing and Spam
215
The pacing of this distribution system should be set up to give players a chance
to mark the message as spam before it is sent to the next tier in the system. This
technique will disturb the fewest players from any given spammer.
As with many other challenges for gaming, weak identity aggravates griefing
and spamming security problems. Strengthening identity is always helpful. For
games that want or need to support fairly anonymous players, the key is to minimize the impact of spam and grief-related activities either through structured communications or other measures that reduce impact on legitimate players and effort
for customer support personnel.
HIGH SCORE OR PLAYER NAME GRIEFING
Players often choose inappropriate or obscene names for their online personae or
characters. Often, this is simply acting juvenile, but sometimes these names are
chosen with malicious intent. In the previously cited advergame security survey 9, 10 ,
some players used the games’ high-score lists to criticize the sponsoring company.
Such incidents can be particularly troubling when they occur in a marketing campaign
with high visibility.
Player reputation systems and alert processes to help flag inappropriate user
names are fairly effective. However, it may be advisable to take the further step of
manually verifying new high scores before they are available publicly. In order to minimize player impact, the game operator can structure the game to show the player
her proposed username, but not reveal the name publicly until it has been verified.
G AME P LAY G RIEFING
Just as players use weaknesses in a game’s rules implementation to gain a competitive advantage, a number of players use these exploits simply to abuse other players. One of the most common such tactics is “spawn killing,” whereby players kill
another’s character just as the character enters the game before the player can take
any action or protect herself11. Often, the countermeasure is to allow players to be
briefly invulnerable as they enter the game, invisible, or vary where they appear.
These tactics have to be used with caution, as they can, in turn, be used to grief
other players. Another game play griefing tactic is when players sometimes kill the
characters belonging to their allies, the gaming equivalent of “friendly fire,” which
is called “team killing”12. Typically, there is very little that can be done about this
problem without seriously distorting a game’s design.
216
Protecting Games: A Security Handbook for Game Developers and Publishers
After murder, theft follows naturally in the hierarchy of sins. “Kill stealing” is
the practice of taking items or experience that another player should rightly have
earned13. Depending on the game’s design, players can sometimes join a battle very
late but still share equally in its rewards. The extreme version of this tactic is “ninja
looting,” whereby a player seizes unearned items or items that her group had agreed
to share in a different fashion, and finally, there is “scavenging,” whereby a player
accumulates items or resources left behind by other players14.
Some games have addressed these issues by making the entire combat process
more structured. Once players have joined a battle, no one else can participate in
the fight or earn a share of its rewards. Often, the problems come from a mix of
formal and informal game play systems, as is often found in PvE (player versus
environment) MMOs. These games often have game rules in place to prevent conflict
between players (called PvP); however, the developers want the game to be “real,”
and this is where the trouble occurs with inconsistencies in the various game
mechanisms.
DON’T DROP (LOOT)
Many online games have monsters that “drop” items when defeated. Players then
“pick up” the items either individually or allocate them based upon a predetermined
arrangement. The “ninja looting” problem described previously arises from this design. A simple approach to fighting this sort of abuse is that the players who participated in the combat or other action that resulted in the loot drop handle the
allocation of items abstractly. Nothing is “dropped” physically to be picked up by the
fastest or most devious player. Instead, items appear in a transactional window with
each item to be allocated among the participants in the combat. Allocations are proposed by the players; however, nothing is released to anyone until all of the participants “vote” on the result. The default system would be a unanimous vote with
nothing allocated until everyone agrees. Players can still cause grief by refusing their
vote, but they don’t get any benefits either. The game can retain the transaction for a
week or other interval and then the items disappear. For an organized party of players or guild, loot can build up and be allocated by a number of different systems. This
is an opportunity for a game developer to provide flexible player interactions and an
effective “contract enforcement” tool.
Chapter 21 Griefing and Spam
217
If the game is very formal, the rules will tend to prevent problems, and if
the game is very “real,” abuse has consequences. This latter approach is seen in the
science fiction MMO, EVE Online. EVE Online is a largely player versus player
game, although certain parts of the universe are more secure against inter-player
aggression. When players can attack players, these forms of griefing tend to take
care of themselves. Players will simply get revenge on the other players for theft.
Interestingly, EVE Online has taken a different approach to theft griefing in the parts
of the game where players are not supposed to fight each other (high security space)
with a space-based police force called CONCORD. The CONCORD system will
essentially destroy anyone breaking the game’s anti-griefing rules in “high security
space.” CONCORD is not immediate, and so some players can carry out their
crimes and not get destroyed. Also, players have sometimes used throw-away ships
to carry out suicide attacks and used other ships to steal loot. This technique, called
“suicide ganking,” is being addressed through changes to the game rules15.
Basically, game developers need to be quite careful and test their designs to
identify both potential cheating and griefing exploits.
U SER -C REATED C ONTENT
The ideal game is one where developers can just sit back and let the players create
the game using some developer-delivered building blocks. Social networks do this
by providing a communications framework with numerous features to encourage
user action and interaction. Dating sites are the most obvious example. Players add
information to their own profiles, rate, and communicate with other members,
take tests, fill out surveys, send virtual gifts, and so on. For game services, some
games go beyond simply providing high scores, multi-player lobbies, and the standard
apparatus of social networks to allowing players to create, and in some cases, buy
and sell, virtual items. Second Life and IMVU are probably two of the best known
online services that use this model. Metaplace goes a step further by allowing users
to create their own games. Some MMOs do support “crafting,” but this is not
really user created content, but simply a portion of the game’s economy.
Once a game allows users to create items or change the game’s rules, there are
massive opportunities for abuse. “Time to Penis” is a tongue-in-cheek metric for
the time from when some level of user creativity is permitted until someone creates
a penis. Electronic Arts (EA) released a Creature Creator for its much anticipated,
family-friendly title Spore. The immediate, inevitable response was widespread
creation of obscene creatures, called Spore porn or Sporn16. EA is managing user
content by allowing players to report inappropriate material as well as by allowing
users to restrict the material that they receive from other players to creatures from
no one, only their friends, or the general public.
218
Protecting Games: A Security Handbook for Game Developers and Publishers
This in-game graffiti is only one concern. Players can simply use their virtual
presence to disrupt the experience of others as IBM found when Italian union
workers moved to protest a reduction in their “productive results benefit.” Instead
of a traditional strike, they protested in IBM’s online space in Second Life with
2,000 sympathetic avatars resulting in substantial, global media coverage (and,
apparently, victory for the workers)17.
Also in Second Life, a CNET interview with Anshe Chung was disrupted for 15
minutes by “animated flying penises”18. The griefing incident was followed by a
copyright brouhaha when Anshe Chung’s company sent DMCA takedown notices
to YouTube and media sites for posting copies of the video of the griefer disruption
of the interview19. Second Life faces unique challenges because of the pervasive ability of players (called “residents” by Second Life’s creator Linden Lab) to modify
themselves and their environment. Second Life has been moving to add more
controls to its environment in the wake of these attacks. Because Second Life is
structured around the notion of controlled virtual real estate, security controls
really need to be matched to the game’s ownership model. Public spaces in the
game have had a number of problems over the years with denial of service attacks
that used the ability to create and animate items to overwhelm the virtual world’s
servers. Neither IMVU nor Metaplace are likely to have the same sort of concerns
in that neither have the same notion of a shared, public space that is also highly
programmable. However, it does seem that IMVU has had some problems with
players griefing the flagging system for inappropriate virtual items20.
Lying somewhere between spam and user-created content was a stunt pulled by
a gold farming company in World of Warcraft (WOW). In WOW, when a player’s
character dies, it stays in place where the death occurs until the player starts over
(respawns). The gold farming firm arranged to have a number of gnome characters
die in a large pattern on the ground to spell out the company’s website address21.
Rating and reporting systems are probably the best tools for managing abuse of
user-created content systems in online games—especially when used in conjunction with an effective identity system (see Chapter 29). The power and potential for
creativity of a service like Second Life makes it particularly exciting for those who are
enamored with virtual worlds. However, balancing player creativity with griefer
crudity and abuse is a huge challenge.
L IABILITY
AND
B USINESS R ISK
with J. Price
Certain forms of griefing can create real legal and business risks for a game operator.
Player-to-player communications and user-created content can be considered
Chapter 21 Griefing and Spam
219
obscene or harassment and trigger legal actions that affect both the individuals
involved and the online service. Players can create virtual items that infringe on
trademarks or alter a game to damage its reputation.
OBSCENITY
National, state, and local laws and ordinances classify most sexually oriented
material as either obscene or indecent. It’s a serious issue. Criminal laws apply and
there is a possibility of going to jail. But figuring out what is obscene and what is
indecent is often complicated. The difficulty of defining obscenity was memorably
summarized by U.S. Supreme Court Justice Stewart Potter in a concurring opinion
when he said “I know it when I see it.” There are no objective standards. Even
worse, because of the number of jurisdictions involved, a game operator may be in
jeopardy without knowing it. The game operator can be sued where the game’s
audience is located, not just where the company or servers are housed.
In the US, the answer depends upon how the content is being viewed. Different
obscenity standards apply to broadcast television, subscription television
(cable/satellite), and the Internet. Offline, anyone sending sexually oriented material might avoid liability by controlling the point of delivery of their material to
avoid areas with strict obscenity laws. Almost by definition, online services are
accessible in the most conservative as well as the most liberal communities.
Potentially, the most conservative contemporary community standard applies to
any online service on the Internet when considering obscenity and indecency standards. In order to be completely safe and avoid prosecution of violating obscenity
laws, the contemporary community standard of the Internet is (essentially) the
most conservative community where the service is available.
Even if the game operator’s provided material raises no concerns, user
communications and user-created content can be an issue. Most troubling are the
portions of the criminal code that apply liability to the game operator for any
“knowing” use of the “interactive computer service” to transport and transfer
obscene material. If a game operator receives complaints about inappropriate content, the operator must take prompt action. The game operator faces the risk of
being charged if there is evidence that the operator received complaints regarding
criminal content, such as obscenity, and ignored it. The U.S. Supreme Court has
held that a prosecutor need not show that the defendant knew that the material was
obscene, but “that he knew the character and nature of the materials.”
The best practice is to maintain control of the online environment and users:
Have online user policies that give you wide discretion to examine what is happening within your game and that enable you to work with law enforcement at
your discretion. Take down content for whatever reason you feel is appropriate.
220
Protecting Games: A Security Handbook for Game Developers and Publishers
Don’t put your head in the sand. If you hear of something fishy, go after it and
take down any content that can’t be viewed on prime-time television.
If adult or other potentially risky (or risqué) content is important to your service, you’ll need legal advice tailored to your specific situation.
HARASSMENT
If you offer a service online that permits user communication, odds are likely that
you will have a harassment case arise at some point. Law enforcement agencies have
estimated that electronic communications are a factor in from 20 percent to 40
percent of all stalking cases22. Forty-five states now have laws that explicitly include
electronic forms of communication in stalking and harassment laws. State laws
that do not include specific references to electronic communication may still apply
to those who threaten or harass others online, but specific language can make the
laws easier to enforce. A number of federal laws also are relevant.
Authorities will work actively to pursue harassment cases. In a widely reported
incident, a woman was accused of bullying a neighborhood teenager via MySpace,
which may have contributed to the 13-year-old girl’s suicide 23. Federal prosecutors
charged the woman with one count of conspiracy and three violations of the antihacking Computer Fraud and Abuse Act. They accused her of violating MySpace’s
terms of service by providing false information to open a fake MySpace account
with her daughter and another teen in September 2006. In doing so, authorities say,
she obtained unauthorized access to MySpace’s servers.
TRADEMARK
AND
COPYRIGHT INFRINGEMENT
Trademarks only stay in force when the trademark owners actively protect them.
Copyright protects the authors of original creative works against unauthorized use.
As such, trademarks and copyright-protected material that find their way into
games via player actions can create real issues for game operators.
Trademark infringement is a violation of the exclusive rights attached to a
trademark. It occurs when one party, the “infringer,” uses a trademark that is identical or confusingly similar to a trademark owned by another party, in relation to
products or services that are identical or similar to the products or services that the
protected trademark covers. Trademark infringement is not covered under the
Digital Millennium Copyright Act (DMCA) and is not subject to DMCA takedown
notices. DMCA was used to inappropriately remove 3D models of cars and airplanes from the Turbo Squid 3D art-sharing site. This was allowed until a lawsuit
was filed (and won), based on the inappropriate removal of a B-24 model, which
was supported by the Electronic Frontier Foundation24.
Chapter 21 Griefing and Spam
221
Alteration of game content is another matter.
Tecmo fought and won an out-of-court settlement against a website that provided a patch to its games Dead or Alive 3 and Dead or Alive Xtreme Beach Volleyball
that removed the clothing from the games’ scantily clad models. The company
charged the website, Ninjahacker, with unauthorized modification of game assets
and circumventing the game’s copy protection system. Because the case was settled,
the legal status of player modification of the material from a purchased game is still
unclear25.
Turbo Squid’s final comment on the matter probably serves as a good summary
of the challenges that griefing and user-created content present for game operators:
Turbo Squid solely provides infrastructure for vendors around the globe to
post their models and creations for sale. By accepting our End User License
Agreement when vendors sign up, they warrant that they have all rights to the
models and other digital assets they sell. Turbo Squid is a Digital Millennium
Copyright Act (DMCA)-compliant operation, and when we receive valid takedown notices from (copyright) or (trademark) owners we act accordingly, and
remove any infringing models brought to our attention. That said, because of
how the DMCA Safe Harbor provision works, and because of the realities
of any large open marketplace, we do not pro-actively police (trademark)
infringement to any degree that Turbo Squid might guarantee that any
particular model is not infringing. We can only work in a responsive mode.
The burden to not infringe falls to Turbo Squid’s vendors, the individuals who
create these assets and place them for sale on our site.
No matter what game operators do, it is likely that they will need to deal with
harassment, abuse, obscenity, and exploits. They just need to be prepared.
Although “Hell is other people,” there wouldn’t be much in the way of business or
games without them, either.
R EFERENCES
1. J.P. Sartre (1944), “No Exit”
2. P. Kafka (2008), “Facebook Spam Getting Worse?,”
http://www.alleyinsider.com/2008/8/facebook-spam-getting-worse3. J. Milne (2008), “Sex and Software Diet Fuels Spam Growth,”
http://www.cbronline.com/article_news.asp?guid=781A882F-926F-47F0-B96F-962F5EFAF5E4
4. D. Becker (2004),“Inflicting Pain on Griefers,”
http://news.com.com/Inflicting+pain+on+griefers/2100-1043_3-5488403.html
222
Protecting Games: A Security Handbook for Game Developers and Publishers
5. A. Pham (2002), “Online Bullies Give Grief to Gamers,”
http://articles.latimes.com/2002/sep/02/business/fi-grief2
6. B. Woodcock (2008), “MMOG Active Subscriptions 70,000 to 700,000,”
http://www.mmogchart.com/Chart2.html
7. M. Goslin (2004), “Postmortem: Disney Online’s Toontown,”
http://www.gamasutra.com/features/20040128/goslin_01.shtml
8. P. Elliott (2008), “MMO Week: Club Penguin,”
http://www.gamesindustry.biz/articles/mmo-week-club-penguin
9. Deloitte Touche Tohmatsu (2008), “Advergames op Grote Schaal Gehackt,”
http://www.deloitte.com/dtt/press_release/0,1014,sid%253D13354%2526cid%253D202819,00.html
10. S. Davis (2008), “Serious Advergame Hacking Problems: Deloitte Touche Tohmatsu Netherlands
Survey Findings,” http://www.playnoevil.com/serendipity/index.php?/archives/2107-Serious-AdvergameHacking-Problems-Deloitte-Touche-Tohmatsu-Netherlands-Survey-Findings.html
11. Wikipedia (2008), “Camping (Computer Games),” http://en.wikipedia.org/wiki/Spawn_camp
12. Wikipedia (2008), “Team Killing,” http://en.wikipedia.org/wiki/Team_killing
13. Wikipedia (2008), “Kill Stealing,” http://en.wikipedia.org/wiki/Kill_stealing
14. Wikipedia (2008), “Looting (Gaming),” http://en.wikipedia.org/wiki/Looting_(gaming)
15. J. Egan (2008), “Era of Suicide Ganking in EVE Online Coming to a Close,”
http://www.massively.com/2008/08/06/era-of-suicide-ganking-in-eve-online-coming-to-a-close/
16. M. Simon (2008), “Video Game’s User Content Spawns Naughty Web ‘Sporn’,”
http://www.cnn.com/2008/TECH/07/30/spore.sporn/index.html
17. UNI (2007), “Breakthrough at IBM Italy,”
http://www.uniglobalunion.org/uniibitsn.nsf/2e8743df5acf1602c125701f00464774/867567557e8242f2c12
57387005342d1?OpenDocument
18. D. Terdiman (2006), “Newsmaker: Virtual Magnate Shares Secrets of Success,”
http://news.cnet.com/Virtual-magnate-shares-secrets-of-success/2008-1043_3-6144967.html
19. A. Reuters (2007), “Anshe Chung Studios Cracks Down on Griefing Photos,”
http://secondlife.reuters.com/stories/2007/01/05/anshe-chung-studios-cracks-down-on-griefing-photos/
20. Virtual World News (2008), “IMVU to Exit Beta This Summer” (comments),
http://www.virtualworldsnews.com/2008/03/imvu-to-exit-be.html
21. A. Sliwinski (2007), “Gnome Corpse Advertisement in WoW by Gold Farmers,”
http://www.joystiq.com/2007/07/05/gnome-corpse-advertisement-in-wow-by-gold-farmers/
22. National Conference of State Legislatures (2008), “State Computer Harassment or ‘Cyberstalking’ Laws,”
http://www.ncsl.org/programs/lis/cip/stalk99.htm
23. Associated Press (2008), “Report: Grand Jury Probes MySpace Suicide,”
http://abcnews.go.com/TheLaw/wireStory?id=4107005
24. J. MacNeill (2008), “First They Came for the Fords, and I Did Nothing,”
http://www.johnmacneill.com/WWII_Bomber.html
25. D. Jenkins (2005), “Tecmo Settles Nude Patch Lawsuit,”
http://www.gamasutra.com/php-bin/news_index.php?story=5591
22
Game Commerce:
Virtual Items, Real Money
Transactions, Gold Farming,
Escorting, and Power-Leveling
oney makes the (real and virtual) world go around. In some sense, money
itself is the oldest, most widely used virtual item. Because money is so
universally understood, virtual currencies are widely used as incentives in
online games. Whatever one’s views are about “consumer culture,” we all seem to
have a Pavlovian response to accumulating more things.
M
Game developers know this and draw on it to reward players. However, once
you create a system where more is better, people respond creatively. Where there is
a gap between those with more time than money and those with more money than
time, someone will come along to close that gap.
Welcome to game commerce. It is worth noting that game commerce is not
applicable to all games—after all, there are games of pure mental or physical
accomplishment like chess or baseball. Although people do cheat in both, there is
no way that most of us will ever be a Chess Grandmaster or in the Baseball Hall of
Fame.
Anyone can be rich, however, especially in a game.
Game commerce encompasses legitimate transactions where players buy, sell,
trade, and exchange items, skills, or characters, as well as unauthorized transactions.
The most visible, and notorious, form of game commerce is gold farming, where
players purchase currency or items for real cash and don’t earn them by playing the
game. The other major categories of unauthorized game commerce include powerleveling, which involves hiring other people to play on one’s behalf, and escorting, in
which players hire other people to play along with them as partners.
The problem for game developers is that, from a strict game play perspective,
these activities are completely legal. In fact, many games that loathe game commerce are built expressly to support the very activities that make it possible. Game
developers want players to be able to give items to each other and they strive to
make it easy for players to group together with others and play the game socially.
223
224
Protecting Games: A Security Handbook for Game Developers and Publishers
THE DARK SIDE: FOUR MORE CATEGORIES OF GAME PLAYERS
There are many reasons people play games. Dr. Richard Bartle proposed four basic
categories of game players (as modified to suit my purposes)1:
Achievers—Players who seek to maximize their score or items or status in the
game.
Explorers—Players who want to experience and understand the game world
and its design.
Socializers—Players who use the game as a mechanism to form and expand
their social circle.
Competitors—Players who want to compete with and excel over other players. Dr. Bartle seems to take a more negative view of this category than I do
in that he includes abuse of other players as an implicit part of this category.
To his four categories, I would add a set of mirror categories. The dark side of
gaming:
Earners—Players who seek to earn the most wealth in the game for real-world
reasons. These are the gold farmers and power-levelers.
Exploiters—Players who carefully study, explore, and analyze the game world
and its mechanics to identify weaknesses that give them a substantial advantage, usually due to flaws in the game design and implementation.
Harassers—Players who use the social mechanisms of the game to make the
experience as miserable for others as possible.
Dominators—Players who use the game’s mechanics to make other players
miserable. These players are not really interested in doing better than other
players, but in making other players know that they have been beaten.
Figure 22.1 illustrates these player types.
Exploiters and Earners are often closely tied to game commerce. Exploiters help
optimize the earning potential of the game. Harassers and Dominators cover two of
the main categories of griefing.
Chapter 22 Game Commerce
225
FIGURE 22.1 Game player categories
As a game-design note, the existence of the four Bartle categories of players
(see Figure 22.1) is probably one of the reasons that game commerce exists. Game
developers are often Achievers and Explorers. They want players to work through the
game and experience all of the developers’ carefully crafted content. The problem is
that many players are not similarly motivated. Socializers want to be able to play with
whom they want when they want. Some Achievers are more interested in status than
achievement and they may not have as much time to play as the developers want
them to devote to the game. Competitors are interested in competition, not resource
gathering or exploration. Explorers may want to be able to go everywhere and do
everything without “achieving” everything necessary to unlock all of the game’s doors.
Game commerce is the shortcut for all of these players to achieve their goals in spite
of the game designers’ wishes.
When game commerce is not explicitly permitted by game operators, it creates
problems for the game operators because players will engage in game commerce
activities, whether officially allowed by the game operator or not. In 2005, Nick Yee
surveyed 1923 EverQuest players and found that 22 percent admitted to buying gold2.
These gold buyers purchased an average of $135 per year in gold: fairly close to what
they were paying in subscription fees to the game. Considering the fact that players
are likely to under-represent the rate at which they do something that is frowned on,
like gold buying, and under-report the amount that they spend on such items, it is
very clear that gold buying is very widespread. Players pay for convenience.
226
Protecting Games: A Security Handbook for Game Developers and Publishers
Game commerce causes problems because it creates a mechanism where players can bypass parts of the game or the “effort” that the game’s developers, and a
number of its players, feel that everyone should achieve (see the sidebar called “The
Dark Side – Four More Categories of Game Players”). The other problem comes
from when players engaging in game commerce activities interfere with day-to-day
game play for ordinary players. This can range from monopolizing game resources
in order to farm them most efficiently to broadcasting annoying advertising
announcements for their services and clogging up the game’s communications
channels (see Chapter 21).
The biggest problem with game commerce is that it is lucrative. Some
estimates place total gold farming revenues at over $1 billion worldwide3.
Unfortunately, this kind of money creates problems both within the industry and
outside it. There have been a number of cases of employees using their access to online games to fraudulently create virtual items for sale. There is also the growing
problem with online criminals targeting MMOs because of the ability to convert
stolen account information into cash with little to no risk.
A MUSEMENT P ARK E CONOMICS
Many game-commerce problems are due to the simple, abstract economic systems
that are found in many online games. Though these systems are called “economies,”
they are really amusement parks. There is no supply and demand. Players “ring the
bell and win a prize!” In some sense, problems arise because the games do not fully
embrace their amusement park “nature”: assets can’t be stolen, but they can be
bound to the player who picks them up; resources don’t have weight or size,
but players have limited inventories; players can teleport or fly around quickly, but
can’t take their characters to another game server or shard; the games are supposed
to be “fun,” yet are designed around a treadmill or “grind” to force players to forever accumulate resources and repair “worn” items.
In some sense, these game’s economies are not really meant to be played for
fun. Rather, they act as surrogates for the long lines and height restrictions that one
finds in a traditional amusement park. After all, what is the requirement to accumulate resources but a way to delay players from entering “high-value” instances or
dungeons? And what are level restrictions, but ways to limit when a player can
access certain adventures?
For many players, game commerce gives them a way to “cut to the front of the
line” and “grow a couple of inches” so they can ride the roller coasters instead of
being stuck on the kid’s rides.
Chapter 22 Game Commerce
227
By this measure, gold farming, power-leveling, and the other forms of game
commerce are symptoms of game design failures. After all, gold buyers and other
game commerce consumers are giving money to someone else instead of the game
operator in order to have the entertainment experience that they desire.
A LTERNATIVE M ODELS
For a long time, the dominant business model for the online game industry has
been “purchase and subscribe,” whereby a player would buy a shrink-wrapped
game box and pay a monthly subscription to play. (It should be noted that before
Internet Service Providers (ISPs) moved to flat monthly fees, many games and ISPs
had a metered service where players paid by the hour or minute.) World of
Warcraft, Lord of the Rings, and most other “major,” traditional MMOs follow this
model with a standard retail price of around $50 for the game box and between $10
and $15 for a month’s subscription.
A number of companies have tried variants of this basic model. The most
familiar alternative is to provide the game as a free download with a monthly
subscription, as found in EVE Online and some of the older, larger Asian MMOs.
Conversely, ArenaNet’s Guild Wars is purchased, like a standard game, but there is
no fee to play online. No one else has really adopted this model for a persistent
world game even though it was very successfully pioneered by Blizzard’s Battle.Net
for the Starcraft, Warcraft, and Diablo games. A free online service combined with
a purchased game is found routinely with first person shooters and real-time strategy games. However, for these games, the online service is often little more than a
lobby. Also, publishers have been quite willing to shut down the online service,
almost on a whim.
Subscription games with a persistent world or economy are the primary victim
of game commerce problems.
Over the past several years, the “free-to-play” (F2P) model has rapidly emerged.
This business model is usually based on a game that requires no subscription to
play, but collects revenue by the sale of individual virtual assets (the virtual currency
is purchased in a number of ways, such as credit cards, debit cards, phone-based
payments, wire transfers, or pre-paid cards). The F2P business model grew popular
in Asia with the tremendous success of games like Nexon’s KartRider, MapleStory,
and Audition. Recently, the F2P model has grown in Western markets because of
the popularity of Asian games as well as the development of original game titles
such as EA’s Battlefield Heroes.
228
Protecting Games: A Security Handbook for Game Developers and Publishers
Interestingly, some of the earliest adapters of the F2P were US-based text
MUDs, such as Iron Realms’ Achaea, which launched with virtual currency purchases in 1997 and had its first virtual item auction in 19984. Iron Realms uses a
dual currency system with one currency based on time in-game and the other based
on direct purchases. The only type of trading that this system allows is between the
game’s two currencies5.
It should be noted that some games earn revenue from advertising or other
marketing activities like surveys which are, in turn, linked to virtual item purchases.
There are seemingly endless variations on these models. Jagex’s RuneScape is
free-to-play, but has a low-cost monthly subscription option that gives a number of
advantages ($5.95 per month)—a strategy that is also used in Disney’s Club
Penguin. Linden Lab’s Second Life’s primary revenue comes from selling virtual
items and renting virtual real estate. Many F2P games still include an actual ingame economy just like the subscription games discussed here and are vulnerable
to the same sorts of game commerce problems for this portion of their business.
Finally, there is the “broker” model—where an online game earns funds by
brokering transactions between buyers and sellers of virtual goods and earns a
transaction processing fee. Linden Lab earns some money from this model and
IMVU does as well. In some sense, Apple’s App Store and iTunes use this same
strategy. The challenge for the broker model is that the transaction processing margins need to be relatively large to handle any payment problems that occur, such as
charge backs (see Chapters 27 and 28 on money and payment security issues) and
bandwidth for large digital items. For Apple’s App Store, the company takes 30 percent of the transaction6.
O N V IRTUAL I TEMS
Who owns your virtual assets? The game developer or operator? The player? This
question has vexed the online game and virtual world industries from the days of
MUDs.
The general perspective of most developers is that the company owns all of the
assets and that the player is simply renting access to them—much as they would a
subscription to HBO. The assets and characters are non-transferable, have no intrinsic economic value, and can be altered or removed at the whim of the developer
(as can the player).
Chapter 22 Game Commerce
229
There are excellent reasons for this. Game developers have been reluctant to
invest in the effort needed to build highly robust, transactional, and reliable systems
to store virtual asset information. Online games are in a constant state of flux and
so the developers are also concerned that any alterations to the value of virtual
assets (nerfing) might incur a liability for the company because players had already
“invested” in those assets. Other questions include addressing what happens when
the game comes to an end and issues related to gambling arise, as many online
games include a chance element (see Chapter 31).
Others, most notably Raph Koster7 and Erik Bethke, have argued for what
many call an “Avatar’s Bill of Rights” 8. Tony Walsh has argued for further “rights”
related to data9. The term “avatar” is more than a bit misleading. They are really
arguing more about the rights of players in online games and virtual worlds. They
make many excellent suggestions from a best practices perspective and many of the
issues that they raise are far beyond the scope of this book. A couple of issues that
are relevant include the ownership of virtual assets and avatars and the rights of
players in relation to banning and punishment (see Chapter 23).
The essential insight highlighted by the “Avatar Rights” movement is that players ascribe substantial value to their game characters and virtual assets. The willful
denial of this fact has facilitated the growth of gold farming and criminals who target online games, in some sense.
Because developers don’t consider the value that players put in their virtual
“stuff,” customer service is often not responsive to player complaints about lost
items. Also, the game systems are not built to easily log, track, remove, and restore
these items in case of loss or theft.
In some sense, this is ironic—the same game companies that argue vigorously
that the virtual items have no value, at the same time are extraordinarily reluctant
to restore players’ characters or virtual items after alleged theft. The argument is
typically made that the players are abusing the system by allowing their items to
be stolen (or, actually, selling them) and then making a complaint to the game
operator.
If the items have no value, restore them.
However, this is not a matter of rights; it is a matter of good business. Bethke
proposes a “Better EULA” 10, not some sort of formal and universal declaration of
rights. The real key to this issue for online game businesses is to maximize their revenues and minimize their costs. The extent to which expanded ownership of virtual
items by players increases the popularity of a game or the revenues earned from
each player is the extent to which online developers should extend rights and
control of virtual items.
230
Protecting Games: A Security Handbook for Game Developers and Publishers
G OLD F ARMING
Gold farming is almost certainly the most serious game commerce problem for
most online games. After all, gold farmers are playing the game for money and are
therefore much more highly motivated than ordinary players playing for fun. From
a game-play perspective, these players are not (usually) cheating; they are simply
playing the game the wrong way (gold farmers are almost always violating the
game’s terms of service, but not exploiting or breaking the game play mechanics).
The major irritations that gold farmers cause for other players include:
Resource Monopolization—Gold farmers ruthlessly optimize their game play
and actively seek out the highest-value activities and items in the game. After
all, these items are worth the most to the less-motivated players, who are the
farmers’ customers.
Anti-Social Behavior—Generally, gold farmers have no time or interest in
communicating with other players. They are playing to make money.
Interestingly, the growing practice of using “instances” (a portion of the virtual
world that is only available to an active group of players, like the people riding
on the same roller-coaster car) could help minimize this problem by allowing
gold farmers to self-segregate and no longer annoy other players.
Aggressive Marketing—The best place to sell items is when and where people
use them. Gold farmers are very creative in flooding available communications
channels with their sales pitches. It would be interesting to see the effect on gold
farmer marketing of separating game play from “inventory adjustments.”
ArenaNet’s Guild Wars has a limited number of skill slots that are set at the beginning of a play session and the game is highly instanced. This may reduce the
value of intrusive marketing. Some games have restricted communications to
“shouting distance”—a more realistic option, but many do support the ability
to broadcast messages, which definitely amplifies this problem.
Most of the countermeasures today are targeted towards the gold farmers, not
their customers. One could make an analogy to the proven futility of this approach
as seen in the “war on drugs.” After all, if there are no customers, there will be no
gold farmers. The main objections to gold buyers are:
Unearned Rewards—Players who buy virtual currencies, items, or characters
are perceived to not have “earned” them. In some sense, this is a problem for
Achievers and Explorers who view accomplishment in the game in terms of
their acquired assets and knowledge.
Chapter 22 Game Commerce
231
Incompetent Play—Players who buy items or characters have not experienced
the portions of the game that allowed them to know how to use the items or
characters and are thus unable to play at the same level as traditional players.
This is one of the main arguments against power-leveling, discussed later in this
chapter.
Gold farming’s main impact is on customer service and retention. If players are
unhappy and complain, it costs the game operator money for additional customer
support and if players are sufficiently angry with the gold farmers and quit playing,
there is a serious problem. Interestingly, Sony set up the Station Exchange in late
2005 to legitimize these real-money transactions between players and bring them
in-house. Sony found that this change reduced their customer service call minutes
related to virtual item trading from 40 percent to 10 percent11. The reduction in
customer service expense was probably substantially more valuable than the almost $275,000 that Sony earned in sales commissions during the first year of the
service. Unfortunately for game companies, players will call and complain about
problems with their virtual item trading—whether the transactions are permitted
by the game or not.
The general challenge for game developers is that the value they put on fighting gold farming and other game commerce activities is far less than the value that
gold farmers put on their own business. From the perspective of the game developer, gold farming is a customer service problem. Blizzard, the developer and operator of World of Warcraft, claims to have spent only $200 million in upkeep since
the game launched in 200412 or just $50 million on average in each of the last four
years. As the most popular game in the world during this period, World of Warcraft
is likely responsible for a majority of the estimated $1 billion in gold farming revenues per year. The huge disparity between $50 million for total annual operations
(including everything from customer support to technical support, hardware, and
bandwidth) and any significant fraction of $1 billion clearly shows the huge resource disadvantage of any game developer compared to the gold farmers.
Gold farmers will use anything and everything to support their business. If the
game allows free or introductory accounts to recruit new players, the gold farmers
will use them as “mules” to pick up, transport, and store collected items and virtual
currency so that the real farming accounts are less visible to the game. Gold farmers will also use these free accounts to broadcast marketing messages until the accounts are banned. After all, if the account is free, there is no real cost for the gold
farmer... a topic that will be of particular importance when I discuss gold frauders,
later in this chapter.
232
Protecting Games: A Security Handbook for Game Developers and Publishers
All hope is not lost. There are countermeasures that can be taken to help control
or stop gold farming and other forms of game commerce. Many of the techniques
are used by game companies already. Some may change the game-play experience
in an unacceptable way and a number are far from perfect. Hopefully, however,
they will give game developers some additional tools to add to your anti-gold farming arsenal:
Eliminate Character and Item Exchange—This is the “nuclear” option. The
problem is that players really like to be able to exchange game items and
currency. Eliminating the exchange of characters or accounts is very difficult, as
it is problematic to implement and enforce a strong, effective identity system
(see Chapter 29 on identity).
Soul-Binding—This technique is fairly common. An item is bound to a character once it is found or earned. This is a limited case of the eliminate trading
option.
Player-Binding—Instead of binding items to a character, simply bind them to
a player’s account. This may also encourage players to horde items for later use
by additional characters created later, potentially extending their duration as a
customer.
No Private Exchanges: Internal Open Market—All items (and, potentially,
characters) are exchanged via an internal open market like eBay or a stock exchange. Players bid using in-game currency for the items. The lack of private
transactions or gifting will force all gold farming transactions to devolve into
power-leveling, a much more limited business.
Gold Farmer Targeting—Instead of banning gold farmers, griefers, or other
game system abusers, simply turn off any game protections that protect the
characters. Make the characters and their items “fair game” for other players.
Gold farmers then need to decide whether to start another character, which
costs time and therefore money, or deal with the risk of losing their loot to
other players during conflict. Also, gold farmers may think that they have
closed a legitimate financial transaction and find that the player decides to steal
the item from the farmer. This could force gold farmers to use high-level characters to execute or monitor transactions, making their business more costly.
Loot Detection—Large concentrations of game currency or items could be detectable via a spell or skill, making gold farmer treasure stores or players targets.
This could be used in conjunction with gold farmer targeting.
Pure Barter Economy—The lack of a standard in-game currency will force
gold farmers to spread their efforts over the entire range of game items. This
also makes the game economy more dynamic and vulnerable to legitimate
player manipulation.
Chapter 22 Game Commerce
233
No Gifting, No Dropping—The ability to give an item to another player is the
primary mechanism for gold farmers to complete their transactions. Jagex implemented a variation on this system for RuneScape that stopped “unbalanced
trading,” whereby players were using the game’s trading mechanism as a
“covert gifting channel” by trading items of vastly unequal value13. They also
restricted the ability of a player to drop items so that others could retrieve it.
Leveling Premium—Power-leveling is particularly difficult to stop, as discussed later in this chapter. Players can always find ways to exchange account
information. Instead, make it really inexpensive for players to buy their way up
to a higher level. Charge a nominal amount per month for a higher-level character: add $.10 per level. So, to start at level 2, the game subscription would be
only ten cents higher, but to start at level 50 would add $5.00 per month.
Buy Everything: Pure Free-to-Play—If you want an item, you have to buy it
with real currency. This is the purest form of the “free-to-play” business model
discussed previously. Again, power-leveling is the only remaining game commerce concern.
Dual Currencies—Support a time-based currency, based on game play and
in-game activities, and a money-based currency. Allow players to trade between
the two via a blind, open auction. This is the method pioneered by Iron Realms5.
Item Exchange Aging—Items “decay” the more often they are traded. This
reduces the in-game economic value of farmed items. It also creates a dilemma
for a gold farmer: The fewer trades, the more valuable an item is. However, the
fewer trades, the easier it is for game developers to back-track item exchanges
and detect the gold farmers. The decay process can affect the item’s performance or simply consume the item. Once an item has been exchanged (for
example) three times, it simply disappears.
Badging: Pure Experience-Based Play—Players gain the ability to use items
based on completing different quests, dungeons, or other in-game achievements, not based upon finding the items or accumulating currency. More complicated variations can require multiple badges to use certain items with the
ability to mix and match badges to configure a character as the player wishes.
The only currencies in such a game are time and effort.
Real Game Economy/Corrupt Game Commerce—Having a rich economic
system with extensive trading and market manipulation options will allow regular players to engage in economic warfare. If items have weight and size and
there is no teleportation and player versus player conflict is allowed, gold farmers face risk and competition from regular players. Many abstractions of a
game’s economy and game play mechanisms to make game play “safer” also
make gold farming much easier.
234
Protecting Games: A Security Handbook for Game Developers and Publishers
Merchant Account—Have players pay a premium for a legitimate merchant
account that allows in-game trading and gifting. These accounts would have
additional features to support some level of transaction transparency. The
game operator would not become involved in the transaction, but might provide a simple rating system. Conquer Online announced such an option in April
200814.
Gift Tagging—Permanently mark items and currency as having been exchanged or traded. There may be a humiliation factor associated with having
such items visible to other players in your inventory.
The Purist Badge—Create a player badge for players who have never accepted
(or, optionally, given) gifts. Every player starts with this badge until they lose
it by participating in a transaction. Conversely, players who have given or
received items could be given a “trader” badge.
Virtual Item Honeypots—This is a dangerous tactic. Consult an attorney.
Game operators seed third-party sites that support gold farming transactions
with items for sale and then ban the customers after a period of time if they’ve
made a several purchases. This may also create a lot of ill will with your
customers. Obviously, the game company could make a fair amount of money
this way.
Frictionless Player Transactions—Fully support inter-player transactions, but
only for purchasing additional game currency (for free-to-play games) or additional subscription time. This keeps money in the game operator’s system
and basically allows players to play an economic game whereby they have an
advantage over gold farmers, because the transactions should be much more
efficient as there is no risk. The game company will reduce its regular revenues
as players convert game assets into subscription time or currency.
Penalize Gold Buyers—Instead of targeting gold farmers, target gold buyers.
However, instead of banning the players, fine them enough so that they will
have lost more than if they didn’t buy gold. Reset their account to a check
point prior to the transaction. If a player buys 200 gold from a gold farmer, fine
the player 400 gold. There is no need to correlate the time of the punishment
with the crime. This means that once a gold farmer account is identified, it can
be used to target gold buyers; and the gold farmer won’t know that their
account has been compromised.
Slow Trade—Once an item has been traded, it cannot be traded or transferred
again for some period of time. This can be helpful in detecting account looting
by online thieves. Also, it slows down the gold farming pipeline, if there are
multiple transfers between players’ characters.
Chapter 22 Game Commerce
235
Usage Limitation—China and some other countries have instituted usage limitations where players are allowed to play only for a couple of hours. If they play
longer, they will earn reduced experience and rewards. After five hours, they
will earn no experience or gold15. This effectively turns games back into a metered play system which will substantially increase costs for gold farmers, while
having little practical impact on regular players. If a game’s usage limit is set at
five hours, costs are increased more than a factor of five (as the reduced experience after two hours could potentially drive a gold farmer to need 12
accounts to provide 24-hour coverage at full experience).
Deep Logging and Analysis—Fully track the history of each individual item
from the time it is created until it is destroyed. Track the transactions that
move the item from the game system to a game creature or spawn point or
quest through each and every character that has involvement with the item.
Even helping kill the monster that drops an item without picking up the item
would result in a logged event. This should help identify all of the accounts involved in gold farming, even indirectly, as well as help isolate exploits and other
game problems. Good logging is not useful without corresponding analysis
tools.
Virtual Salary—Give players the option of earning a virtual salary through
time of play, level, or even direct additional subscription payments. This would
allow players who don’t have as much time to play to bypass “the grind” without resorting to buying from gold farmers. This is essentially an alternative
way of presenting the free-to-play model to players.
Delayed Banning—Valve Software has long instituted a delay in the time
between when a player has been caught cheating and when they are banned16.
Recently, Blizzard has used the same strategy for World of Warcraft 17. The advantage of this approach is that it makes it much more difficult for a game
cheater or gold farmer to isolate the method used to detect their activities.
Booster Decks/Personal Treasure Chests—Instead of selling specific items,
sell packages of randomly allocated items or have them dropped as treasure.
Then allow players to buy and sell the items via an in-game service and let the
players set the prices (see the section called “Potential Solutions,” later in this
chapter).
Identity Tokens/Improved Authentication/Strong Identity—A strong identity system creates improved accountability. Recently, Blizzard added support
for a low-cost identity token ($6.95 each) for players of World of Warcraft 18.
This will certainly help reduce fraud by online criminals and make it much
more difficult for players to assert that their accounts have been stolen. Such a
scheme probably has more benefit for the company than the players.
236
Protecting Games: A Security Handbook for Game Developers and Publishers
These measures do not have to be used in isolation. In fact, many will work better when combined. Specific game designs and the preferences of the developers
may make several of these solutions impractical. However, it is possible that the
unique character of a game may also allow other anti-gold farming measures that
fit particularly well with the game’s specific environment.
G OLD F RAUDERS , O NLINE T HIEVES ,
AND
I NSIDERS
In early 2008, it appears that there was a turning point in the battle between game
operators and gold farmers. It seems that the game operators’ efforts in
2007 to suppress gold farmers were succeeding. However, instead of driving gold
farmers out of the industry, gold farmers changed their way of doing business—and
really began to hurt the game operators:
I think the issue of farming is higher on the radar now than it ever has been.
The behind-the-scenes things are really frustrating. A lot of these farmers are
essentially stealing from us. What they do is they charge us back all the time.
They use a credit card—sometimes stolen, sometimes not—to buy an account
key. They use the account for a month, and then they call the credit card company and charge it back. We have suffered nearly a million dollars just in
fines over the past six months; it’s getting extremely expensive for us. What’s
happening is that when they do this all the time, the credit card companies
come back to us and say “You have a higher than normal chargeback rate,
therefore we’ll charge you fines on top of that.” We’re really trying to get on top
of that. We’re taking our current efforts up about five notches to Defcon 1 on
this issue. They bug us even more than they bug our customers, and we’re
definitely taking steps to implement rigorous anti-farming efforts.
It’s actually really amazing to sit and watch these people work. I’ve personally
sat with [our customer service team] as they’re tracking a farmer, and you’ll
see a mob spawn—this [the gold farmer’s] got a bot that within half a second
[and] has them moving towards the creature even if it’s halfway across the
zone. It’s a serious problem.
—John Smedley, CEO, Sony Online Entertainment [emphasis added] 19
Gold farmers no longer buy the game and pay their subscriptions until they are
banned; they now are using stolen credit cards or legitimate cards and charging
back their purchases. After all, this substantially reduced their costs, particularly as
the game companies became more effective in their banning efforts.
Chapter 22 Game Commerce
237
“We’re seeing a lot of stolen credit cards. Say you buy gold from a service in
China—you may not know it’s in China, but you give them your credit card
and buy gold only once. They use these credit card numbers to set up new
accounts in these games. They buy an EverQuest account key, farm for a month,
and then charge it back to the stolen credit card.”
—John Smedley, CEO, Sony Online Entertainment 20
It is unusual and notable for anyone at any company to speak out on security
issues, especially when they are costing the company, and Mr. Smedley should be
commended.
And the problem is not limited to Sony. Halifax bank in the UK decided to stop
accepting payments for World of Warcraft because of rising levels of fraud21.
Although gold farmers pay their employees a low, but living, wage of as little as
$142 per month22, the cost of a game ($50) and subscription ($10 to $15 per
month) can be a major cost factor if an account is banned regularly.
Of course, things don’t end there. Why even bother gold farming? A gold frauder
could use a stolen credit card to buy gold from a player or gold farmers, and then
turn around and sell it. Online criminals are getting into the game as well. The value
of a stolen World of Warcraft account is $10, whereas stolen credit card account information goes for only $6 according to researchers from Symantec23. Hackers
seeded 10,000 web pages with malicious code to steal game passwords24 and even
created a web ad slipped onto some World of Warcraft community sites that required visitors to simply roll over the ad to install a Trojan on their computer that
stole their account information25. EVE Online had a similar problem with a website
involved in real money trading26. Viruses that target online games are now routinely
in the “Top 5” list of threats from anti-virus vendors. Account theft and looting is
not solely the providence of organized criminals. Players sometimes share account
information and those “friends” sometimes take advantage and loot the account27.
The final, quite serious, problem that game developers face is with corrupt employees. Insiders have access to the game’s systems and data and can manipulate it
to their advantage. In 2006, three employees of Shanda Interactive, including a vice
president, were caught duplicating and selling very rare weapons28. This made it
very easy to detect their crime. If they had duplicated more common, but valuable,
items like game currency, it is a fair question as to whether they would have ever
been caught. It is possible for a hacker to attack the game from the outside (see
Chapter 32), but, unfortunately, employees are the biggest threat.
Online games offer a lucrative target with little to no legal risk. What prosecutor is going to try to argue about the value of virtual items when the game companies’ themselves don’t consider the transactions legitimate?
238
Protecting Games: A Security Handbook for Game Developers and Publishers
Even if game companies do not value virtual items, they are going to need to
take virtual item theft seriously. At a minimum, they need to be able to track virtual
items and transactions in great detail to be able to undo virtual theft from a customer
service perspective. Several of the other techniques listed previously, such as slow
trading, can also help minimize the effect of virtual theft. In Asia, some game companies have moved to using cell phones as authentication tokens (by implementing
a challenge/response system) as well as for payments. This could be extended to
verifying virtual item transfers. Cell phones generally also have an advantage, as
they provide reasonably good identification information about their owners.
P OTENTIAL S OLUTIONS
The gold farming problem is a serious customer service problem and gold frauding
is shaping up to be a real threat to the game industry. There are options. Pure free-toplay games, where players can purchase every item in the game, are much less appealing to gold farmers and frauders. There is still risk that someone can steal an
account, but without a market for individual items, it is much easier to restore an account without tracking item trades because this only requires changing a password.
Another approach without trading is to move to a pure “badge” system, as
mentioned previously. In many online games, currency is really an afterthought
and the games’ economic systems are tacked on to core systems tied to experience
and adventuring. Rewarding players for their adventuring prowess with badges or
achievements is quite natural. These badges can then be used as the currency to
“buy” various items. Developers can allow players to earn multiple copies of the
same badge by repeating an adventure; they can also make items freely convertible
between an item and its constituent badges, and even have multiple combinations
of badges that can yield a given item.
One system that supports trading and gifting, but has not been plagued by gold
farming, is the virtual Collectible Card Game, Magic Online, and other games of its
ilk. Magic: The Gathering is one of the most significant games in recent memory.
Both the face-to-face and online versions are sold via basic game decks and booster
decks. These decks contain random sets of the game’s various cards, but are all sold
at certain fixed prices. Players set their own value for the items. The game company
does not. The company does, however, collect a percentage of any exchanges of
cards between players. This approach allows a game operator to profit from real
money transactions without many of the risks.
To date, developers have only used this method with cards (real or virtual), but
there is no reason to restrict the system in this manner. A game could easily issue
treasure chests as its only reward with truly random items to be found in each. Each
treasure chest would be the equivalent of a booster deck and so the only design
Chapter 22 Game Commerce
239
variable would be how the treasure chests were issued or earned or purchased.
From a design-management perspective, the game developers simply have to concern
themselves with the rate at which players can earn treasure chests in the game and
make these rewards fairly uniform to eliminate efficient “runs” for gold farmers.
P OWER -L EVELING
Power-leveling sounds more exciting than it is. It is also a problem that is very difficult to stop. There are two basic types of power-leveling. A power-leveling individual or company plays the game legitimately to build up a character until it is
considered valuable. These firms can also boost a player’s status—players have even
paid to boost their achievements on Xbox Live $300 for 3,000 gamer points29. The
power-levelers then sell the character. Individual players will sometimes also sell
their characters or accounts when they are bored with the game. The other scenario
is when a player hires a power-leveling firm to develop a character to spec. This
involves outsourcing the game play to the power-leveler so that the purchasing
players don’t have to take the time (or, some would argue, develop the skill) needed
to create the characters they want.
The reason that power-leveling is so difficult to fight is that it only requires the
exchange of a user name and password to implement. Although this is most often
associated with MMOs, it can occur in any game—a woman arranged to have
another player replace her in an online poker tournament at PokerStars. The surrogate player won, but the company refused to pay the $1.2 million prize because
only the designated account holder is supposed to play in a tournament30.
Strong identity systems can be an effective deterrent to power-leveling, but
they may create a cost and convenience barrier for games seeking to be widely
accessible to potential customers. It is also possible to identify potential powerleveling by using IP address tracking and monitoring individual instances of the
game. This approach is less effective in Asian markets and other locations where
players play in Internet cafes. Also, a motivated power-leveling firm (and foolish
customer) could use remote control software to operate the game client from the
customer’s own computer.
Conceptually, a game that requires a credit card would be more secure if the
player was able to purchase other (expensive) items using the game account, since
a person (hopefully) would be reluctant to share such information. This seems like
a bad idea, in practice.
There are more serious problems associated with power-leveling. Because
power-levelers have access to the players’ accounts, they could break back into an
account after they have finished leveling up the player’s character and loot it, use it
to market gold farming until it is banned, or otherwise take advantage of the users.
240
Protecting Games: A Security Handbook for Game Developers and Publishers
For example, in a free-to-play game, power-levelers could purchase additional virtual items using any credits the player has in her account and transfer the items out
while the player is not logged in. (Humorous Hypothesis: Is the definition of an
ethical power-leveling firm one that reminds a player to change her password once
they have completed their service?)
E SCORT S ERVICES , S UBLETTING ,
AND
V IRTUAL P ROSTITUTION
This final grab bag of game commerce activities are virtually impossible to detect or
control. They all entail players’ intent as opposed to their behavior within the game.
Escort services are a more expensive and limited version of power-leveling. Players
hire other players to play along with them to be more successful more quickly.
Cybersex is often a part of online games. Even a benign kid-friendly game like
Habbo Hotel has had difficulties with virtual prostitution where players have engaged in cybersex to earn the game’s currency, furniture31. More disturbing still was
the potential involvement of a minor providing virtual sexual favors for real money,
allegedly $50 per “encounter,” in The Sims Online32. The legal implications for any
game operator are quite serious (see Chapter 30 on protecting kids).
Finally, when it seems like you’ve seen every permutation of game commerce
tactics, a game player was recently solicited to “timeshare” her online game account. Basically, because her character was already at level 60 in World of Warcraft,
the gold farmer was willing to power-level her for free to level 70... an idea that
opens up all of the risks of power-leveling33 with the promise of easy money. One
can only imagine how many people would be duped by such a service.
S UMMARY
Generally speaking, game commerce activities are considered a serious customer
service problem at minimum and, with the rise of gold frauding, a potentially
serious threat to the online game industry. However, game commerce has one
interesting security advantage—it ties players to the legitimate game service, making
server piracy much less appealing.
The growth of the free-to-play business model does have an impact on gold
farming, as the game operator can essentially undermine any secondary market in
game items and currency if she wishes. There has been an interesting move by game
companies to take advantage of the revenues associated with game commerce.
Game companies who consider this route should carefully consider the potential
for their game being considered an illegal casino.
Chapter 22 Game Commerce
241
I am personally concerned that the move to partner with third-party companies that provide these secondary market services is quite risky. These legitimate
firms can always be undercut by unauthorized transaction services and gold farming operations while the business itself is fraught with high rates of fraud and charge
backs. Although the total transaction volumes associated with game commerce
may be large, the fees for processing the transactions are hard to protect in the face
of unofficial competitors and the fees required for payment processing.
The problem of gold frauders and other criminal activity directly targeted at
online games does need to be taken seriously. Game companies need to put in
place mechanisms to make their games a much tougher target—whatever their
view of the value of virtual goods. Although earning $275,000 over a year in virtual
sales commissions is nice, the impact of $1 million in charge-back fees in just six
months combined with increased processing fees, longer payment hold times, and
potential cancellation of service is costly.
Some will argue for stronger user education; however, at the end of the day, the
game company is the one at risk. These risks may be the real engine that drives
changes to the underlying business models and practices used in online games. The
“facts on the ground” are that players consider game assets to have real value and
courts are beginning to uphold this position. Avoiding the issue opens up criminal
opportunities and may not provide the companies with the liability protection that
they have asserted.
R EFERENCES
1. R. Bartle (1996), “Hearts, Clubs, Diamonds, Spades: Players Who Suit MUDs,”
http://www.mud.co.uk/richard/hcds.htm
2. N. Yee (2005), “Buying Gold,” http://www.nickyee.com/daedalus/archives/001469.php
3. R. Heeks (2008), “Current Analysis and Future Research Agenda on “Gold Farming”:
Real-World Production in Developing Countries for the Virtual Economies of Online Games,”
http://www.sed.manchester.ac.uk/idpm/research/publications/wp/di/di_wp32.htm
4. S. Davis (2007), “The World of Text MMOs/MUDs: An Interview with Matt Mihaly, CEO of Iron
Realms Entertainment,” http://www.playnoevil.com/serendipity/index.php?/archives/765-The-World-oftext-MMOs-MUDs-An-Interview-with-Matt-Mihaly,-CEO-of-Iron-Realms-Entertainment.html
5. M. Mihaly (2008), “Using Dual Currency Systems Is the Best Way to Sell Virtual Goods,”
http://lsvp.wordpress.com/2008/02/06/using-dual-currency-systems-is-the-best-way-to-sell-virtual-goods/
6. Apple (2008),”iPhone Developer Program,” http://developer.apple.com/iphone/program/distribute.html
7. R. Koster (2000), “Declaring the Rights of Players,” http://www.raphkoster.com/gaming/playerrights.shtml
8. M. Zenke (2008), “AGDC08: On Avatar Rights and Virtual Property,”
http://www.massively.com/2008/09/15/agdc08-on-avatar-rights-and-virtual-property/
9. T. Walsh (2006), “‘Data Bill of Rights’ vs. ‘Avatar Bill of Rights’,”
http://www.secretlair.com/index.php?/clickableculture/entry/data_bill_of_rights_vs_avatar_bill_of_rights/
10. E. Bethke (2008), “Better EULA,” http://www.bettereula.com/index.php?title=Main_Page
242
Protecting Games: A Security Handbook for Game Developers and Publishers
11. D. Terdiman (2007), “Real-World Success with Virtual Goods,”
http://news.cnet.com/Real-world-success-with-virtual-goods/2100-1043_3-6156925.html?tag=st.num
12. K. Pigna (2008), “‘World of Warcraft’ Costs Just $200 Million,”
http://news.yahoo.com/s/zd/20080916/tc_zd/232075
13. Jagex (2007), “Trade and Drop Changes,” http://news.runescape.com/p=kKmok3kJqOeN6D3mDd
ihco3oPeYN2KFy6W5vZUbNA/newsitem.ws?id=1007
14. K. Cross (2008), “Recent Headlines for Conquer Online: New Security Features,”
http://www.mmorpg.com/gamelist.cfm?loadnews=10547&bhcp=1
15. Shanghai Daily (2005), “Online Games Set Time Limits Against Addiction,”
http://english.hanban.edu.cn/english/Life/146200.htm
16. Wikipedia (2008), “Valve Anti-Cheat,” http://en.wikipedia.org/wiki/Valve_Anti-Cheat
17. B. Holloway (2008), “Blizzard’s Gold Farmer Bans Send World Economy into Tailspin,”
http://www.massively.com/2008/07/05/blizzards-gold-farmer-bans-sends-world-economy-into-tailspin/
18. Blizzard (2008), “Blizzard Authenticator FAQ,”
http://us.blizzard.com/support/article.xml?articleId=24660&rhtml=true
19. M. Zenke (2008), “A CES Interview with SOE CEO John Smedley (pt. 2),”
http://www.massively.com/2008/01/14/a-ces-interview-with-soe-ceo-john-smedley-pt-2/
20. L. Alexander (2008), “Q&A: SOE, Live Gamer Reveal ‘Live Gamer Exchange’ Service,”
http://www.gamasutra.com/php-bin/news_index.php?story=17268
21. J. Leyden (2008), “UK Bank Blames Fraudsters for World of Warcraft Ban,”
http://www.theregister.co.uk/2008/02/15/halifax_blizzard_block/
22. R. Heeks (2008), “Current Analysis and Future Research Agenda on “Gold Farming”: Real-World
Production in Developing Countries for the Virtual Economies of Online Games,”
http://www.sed.manchester.ac.uk/idpm/research/publications/wp/di/di_wp32.htm
23. BBC (2007), “Cursor Hackers Target WoW Players,”
http://news.bbc.co.uk/1/hi/technology/6526851.stm
24. R. McMillan (2007), “10,000 Web Pages Infected by Password Hack,”
25. E. Cavalli (2008),”Trojan Attack Targets WoW’s Info Sites,”
http://blog.wired.com/games/2008/03/trojan-attack-t.html
26. J. Egan (2008), “EVE Online Currency Sellers Rip Off Players (Shocker),”
http://www.massively.com/2008/07/24/eve-online-currency-sellers-rip-off-players-shocker/
27. C. Kagotani (2005), “Japan: MMOG Crime Rising,”
http://www.edge-online.com/news/japan-mmog-crime-rising
28. A. Xu (3006), “Three Men Tried for Selling Online Game Weapons,” via
http://www.playnoevil.com/serendipity/index.php?/archives/763-Insider-Virtual-Asset-Crime-inShandas-Legend-of-Mir-2-IMPORTANT.html
29. V. Cole (2006), “$300 for 3,000 XBL Gamer Points?!,”
http://www.joystiq.com/2006/10/03/300-for-3-000-xbl-gamer-points/
30. A. Darbyshire (2008), “Woman Withdraws Claim to $1.2m PokerStars Winnings,”
http://www.iomtoday.co.im/news/Woman-withdraws-claim-to-12m.4382619.jp
31. BBC (2002), “Furniture Strumpets and Debit Card Toilets,”
http://www.bbc.co.uk/dna/h2g2/alabaster/A680014
32. P. Ludlow (2003), “Evangeline: Interview with a Child Cyber-Prostitute in TSO,”
http://www.secondlifeherald.com/slh/2003/12/evangeline_inte.html
33. T. Baribeau (2008), “Hit Monsters and Get the Gold,” http://www.cuppycake.org/?p=415
23
To Ban or Not To Ban?
Punishing Wayward Players
o ban or not to ban, that is the question. In order to maintain order in an
online game, virtual world, or social network, it is necessary to do something
about troublesome participants. Usually. There is a huge temptation to
consider player behavior in light of some notion of civil behavior, just as game
companies often view piracy.
T
But game companies are not governments; their goal is to maximize revenues
and keep their customers satisfied, not mete out “justice.”
There are a number of different areas to consider player punishments. Theft of
service via piracy is very different than griefing or cheating. As discussed in Chapter
22, the costs associated with gold farming and game commerce come from customer
service issues until the gold farmers transform into gold frauders and online thieves.
C RIME , C REDIBILITY ,
AND
P UNISHMENT
For punishment to be effective, it must be credible. One of the biggest challenges
for online games is that it is very hard to make punishments stick. Banning is, in
some sense, the least credible form of punishment because identity is so weak in online games (see Chapter 29 on identity). In some sense, player punishments should
be ABB—Anything But Banning. After all, what is really being banned is a specific
account or identity, not the actual person.
In an online environment, the real goal of most punishments is to deter problem behavior, not drive away customers or, in some sense worse, encourage them
to create alternative identities. The other danger of driving away players is that at
some point their population grows to a size to support a viable “black market service” that can compete with the game operator’s legitimate service. The larger the
population of banned or otherwise disaffected players, the larger the potential
243
244
Protecting Games: A Security Handbook for Game Developers and Publishers
customers for a guerrilla, competing service. (There is, of course, the obvious
scenario where these players migrate to another online service and help boost its
population so that it will grow faster than the banning service.)
The other question that has to be addressed is whether the right person is being
punished. As noted, for virtually all games, an account or identity is being punished, not an actual person. Console games can use both a player account for
punishment as well as the ID of the console, itself. If the account is used for punishment, it may be easy for a player to set up another one using a new credit card
or other payment method for authorization. If the console ID is used, there is some
question that the player actually owns the console and then there are a number of
issues related to the transfer or sale of a console to another person.
Finally, there is the question as to whether the punishment fits the crime. Xbox
Live took action against players who had boosted their Gamerscores (achievements),
most likely via a game save exploit (see Chapter 14). The players had all of their
achievements to date removed and any achievements that they had previously earned
were made unavailable to the player. In addition, the player’s account was publicly
flagged as a “cheater”1. In the future, the player would be able to earn new achievements, but it does not appear that the “cheater” flag could be removed. Although this
is almost certainly a clear case of abuse, the question is—how much harm did the
player do to the service? There are mostly no prizes or awards for achievements2. The
main social power of Xbox Live comes from multi-player gaming, where cheating
certainly would be an issue. If anything, this form of cheating would be a great opportunity for a private punishment—letting the players know that they’ve been caught,
but not sharing it with others. The cheater’s achievements could be marked “Suspect,”
for her eyes only. The player could then be given the opportunity to delete or re-earn
the achievement or simply leave the “Suspect” flag in place.
T HE C OST
OF
P UNISHMENT : W HO ’ S B EING P UNISHED ?
Ironically, the richer and more expansive the service, the more costly punishment
is for the game provider. Wide-ranging services like Steam and Xbox Live are true
“long tail” revenue generators. An Xbox subscriber with a Gold account delivers
$49.98 in revenue per year for Microsoft3. This is in addition to any game sales,
peripheral sales, and downloadable content sales. Given that many game troublemakers are also highly motivated customers, the annual cost of a banned player
could literally be hundreds of dollars. After all, if a player is banned, she is not likely
to buy any more games or anything else from the banning company. This also is
true for Steam, even though it doesn’t charge a subscription. If banning is effective,
a player is highly unlikely to buy additional games
Chapter 23 To Ban or Not To Ban? Punishing Wayward Players
245
The scenario is different when dealing with players who have stolen or pirated
goods. Perhaps. If the player is effectively banned, there is no additional revenue
that will be earned and, if anything, it may encourage further piracy (see Part II).
Another interesting question comes from games with purchased virtual assets
or MMOs where players have developed their characters over an extended period
of time. Players do feel substantial ownership of these characters and items. Will
game companies continue to be allowed to ban players in these circumstances?
In China, Shanda Interactive was sued for 11,000 RMB (around $1,600) because the company banned a player. In an earlier case, The9 was forced to restore a
banned player’s account and items and even pay court costs4. China has been at the
forefront of cases legitimizing ownership of virtual items in games. Most game
companies in the US have tried to avoid addressing this issue in court for fear of
establishing precedent. There is real risk that at some point in time, courts will
decide that game items have value, which seriously restricts potential punishments
(or may require the use of third-party arbitration).
P OSSIBLE P UNISHMENTS
AND
C REDIBLE D ETERRENCE
There are many potential ways to punish wayward players. The goal is really to
deter troublesome activity, whether it is piracy or cheating or griefing or hacking,
or any other misbehavior. Anything that qualifies as an actual crime should be
taken to the authorities.
Although there has been a reluctance to pursue individuals for computerrelated crimes, online businesses need to be at the forefront of encouraging the
prosecution of these individuals and groups. This also means that game companies
should build their games to collect evidence that will be useful in identifying criminals as well as make sure the evidence is of sufficient quality and accuracy that it
can be used in court. The industry would do itself a service by educating government and law enforcement about the seriousness of computer crime and encouraging vigorous enforcement.
The goal for non-criminal players should be to minimize the punishment as
much as possible. It is costly to deal with player complaints from a customer service
perspective. This applies to both the victims of the various forms of game abuse as
well as the perpetrators. The most important question for the game operator
is whether to terminate the player’s service and if this will actually credibly deter
the player. There are numerous options that a game operator should consider,
including the following:
246
Protecting Games: A Security Handbook for Game Developers and Publishers
Game Termination—Ending a game session to avoid further problems. This
can be an issue with tournaments or ranked games, as players will use such mechanisms, as seen in Chapter 20, to manipulate the results of the competition.
Kicking—Simply removing an offending player from a game session. This can
be done by players as well as by game systems. This can either be handled
within the game session or as a first stage for more serious action by the game
operator.
Personal Blacklist—Giving players the ability to personally “ban” others so
that they will no longer be able to play together provides an easy way for players
to manage troublesome individuals directly.
Reputation Systems—These systems can help flag troublesome players. However,
the systems are only as effective as the underlying identity system for the game
service and the extent to which players can attack the reputation system itself.
Game Termination with Prejudice—Ending a game session and giving the
offending player a loss or penalty. Care should be taken so that players cannot
use the “with prejudice” system to grief other players.
Slow Down—Reducing the rate at which the player can play or benefit from
playing the game or games at the game service.
Suspension—Denying the player partial or full use of the game or game service.
Probation—This option can be used either alone or in conjunction with other
penalties as a warning or notification of detected abuse with no specific penalty.
Instead, the player is “put on notice” that she has misbehaved and further
abusive actions will be dealt with appropriately.
Status Penalty—Reducing the player’s status, rank, or achievements in the
game service for some time period or even permanently.
Account Reset—The most severe version of a status penalty would be to
completely reset a player’s account and empty it of all earned status, rank,
achievements, and virtual items.
Public Humiliation—Marking the player’s account when viewed by other
players as an abusive player of the appropriate type. The other option is to
have a public list of offenders and their crimes.
Virtual Fine—An interesting option, for at least gold buying and even gold
farming, is to penalize the account by creating a virtual financial penalty. If a
player bought 100 gold, penalize her 300 gold.
Real Fine—A player could have her account suspended until some actual payment is made either to the game operator or the offended individual or group.
This mechanism may be effective as long as the penalty is such that it is preferable to pay it than to quit or start over.
Chapter 23 To Ban or Not To Ban? Punishing Wayward Players
247
Invisibility—Some game services are very loose communities. In these environments, it may be effective to penalize a player by making her invisible to
others for many services, like matchmaking. Such players could initiate contact
with others, but as a default they would not be presented for matchmaking or
other services that expand social networks.
Abuser Grouping/Segregation/Exile—When an online game or social network
has identified a player as some type of troublemaker, the system can preferentially or exclusively group the troublemakers together. This is more effective
with larger communities, as troublesome players may not notice that they have
been isolated from the main population.
Full or Partial Banning—Banning probably needs to be more than just a user
account. In order for banning to work, the game service must be able to reliably
identify the offender. For game consoles and PCs, the ban may extend to the
equipment, an IP address or range, a physical address, a credit card number,
and so on.
Game Company Blacklist—As noted much earlier in the discussion of the rich
interaction system (see Chapter 9), the larger and more extensive the system,
the more incentive that a player has to participate in it legitimately. When the
game operator decides to remove a player, credibility is complemented by
range. If a player is at risk of experiencing a serious penalty, far beyond just a
single game, she may be less likely to cause trouble.
Game Industry Blacklist—The casino industry is somewhat notorious for its
blacklist of known cheats. The regular game industry could put a similar service
in place to ban real troublemakers from all online gaming. This would require
addressing some legal issues, but it may be possible for game companies to
collaborate to truly ban certain individuals.
Arbitration—Today, game companies are judge, jury, and executioner.
However, as games grow and players become more vested in their gaming
experience, a player who has been banned or otherwise punished may take
legal action to reverse her penalty, as noted in the Chinese virtual property
cases. By incorporating an arbitration clause in the game service’s terms of
service, game operators may be able to avoid such appeals going to court. An
arbitration system by a neutral third party may also minimize customer complaints about player penalties.
Trial by Jury—Another option for meting out justice in a game is to use the
players themselves as the judicial system. Depending on the nature of the game
and the crime, it may be possible to select a random “jury of your peers” to
determine guilt and assess penalties. This adds legitimacy to the process and has
the added benefit of reducing costs for the game developer.
248
Protecting Games: A Security Handbook for Game Developers and Publishers
This is by no means an exhaustive list of player penalties. Game developers can
even integrate penalties into the game experience. For a while, Second Life had a
cornfield where players were sent if they got in trouble with Linden Lab administrators5. Even more thematically accurate, the Rome-themed MMO, Roma Victor,
used virtual crucifixion for punishment6. The only danger with some of these
public, in-game penalties is that certain players are more interested in attention and
so these penalties turn into rewards and achievements. Knight Online penalized
players who were found using exploits by causing them to suffer double damage
from other players and creatures as well as having their character’s level reduced
substantially below the level it was when they were caught7.
S UMMARY
The most severe punishment that can be meted out against a player is banning his
or her account; actually banning a person is almost impossible. There are also very
legitimate questions as to whether the game company is actually punishing itself by
removing future revenues. Even worse is the potential for an aggrieved player to sue
the game company to restore her status or service.
Some problems, like gold farming, may not even be amenable to banning as a
penalty. A ban may be considered simply part of the cost of doing business.
A number of games and social networks refer to dropping the “BanHammer”
when they ban a number of participants. This is probably an apt description.
Banning is a rather blunt instrument for punishing troublemakers and it might not
even deter its targets. Also, the game operator may hit her own “thumb” instead of
the intended miscreants.
The use of lesser punishments is promising. Gaming is an entertainment industry. The goal is to entertain customers and earn revenue from them. It is certainly
important that companies do something to address players’ misbehavior, but the
real goal is to keep them (and as many other players as possible) playing.
Chapter 23 To Ban or Not To Ban? Punishing Wayward Players
249
R EFERENCES
1. Microsoft (2008), “Gamerscore Corrections,”
http://www.xbox.com/en-US/support/systemuse/xbox360/gamerprofile/gamerscorecheating.htm
2. Johnathan (2008), “The Old Spice Experience Challenge: Earn Achievement Points to Win Fabulous
Prizes,” http://news.filefront.com/the-old-spice-experience-challenge-earn-achievement-points-to-winfabulous-prizes/
3. Microsoft (2008), “Xbox Live Subscription Cards,”
http://www.xbox.com/en-US/live/memberships/subscriptioncards.htm
4. S. Fu (2008), “Shanda Gamer Sues for Emotional Damages After Game Account Sealed,”
http://www.pacificepoch.com/newsstories?id=130010_0_5_0_M
5. T. Walsh (2006), “Hidden Virtual-World Prison Revealed,”
http://www.secretlair.com/index.php?/clickableculture/entry/hidden_virtual_world_prison_revealed/
6. J. Lees (2006), “Virtual Crucifixion Punishes Bad Behaviour Online,”
http://www.joystiq.com/2006/03/23/virtual-crucifixion-punishes-bad-behaviour-online/
7. MMORPG (2007), “Recent Headlines for Knight Online: Accounts Penalized for Exploits,”
http://www.mmorpg.com/gamelist.cfm?bhcp=1&loadnews=7098
This page intentionally left blank
Part
V
The Real World
In this part, you’ll find the following topics:
Chapter 24, “Welcome to the Real World”
Chapter 25, “Insider Issues: Code Theft, Data Disclosure, and Fraud”
Chapter 26, “Partner Problems”
Chapter 27, “Money: Real Transactions, Real Risks”
Chapter 28, “More Money: Security, Technical, and Legal Issues”
Chapter 29, “Identity, Anonymity, and Privacy”
Chapter 30, “Protecting Kids from Pedophiles, Stalkers, Cyberbullies,
and Marketeers”
Chapter 31, “Dancing with Gambling: Skill Games, Contests,
Promotions, and Gambling Again”
Chapter 32, “Denial of Service, Disasters, Reliability, Availability, and
Architecture”
Chapter 33, “Scams and Law Enforcement”
Chapter 34, “Operations, Incidents, and Incident Response”
Chapter 35, “Terrorists”
Chapter 36, “Practical Protection”
251
24
Welcome to the Real World
elcome to the real world. After all, games do not exist in isolation: they
are built by companies with employees, partners, and customers. This
part of the book focuses on a number of security issues that affect games
during development and after their deployment into the real world. There are issues
that affect the security and essential health of a game and a game business that are not
traditionally considered “security issues.” I asked a long-time colleague and attorney
Joseph Price to help address some of the legal issues that can affect a games business
and brought in Marcus Eikenberry to discuss some of the problems with money and
payments that can bring any business to its knees.
W
“The Insider Problem” is widely perceived to be the single largest security issue
for any organization. After all, employees need to be trusted if they are going to be
able to do their jobs and sometimes that trust is misplaced. For game companies,
the three most critical insider problems are code theft, data disclosure (both of
which can affect any game), and fraud against online game services.
Increasingly, games are too big to be built, marketed, and operated solely by
internal company employees. Working with partners raises additional issues. One
especially common problem is that security requirements and responsibilities are
not adequately addressed in the contract between the parties. There are also interesting issues related to the licensing of games to, and from, other companies.
Money is perhaps the oldest “virtual asset” and the economy is the one game
that almost everyone plays with great enthusiasm. I have closely followed ecommerce and the evolution of online services for years, but I have never seen a good
explanation of how payments really work for businesses and what it can mean for
a company. My own experiences in this regard have been fairly painful and eyeopening. Because of the topic’s importance, there are two chapters on money issues.
252
Chapter 24 Welcome to the Real World
253
Establishing strong identity has been a theme and a security topic from the very
beginning of this book—identity affects piracy, cheating, griefing, gold farming,
and all of the other topics discussed so far. Knowing your customers are “who they
say they are” is very powerful, but it is difficult to maintain a good balance between
convenience and strong identity. If it is inconvenient or time-consuming to join a
game, many potential players won’t participate. Conversely, people often behave
very badly when there is no accountability for their actions. Anarchy reigns without a strong identity relationship with your customers.
The market for children’s games and online services has grown explosively in the
past several years. Protecting children is a unique challenge for developers and game
operators because there are laws and expectations for security that do not exist for
players in general. Often, game companies and online service providers avoid children as a market that is “too hard.” This is a bit extreme; I’ll argue that there are
some benefits to the children’s market that do not exist for other consumers.
The popular perception is that only children play games. There is one aspect of
the games industry that the general public does not associate with children: gambling.
There are many ways that game companies can stumble into gambling and as people
innovate with game business models as well as advergames and contests, their legal
risks are growing. Although there is no inherent problem with the gambling business
per se, you don’t want to create a casino or lottery by accident. Governments carefully
regulate all legal gambling businesses and there are severe penalties for companies and
individuals who don’t follow these rules—accidentally or not.
One could not have a security book without addressing some traditional IT
security issues and there are a number of these issues that are particularly relevant
to game businesses: Denial of service and availability are key requirements for any
online service. The growth of the IT and IT security industry has made addressing
these concerns much easier than it used to be.
We should not forget that there are villains—the hackers and online criminals
who may attack a game or use your game to prey on your customers. Law enforcement has not been a very effective ally in this fight and the attitude of game companies towards the security issues in their games may make the security situation worse.
Things go wrong. Security incidents will occur. We are often judged by how we
respond to adversity. Most security incidents occur during the operational lifecycle
stage, but developers and security professionals spend very little time focusing on
handling real security incidents when they occur. Although it is nice to think that
security measures will always succeed, it is essential to plan for failure and recovery.
Finally, the topic of terrorism and virtual worlds has gotten the attention of the
mainstream media. One could hardly write a book on security and games without
discussing the issue, at least briefly.
25
Insider Issues: Code Theft,
Data Disclosure, and Fraud
mployees are in the best position to do damage to any company. They have
legitimate access to a company’s valuable assets. Such insiders are of particular concern for any company whose value is tied to its intellectual property
and online services. Game companies are particularly vulnerable, as their value is
tied to both.
E
In many cases, insider security issues are inadvertent: caused by negligence or
ignorance or simple laziness. Part of this is an artifact of the history of game development as an informal, garage-based business. Formality, procedures, and controls
are often seen as anathema to the creative souls of game developers. The industry
has changed. Computer games now regularly cost millions of dollars to develop and
can generate tens or hundreds of millions of dollars in revenues. There is a lot that
is worth protecting.
There have been a number of cases where the code for a game has been compromised during the development process. This can result in months-long delays
while the game is reworked. There have also been incidents where a finished game
has been lost or stolen. These cases are particularly costly, as a game’s anti-piracy
system is often incorporated at the end of the production process and therefore
there are no security measures in place to protect the game from being widely
distributed.
In contrast, online games are particularly vulnerable to insider fraud. Virtual
items are just entries in a database and can be trivially duplicated by a user with
access to a game’s servers. Insider fraud concerns are as much about preventing the
perception of abuse as reality. The perception of fraud or bias by a game operator
can undermine the service’s reputation with its customers. This perception is one
of the reasons that game companies need to be very careful about allowing employees to play their own games on public servers.
254
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
255
There are technical solutions that can help manage insider threats and errors.
However, technology is only a complement to hiring the right people, training
them well, and holding them accountable for their actions.
C ODE T HEFT
AND
O THER D ATA D ISCLOSURES
with J. Price
The process of developing and supporting games has grown steadily more complex.
Localization, audio, and art may all be developed by different studios around the
world. This requires increased formalization of security processes to protect the game
project.
Code theft has become a notable, and highly preventable, security vulnerability
for the games industry. The “garage engineering” mentality is still too prevalent in
an industry with multi-million dollar development budgets and gross revenues for
individual games over one hundred million dollars. A game’s code-base and art assets
are just too valuable to be left easily accessible on the Internet—especially in an
industry that regularly complains about losing many millions in sales to piracy. HalfLife 2 was compromised by hackers breaking into an employee’s computer from the
Internet during the game’s development, allegedly resulting in a four-month delay 1.
There are two sets of costs in cases of code theft or data disclosure to consider.
First, it costs tens of thousands of dollars (if not more) to extend a game’s development by a single month. One month’s delay would probably pay for a substantial
suite of IT security tools and, perhaps, the IT staff to run them. Second, many
major game titles earn tens of millions and, in some cases, more than $100 million
within the first month of launch. The cost of a delay and piracy are both substantial.
Microsoft earned over $300 million in the first week after Halo 3 launched 2. Although
Halo 3 was not the victim of a security leak, Halo 2 3 and Grand Theft Auto 3 4 were
both compromised prior to launch.
There is also the issue of compromising other companies’ code: The physics
engine from Havok was allegedly part of the compromised source code for Half-Life 2
and, as licensed software becomes more common in the game industry, this risk
could grow substantially.
For such major titles, each day of delay could “cost” tens of thousands of dollars in interest alone.
FutureValue / Revenues = $300 million;
// The chosen sample total game revenues
Interest = 5% per year or .05/365 per day;
256
Protecting Games: A Security Handbook for Game Developers and Publishers
The formula for present value is:
PresentValue = FutureValue/(1+InterestRate)^(number of days); See 5
For the current scenario, this would result in pure interest costs for a delay of:
$41,090 after one day
$287,514 after one week (7 days)
$1,230,263 after one month (30 days)
This very simple model ignores the costs associated with rescheduling other resources, such as marketing, as well as any lost sales due to piracy.
Even worse, these problems are largely preventable. Traditional information
security practices such as firewalls, intrusion detection systems, good configuration
management systems, or even isolating high-value systems and data from the
Internet are easy to implement and inexpensive.
A notable complicating factor is the rise of distributed development and outsourcing in the games industry. More sites, more companies, and more people inherently create more risk. In the US there are a variety of criminal laws addressing
code theft and related circumstances6. The specific section of the criminal code, in
the US or elsewhere, that applies depends on the circumstances of the crime. A
common criminal law prohibiting most types of hacking is the US Computer Fraud
and Abuse Act (CFAA). Most of the CFAA’s provisions prohibit unauthorized
“access” to a “protected computer” coupled with other conduct7.
A proactive security strategy is needed to manage these risks. First, do not provide full access to high-value data to everyone. Avoid any connections to public
networks that are not absolutely necessary. If people, or companies, cannot access
data, they cannot compromise it. Second, make people and organizations accountable. Implement tracking and logging mechanisms: If a problem occurs, it should
be possible (and preferably easy) to find the culprits. Fire people. Fine companies.
Publicly. Finally, have a recovery plan in place in case of theft or disaster. Games are
major businesses; they should implement good back-up strategies and have disaster recovery plans in place, as well as have adequate insurance and other measures
to manage business risks8.
Hackers and other data intruders are subject to criminal and civil liability.
There are at least 40 federal statutes that can be used to prosecute cybercrime; in
addition, victims can sue under a variety of civil (money damages) theories. For
example, if a hacking victim is attacked by a hacker who works for a company, and
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
257
the hack was launched from a company computer (or in some way involved the
company), the victim might sue the company and file a range of charges such as
negligence, negligent hiring, or negligent supervision.
Hackers are often difficult to identify or be made subject to the jurisdiction of
the US. Even worse, they are typically what lawyers refer to as judgment proof: They
are not worth suing because they do not have enough money to pay damages. It is
alleged that a disgruntled former employee at Electronic Arts was responsible for
leaking the game Black9 and Ubisoft accidentally posted 2GB of screen shots,
videos, and concept art to a publicly accessible server10. In the first case, there is not
likely much that can be gained from prosecuting the ex-employee and in the latter
case, the company has only itself to blame.
A better target for a lawsuit is an entity that failed to prevent the security
breach, or otherwise covered up an issue causing more damages in the long run.
Ubisoft is suing the company that reproduced disks for its game Assassin’s Creed
and who was allegedly responsible for the game being leaked online. These entities
have deeper pockets for plaintiffs, and are sometimes easier targets11. In general,
courts will impose some form of liability on the person in the best position to
prevent losses, particularly if they are aware of the security issues. The best legal defense, therefore, is to avoid security breaches. Security bonding and insurance (if
available) may also help. However, most standard insurance polices that companies
have for liability and “errors and omissions” protection are written so as to avoid
or minimize payouts for computer-security related offenses.
Code losses typically occur accidentally or due to the actions of individuals: the
source code from Lineage III was allegedly stolen by a group of company employees and sold to another game company. NCsoft claimed losses of $1 billion12, which
it is hardly likely to ever collect from anyone.
Issues will arise, however, and there are specific laws meant to protect intellectual property and network integrity. Owners of intellectual property (such as game
code) can seek protection through trade secrecy, patents, copyrights, and other legislation tailored to their particular industries. In the DeCSS13 DVD security circumvention tool cases, for example, the DVD Copy Control Association tried to stop
distribution of DeCSS through state trade secret law, whereas Universal and other
studios invoked the DMCA, a federal copyright and anti-circumvention statute.
These techniques only supplement good business strategies and effective technical
measures. It is an open question whether the DVD industry “won” the war against
the DeCSS or whether the decreasing prices of DVDs had a more significant impact
on reducing piracy.
258
Protecting Games: A Security Handbook for Game Developers and Publishers
O FFICE IT I NFRASTRUCTURE
Many security problems come from accidental disclosures. One of the simplest
ways to avoid such problems is to physically isolate high-value data and computers.
Although many IT security professionals advocate firewalls, intrusion detection
systems, and such, the cost, effectiveness, and simplicity of physical isolation cannot
be overstated. A hacker cannot compromise a computer that she can’t connect to.
This is especially true as the cost of computers and networking equipment continues to plummet: meaning that it is easier to have some computers dedicated to
development and others with access to the Internet.
Some inconvenience can be a good thing.
Having to change computers or go to a different room to access certain data or
services, such as the Internet, removes the temptation to browse or collect unneeded
data or waste time. There was merit to the earlier physical security systems where
important information was kept in locked file cabinets. Permission was required to
access any information and usage was tracked (often under the wary eye of an
archivist).
I used to work on classified systems, sometimes in a big vault. When we wanted
to use the Internet, we went into a different room and logged in from a public computer. Our real work was physically separate. A collateral benefit of this arrangement was that we had much less gratuitous web surfing by employees. I have had
access to network logs at a number of large commercial and government sites and
the amount of non-work-related web surfing was appalling. Sports, news, shopping,
and a surprising amount of pornography was being “consumed” on company, or
government, time. My business partner and I had to fire an employee for excessive
Internet use. Inappropriate Internet use is a real problem and very costly in dollars
and time.
It is also a huge security risk.
I have had discussions with several individuals at game companies who have
implied that certain staff “need” Internet access. If so, the cheaper, more secure solution is to give them a separate computer. Anything that needs to be brought into
the internal development or operational system is then introduced via “sneaker
net” on physical media, preferably through a software library or configuration
management group. This can have an additional benefit of helping track the source
of material in case of copyright disputes.
The other common, contentious issue is related to remote access. If remote
access is necessary, it should be done via dedicated computers provided by the
company. Under no circumstances should these systems be used for other purposes
(surfing the Internet, playing games, whatever). There are good hardware and
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
259
software security tools to help ensure that only specific machines and individuals
can access a company’s sensitive networks and computers. This sort of segmentation can also be extended to internal networks; programmers can be isolated from
artists and business and marketing people separated from everything. Formal build
and test systems should certainly be separated from the general office IT infrastructure, as should anything having to do with money or real operations (see the section
called “Sample Game Operations Architecture” in Chapter 32).
If utterly necessary, this separation can be implemented via VLANs or other
“virtual” technologies. However, human behavior will often tend to unravel these
easy isolation technologies.
At the end of the day, management and the company as a whole need to believe
in and “own” the security strategy, not just the IT guys.
I NSIDER F RAUD
There is no worse problem for any organization than a malicious insider. Insiders
are already behind the scenes and underneath all of the protections that you have
built in to protect your game against troublesome players. This is most obvious for
gambling games. Casinos have layers of monitoring to try to stop this problem:
Dealers watch players, pit bosses watch dealers, floor managers watch pit bosses,
and security and regulators watch everyone. Even so, every so often, the lure of easy
money draws in employees. Recently, at the Lakeside Casino in Iowa, a dealer colluded with some mini-baccarat players to alter the cards and help them win at least
$12,000. All were arrested thanks to video surveillance14. Two online poker sites,
AbsolutePoker.com15 and UltimateBet.com16, have been embroiled in cheating
scandals where players, perhaps company employees, used access to the sites’ computers to cheat by seeing the hidden “hole” cards of the other players.
Although the stakes are particularly high for online gambling, other games
have had notable insider fraud problems. A vice president at Shanda Interactive and
two accomplices were found guilty of fraudulently creating and selling virtual items
for the MMO Legend of Mir II17. The group earned 2 million Yuan (over $254,000).
As discussed in Chapter 22 on gold farming, there is a large market for illicit virtual
goods and fraud is particularly tempting for company insiders. There have been
many similar incidents reported at other game companies and, no doubt, quite a
number that were either handled privately or remain undetected.
Insiders can also cause other problems. A Halo 2 developer “for fun” added a
picture of his behind into the Vista version of the game’s map editor18. Although this
may seem humorous, Microsoft had to re-label all of the copies of the game with the
“Partial Nudity” ESRB label, which delayed the product’s launch by one week.
260
Protecting Games: A Security Handbook for Game Developers and Publishers
There are other potential problems. Identity theft (see Chapter 29) and payment fraud (see Chapters 27 and 28) as well as other forms of fraud are often easier
within online services, especially those where security concerns were not a core
part of the design.
P LAYING Y OUR O WN G AME
Online games are no longer a “garage” business. MMOs cost millions to tens of millions of dollars to develop and are designed with the goal of generating many more
millions revenues (except for wild independents). Although game developers love
their games, the adverse consequences of developer’s cheating at their own game so
far outweighs any game design benefits that it just needs to stop. In 2007, CCP Games,
developer, publisher, and operator of the science fiction MMO, EVE Online, found
itself at the center of a controversy over the disclosure that employees of the company had been cheating to help their corporation (a “team” of players in EVE
Online)19. This was not the first time such accusations had been levied against CCP
Games employees, but the scale of this incident was quite embarrassing for the
company. Fortunately for CCP Games, the incident has had little long-term impact.
Game integrity is paramount.
There is nothing more important to business than the trust of your customers,
especially if everything that you provide is virtual. I have heard (repeatedly) the argument that “Developers need to play the actual game to really be able to support
it.” Developers need to find another way. The consequences are just too dire and
the temptation is too great. In 2001, the McDonalds Monopoly promotion (an instore ticket-based promotion) was hit by a scandal when it was discovered that an
employee of the marketing firm that ran the promotion had been secretly giving
winning tickets to his friends and family starting in 1996. That fraud earned the
conspirators $13 million and some serious jail time and cost the marketing firm,
Simon Worldwide, its contracts with McDonalds and Philip Morris20.
It is very hard to estimate the real costs of these types of security incidents. For
subscription games, some players may simply not renew; for a free-to-play game,
they may simply stop buying as many items. Suppose an MMO has 100,000 subscribers and charges $10 per month. Further, let’s assume a developer (or group of
developers) cheats or abuses the game for their own advantage and therefore causes
0.1 percent of the subscribers to cancel immediately. Then, the immediate cost of
the security incident would be:
0.1% x 100,000 x $10/month = $10,000/month or $120,000 for Year 1
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
261
In a subscription game, suppose this increases the chance that players don’t
renew from 20 to 25 percent (again simplifying the subscription model so that
everyone leaves at once and had just renewed... the most favorable model from a
revenue perspective). The increased loss of subscribers would be:
5% x 100,000 = 5,000 lost subscribers after 1 year
Therefore, the Year 2 loss would be an additional:
5,000 x $10/month = $50,000/month or $600,000 in Year 2
(in addition to the $120,000 who left immediately)
So, the Year 2 losses would be $720,000.
One should also model the opportunity cost of new subscribers who decide not
to join the game because of their concerns about perceived cheating. This is harder
to model. There are players who decide to enroll “for free” because of the recommendation of their friends and then there are those who enroll because of marketing. Both may be reduced in the wake of any cheating scandal.
Assume 10 percent of players ordinarily would recommend the game to their
friends and this number is reduced by 10 percent (meaning the recommendation
rate is only 9 percent). However, the total population of players has been reduced
by those who left immediately, so the total population is 95,000.
Therefore, the additional lost subscribers (for Year 2) total:
95,000 x 10% x 10% = 950... costing an additional $114,000 in Year 2
Finally, in the wake of the bad publicity, any marketing to “cold” prospects
would be less effective, perhaps by 20 percent. One can model this in terms of increased marketing costs to maintain population or by reduced additional revenues;
either way, it is expensive.
There are many ways to model the consequences of such incidents. Although
the immediate cost of an insider scandal may not be that great, even using fairly
conservative numbers for a small MMO, one could easily suffer million dollar
losses in the second year for these types of incidents. More severe incidents that are
handled poorly will drive these costs substantially higher. Free-to-play games that
depend on players making virtual asset purchases are likely to be even more vulnerable, because they do not have the inertia of ongoing, and often automatic, subscription renewals to maintain revenues.
262
Protecting Games: A Security Handbook for Game Developers and Publishers
Also, as games mature and move to a steady population, an incident of this sort
can tip the game into a death spiral where lost subscribers outnumber new players
and drive the game towards collapse.
P RIVILEGING
AND
I SOLATION
The very features that cause problems with developers playing their own games and
insider fraud are necessary to the successful operation of an online game.
Developers need to be able to create items and exchange them. They need to be able
to fully test the game play experience in as realistic an environment as possible.
Developers also need to be able to modify a game’s code and its databases. In order
to allow payments to be made, customer data needs to be stored somewhere and be
accessible.
Because these functions are required, they need to be implemented in a secure
fashion. In this case “security” means that they are only used when, where, and how
they are intended to be used.
The first level of control is privileging and (application) user roles. Game
operators and customer support staff are separated based on experience and trust
with senior personnel given more capabilities than junior staff. These capabilities
may be based on job function or individual needs or experience. The main benefit
of using a person’s job for privilege control is that it is typically easier to manage.
The security industry also has a nice term for it—Role-Based Access Control
(RBAC), in contrast with Identity-Based Access Control (IBAC).
The other general tactic is to isolate or split functions or operations from each
other. The most familiar example is that a business will require two signatures
when writing a large check. This strategy can be very effective because multiple
individuals need to collude for the system to fail. The notion of a signature/
counter-signature system can be easily implemented for any critical function. Fully
automated functions in software can even be split in this manner to protect against
failures.
There are a number of additional methods that can be used to help address insider security issues:
Outside Investigations—If anything goes wrong, use an independent, outside
investigator to ensure credibility of the results. This is a standard damage control tactic in other industries and it is equally applicable to games.
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
263
Controlled Key Item Creation—First, high-value items, like the blueprints
that were the problem for EVE Online as well as the rare items from Legend of
Mir II, should probably only be created with the authorization of more than
one developer/game master. This would make it notably more difficult for a
single individual to abuse the system.
Separate Server/World for Developers, Friends, and Families—Set up a separate server or virtual world for developers and their friends and families. This
allows them to play, but removes any appearance of impropriety related to any
benefits in the public game.
No Rewards for Developers, Friends, and Families—If the game has any incentives or awards that have any real value, no employees, associates, or friends
or families should be eligible to win or earn them.
Key Item Logging—High-value items should probably have a life history that
is logged so that their ownership can be tracked back to their creation.
Executive and Oversight Alerts and Reports—Any activities that could alter
or disrupt the game—item creation, game parameter alteration, and so on—
should be regularly tracked and reported to both game operations executives
and whatever independent oversight system is used to ensure game integrity.
Strong Configuration Management/Split Teams—Developers should not
have access to the live system and, conversely, the live team and testing personnel should not have access to the developmental code base. Careful configuration control needs to be in place to ensure the integrity of the code.
Employee Game Logging—Although one can debate the merits of developers
playing the live game endlessly, it should certainly be clear that developer
accounts should be flagged and logged at a much deeper level than regular
players. This may include the use of a distinct client version. It should go without saying that developers should not be playing the game from a development
system workstation.
Independent Logging System—The system logs and auditing systems should
be truly independent of the regular game play and data storage servers. It would
be best that the auditing systems be developed and maintained by a different
team.
Take Game Integrity Seriously—MMOs lifeblood is the integrity of their game
operation. This is a multi-million dollar business. With over 120,000 subscribers paying $15 per month, any damage to the game’s credibility or out and
out corruption could literally break the bank. The consequences for a failure of
game integrity could be fatal.
264
Protecting Games: A Security Handbook for Game Developers and Publishers
Insider problems are a particular challenge because they require the developer
to look at her own team with suspicion. Business processes need to be understood
and shaped to reduce opportunities for fraud or abuse. Logging (with active review
of the audit logs) is necessary to provide credible deterrence and support for legal
action. Often, little time is spent figuring out how the back-end systems (user management, payments, customers service, game master systems, and so on) of a game
service will operate. As a result, all employees are allowed to do everything, just to
keep the game running. Careful back-end system design will likely have substantial
benefits far beyond addressing insider problems. It will likely improve supportability and reduce operational costs.
Chapter 25 Insider Issues: Code Theft, Data Disclosure, and Fraud
265
R EFERENCES
1. C. Morris (2003), “Playable Version of Half-Life 2 Stolen,”
http://money.cnn.com/2003/10/07/commentary/game_over/column_gaming/index.htm
2. Microsoft (2007), “Global Entertainment Phenomenon ‘Halo 3’ Records More Than $300 Million in
First-Week Sales Worldwide,”
http://www.microsoft.com/presspass/press/2007/oct07/10-04Halo3FirstWeekPR.mspx
3. D. Becker (2004), “Stolen ‘Halo 2’ Hits Pirate Sites,” http://news.zdnet.com/2100-3513-5409959.html
4. R. Fahey (2004), “Grand Theft Auto San Andreas Leaked by Pirates,”
http://www.gamesindustry.biz/articles/grand-theft-auto-san-andreas-leaked-by-pirates
5. Wikipedia (2008), “Time Value of Money,” http://en.wikipedia.org/wiki/Time_value_of_money
6. See, for example, 18 U.S.C. §§ 1029 (fraud and related activity in connection with access devices), 1030
fraud and related activity in connection with computers), 1343 (wire fraud), 1831 (economic espionage),
1832 (trade secrets), and 2701 (stored wire and electronic communications and transactional records access)
7. 18 U.S.C. § 1030
8. Insurance Journal (2007), “Fireman’s Fund Launches Product for Video Gaming Industry,”
http://www.insurancejournal.com/news/west/2007/06/14/80820.htm
9. T. Spot (2006), “Angry Ex-EA Staffer Leaks Black?,”
http://www.gamespot.com/news/show_blog_entry.php?topic_id=24344800
10. K. Kelly (2006), “Ubisoft ‘Accidentally’ Leaks Tons of Assets,”
http://www.joystiq.com/2006/09/21/ubisoft-accidentally-leaks-tons-of-assets/
11. B. Sinclair (2008), “Ubisoft Sues Over Assassin’s Creed leak,”
http://www.gamespot.com/news/6195570.html?sid=6195570&part=rss&subj=6195570
12. The Chosun Ilbo (2007), “Game Programmers Suspected of Stealing Code,”
http://english.chosun.com/w21data/html/news/200704/200704260026.html
13. Wikipedia (2008), “DeCSS,” http://en.wikipedia.org/wiki/DeCSS
14. Lynda (2007), “Arrests Made at Terrible’s Lakeside Casino,”
http://www.essentialestrogen.com/2007/07/arrests_made_at_terribles_lake.html
15. S. Levitt (2007), “The Absolute Poker Cheating Scandal Blown Wide Open,”
http://freakonomics.blogs.nytimes.com/2007/10/17/the-absolute-poker-cheating-scandal-blown-wideopen/
16. M. Brunker (2008), “Poker Site Cheating Plot a High-Stakes Whodunit,”
http://www.msnbc.msn.com/id/26563848/
17. C. Li (2007), “Three Jailed in Online Gaming Scam,”
http://www.chinadaily.com.cn/cndy/2007-03/27/content_836887.htm
18. Edge (2007), “Nudity the Cause for Halo 2 Vista Delay,”
http://www.edge-online.com/news/nudity-cause-halo-2-vista-delay
19. S. Jennings (2007), “Eve Blows Up. Again,”
http://brokentoys.org/2007/05/25/eve-blows-up-again/
20. P. Patsuris (2001), “Simon Marketing Gets Fried in McScandal,”
http://www.forbes.com/2001/08/24/0824dog.html
26
Partner Problems
with J. Price
“Si vis pacem, para bellum” (“If you want peace, prepare for war”)1
ame companies are rapidly moving from doing everything in-house to
contracting or outsourcing a substantial portion of their work. Third-party
game developers build games for publishers, developers outsource art asset
creation, and publishers license games internationally or hire foreign firms for
localization. The foundation of these relationships is contracts and one area that is
often neglected in contracts is security.
G
If you want a good business relationship, write contracts
that assume everything will go wrong.
Prior to working with the game industry, I spent many years working for the
U.S. government with IT contractors and for contractors working with the government and with other companies. Although my work was technical, I rapidly learned
that my success was highly dependent on contracts. If the contract was well-structured
and thorough, we rarely had to resort to it. If it was not well-structured, life could
become a nightmare. My co-author for this chapter, Joseph Price, is an attorney
who lives and breathes contracts, and often gets paid to deal with the consequences
of poor contracts.
C ONTRACTING S ECURITY ?
In some sense, contracts are very much like software. The standard rule of thumb
is that 80 percent of software code is written to handle errors. Most of the terms in
a contract are there to handle when things go wrong. If implemented properly, a
good contract will keep you out of court and, hopefully, help keep the project on
track. Save some money while writing a contract and you may be in court for years.
266
Chapter 26 Partner Problems
267
The common answer to almost all of the security issues that we discuss in this
chapter is a good contract and structuring the business relationship so that a good
contract can be created and its results measured. A contract is the security tool of
last resort and is a supplement to good security design and business practices.
“Security,” like quality, is quite tricky from a contract perspective because it
is so hard to measure. You can’t write security into a contract; what you can do is
carefully define what you are doing for protection and, if possible, create measures
for accountability when things go wrong.
Security is of particular concern to publishers contracting for games from
third-party developers and game developers that incorporate outsourced services
or products. Whether it is the compromise of the game code during development
or the customer support costs associated with game exploits, security failures are
exacerbated by the nature of third-party relationships in the game industry.
Outsourced products and services can introduce additional security risks. Finally,
online games have a unique challenge with both official and unofficial community
sites that are associated with a game, but not owned or operated by the game’s publisher. These sites are often the source of malicious code, phishing attacks, and
other security problems that target game players.
S ECURITY A CCOUNTABILITY
IN
T HIRD -P ARTY D EVELOPMENT
Third-party developers are motivated to get their games out as quickly and as inexpensively as possible and are typically held accountable for delivering a “great
game.” Because the bulk of the fees that these developers earn are typically on completion of a title, their motivation to address lifecycle and operational issues like
security and other support services is low (quite reasonably). Publishers and developers need to cooperate to ensure that security issues are adequately addressed
during the development process.
The computer game industry is changing: A flashy box and fancy graphics will
not guarantee success. Games no longer have a 30-day sales cycle, but are moving
to a long-term relationship between publisher and player via an online service;
game-development licensing needs to catch up with these changes. Although the
only security issue that used to be of concern was fighting piracy, now, cheating,
griefing, and other issues are comparably important.
The game publisher needs to provide an ongoing operational infrastructure to
support a game. Customer support, server operations, and ongoing engineering,
patching, and maintenance have changed games into services. The nature of the
business relationship and deliverables between a game developer and publisher
268
Protecting Games: A Security Handbook for Game Developers and Publishers
must change to match this model. Solid engineering, good design, infrastructure
costs, lifecycle costing, and management now matter. Publishers must rethink their
relationship and contracts with developers so that contracts match business needs.
Factoring security issues into the game-development process is one way to reduce lifecycle costs and risks. Game publishers should engage a layered approach
when working with developers and end users. Security risks (which translate into
costs) should be considered at each stage of game development. The later security
is included in the game-development process, the more expensive it is going to be,
particularly considering piracy and code theft that may occur even before the game
is released. It is the publisher who will ultimately pay for security failures one way
or another.
Today, for games from third-party developers, the software is typically provided “as is,” in terms of security. During my discussions with a number of developers, many have said “security is the responsibility of the publisher.” For console
games, developers and publishers have often relied on the security provided by the
platform; a strategy that has not had good results so far. So, with everyone placing
the security responsibility on everybody else, the security “ball” simply gets dropped.
If the publisher insists on a security solution, and is willing to pay, developers
will apply resources to security, just as they do for animation, art, and game play. In
the game contract, the publisher could ensure that its developers agree to appropriate indemnification (acceptance or transfer of liability) for security issues. If this is
not possible, the publisher could insist that the developer deploy security that the
publisher has rights to and prefers, as part of the game (this is the most common
approach today for anti-piracy technology). In other words, the developer should
consider incorporating its own security solutions that the developer believes are good
enough to warrant tight indemnification or give the publisher the option to require
the publisher’s preferred security solution to be incorporated as part of the game.
Developers should also consider making security more of a priority as more
games are adding downloadable content, virtual asset sales, and other monetization
strategies. These may result in substantially larger royalties for the developers, but
only if the game is successful.
S ECURITY A CCOUNTABILITY
IN
T HIRD -P ARTY L ICENSING
Online games are increasingly seen as good licensing opportunities. Potential game
publishers or game operators get a completed title with the potential for a prompt
return of their investment and the game developers can earn substantial royalties in
numerous regions. However, licensees are obliged to operate and support these
Chapter 26 Partner Problems
269
games and security problems can turn a potentially profitable license into a costly
customer support and marketing nightmare.
Griefing alone, much less other security problems, can consume 25 percent of
monthly service costs2 and suck the profits out of a licensed online service. In Sony
Online Entertainment’s report on its experiment with real money transactions
(RMT), SOE found reductions in overall customer support costs of 30 percent simply by supporting these transactions internally3.
A key part of the due diligence process for licensing any game should be to
determine support costs and risks. Games developed in sophisticated markets like
China, Korea, or the US are likely to be thoroughly “tested” by griefers, cheaters,
and hackers. It is highly worthwhile to research the “security state of the game.”
Most games are not going to be wildly successful. Good control on operational
costs including griefing, cheating, gold farming, and RMT may be the difference
between success and failure.
Another question that is important when licensing games is accountability for
security, which can affect both parties. The game developer may be concerned that
the licensee does enough to protect the game source and executable code that they
provide, while the licensee may be rightly concerned about who will fix security
problems and how promptly (and, of course, who will pay to fix those problems).
NCsoft’s Lineage 2 server code was compromised, apparently in China. Later, this
turned up in several places, including a pirate service in the US that was eventually
shut down by the FBI but potentially cost NCsoft millions in subscriber revenues4.
Similarly, Cryptic Studios was the victim of a hacker who compromised the server
code for City of Heroes as well as knocking several game servers offline5.
Security and technical support problems turned into a contentious dispute
between Korean game developer, MGame, and the licensee of its MMO Yulgang,
CDC Games, in China6. Because of the problems, CDC first stopped paying licensing fees and MGame revoked the game license. Eventually the two companies settled,
although one suspects that lawyers were the sole beneficiaries in the dispute.
In Korea, a number of game companies outsource security to specialty security
service providers, most notably Inca Internet Co. (GameGuard) and AhnLab
(HackShield). In the US, the only major game security service provider is Even
Balance with its Punkbuster security service. Many companies who license games
from Korean developers are required to negotiate a separate license with the security provider. This is almost certainly a poor way to structure a contract; especially
from the perspective of a licensee. When licensing a game that uses such a service,
it is probably preferable to include the security service in the prime contract with the
game company to have unified responsibility for security (and, since the total
payments are larger, this gives the licensee a bigger “stick” to push for better security support).
270
Protecting Games: A Security Handbook for Game Developers and Publishers
How does the new game operator control this risk? Here are some options:
If the game has been previously deployed, the licensee should do extensive due
diligence to determine whether there are known problems with the game. The
licensee should also audit the game’s forums and internal trouble tickets (and
the time that the company takes to close those tickets) to determine the pace of
security problems. This is critical for being able to estimate support costs.
If the game company is using a security service or product, this should be
bundled with the license cost and the technical security support responsibility
should stay with the game developer. A new game operator should not have to
initiate a contract for security support.
In the terms and conditions for the contract, a maximum pace for security
incident trouble tickets should be budgeted with a clear escalation process if serious weaknesses are not corrected. If this pace is exceeded, the game developer
should have to pay penalties or give discounts to the licensee. Also, the developer should be obliged to promptly report new security problems found in
other regions to the licensee.
An interesting collateral issue is the challenge of replacing a licensee. The long
saga of The9 and their battle with Blizzard over the licensing of the Burning Crusade
expansion to World of Warcraft in China is an interesting example. The companies
worked out their issues, but Blizzard was quite unhappy for a long time with the
quality of service that The9 was providing to World of Warcraft’s Chinese customers7. The termination of an online game license is especially tricky, because
there could be questions about ownership of the customers and any modifications
or localization to the game carried out by the licensee. Although many developers
license their games as an executable without source code, I actually think that it
would be wiser for developers to license or lease pre-configured servers as an appliance (see also sidebar in Chapter 8). This increases control over the licensee and
reduces the effort required for support because the developer has full control over
the game appliance platform.
S ERVICE P ROVIDER
AND
P ARTNER S ECURITY I SSUES
Games are no longer just sold in boxes at a store. There are electronic distribution
services, online game services, payment processors, game arcade operators, and even
security service providers. The security performance of these companies can have
serious implications for the success of your game. Outages, such as that experienced
by Valve’s Steam online game distribution service8, as well as more conventional
security problems, can affect the revenues of all of the businesses that use these
Chapter 26 Partner Problems
271
services. The situation can be complicated further by having many companies,
subcontractors, products, and service providers involved. When there is a security
problem, they will all be pointing their fingers at each other or at you.
If someone is thinking about security, the relevant legal issues are raised right
before a contract is signed for software or services. Typically, however, security
becomes a consideration only when a breach occurs. The French version of Halo 2
was compromised during the manufacturing process9 in 2004 and in 2008 Ubisoft
launched a $10 million lawsuit for contract breach and negligence. Ubisoft filed the
suit against its U.S. disk manufacturing company for allegedly allowing an employee
to compromise Assassin’s Creed10 (resulting in 700,000 illegal downloads). In a
perfect world, every contingency will be considered when initially negotiating the
contract. In reality, a breach will occur in a way not entirely anticipated, and will be
complicated by everyone’s confusion about what actually happened and further aggravated by split responsibilities between the affected parties and other product and
service providers.
Given these circumstances, it is wise for the licensee and licensor to keep four
issues in mind when licensing software or services:
Licensee Rights—The licensor will want an assurance, and the licensee should
also confirm for its own purposes, that the licensee has the rights to what it is
licensing, including all of the elements it relies upon to deliver the product (for
example, consider sublicenses when relying on other licensed work).
Damages—Consider worst case scenarios and who you are dealing with; a licensee that cannot (or will not) provide monetary relief should be expected to
provide its product at an appropriately discounted rate because the licensor will
have to spend money elsewhere in anticipation of a breach (if a security software firm, for example, is a small company with few or no assets, its breach
conditions or warranty might only be as good as its insurance policy, if any,
which should be requested to be part included as part of the contract).
Warranty—Anything short of an express warranty, created by an affirmative
statement, description, or promise in the license (such as an express warranty
as to the security capabilities of hardware or software) will give a licensor pause.
Breach and Termination—Consider how you can get out of the license agreement, particularly when a breach occurs, and also consider what damages
might be available upon breach.
Reviewing the license in the context of a security breach will likely be a complicated effort when the agreement is initially negotiated. There are few laws and
regulations that apply in this area of law. Liability will likely rest with the entity that
is contractually liable, if there is one.
272
Protecting Games: A Security Handbook for Game Developers and Publishers
If there is a lawsuit, it will need to be crafted based on how the security breach
occurred. Good logs and tracking mechanisms are necessary to even begin such a
suit. These records need to be created, stored, and handled in a manner such that
they can be used in court. It is important to consider forensic issues before an incident occurs. If the license grants rights for software or services “as is,” there are no
guarantees, such as the existence of an express or implied warranty (this is often
buried in a contract paragraph in which all the words are capitalized and extra difficult to read). If there is any available warranty, it will be, at best, in a legal grey
zone; the license may provide a degree of a warranty, complicated by limited
indemnification rights, maximum payout restrictions, and subject to third-party
licenses that no party to the agreement has ever actually reviewed.
Damages and causes of action in court for breach of warranty are generally different than breach of contract. It is common to have exclusive remedies applicable
to contractually promised express warranties if, for example, the hardware, software, system, or service fails to comply with an express warranty. For these reasons,
the breach of contract and breach of express warranty claims are generally treated
as separate claims, even where the express warranty claim arises under a contract
between the parties.
Service providers (for example, ISPs, social networks, and online games) may
find themselves part of a lawsuit involving their customers whether or not they
“should” be included. The quickest way to get out of the lawsuit is to have something clear to give to the court that cannot be attacked by the plaintiff or other
defendants. Service providers will want to take full advantage of a legal immunity
available to them11, and reaffirm that immunity in their service agreement and
other contracts.
The model to engage is the “conduit.” With the law and typical service contracts on their side, ISPs will escape liability, which will likely lead to another party.
A slight warning is warranted to those ISPs and other service providers that move
from the conduit role and add functionality. A recent case in California confirming
the broad application of immunity included a footnote indicating that any involvement by the ISP that resembles the actions of a publisher could void the immunity:
Delfino v. Agilent Technologies, Inc., 145 Cal.App.4th 790, 808 n.25
(Ca. App. 6th Dist. 2006)
“We recognize that there is an existing debate concerning whether immunity
under the CDA [Communications Decency Act of 1996] applies equally to
both publishers and distributors of information authored by third parties and
disseminated over the Internet.” (citing Doe v. America Online, Inc., 783
So.2d 1010, 1018-28 (dis. opn. of Lewis, J.) (Fla. 2001)).
Chapter 26 Partner Problems
273
This case leaves the door open for potential liability (for example, if a service
provider provided security functionality and those mechanisms were to fail).
The contract should be the security measure of last resort. First, design the
business so that it has robust security; second, have clear accountability for any external parties; third, have a solid technical solution; and finally, paper it over as well
as you can with good contracts and licenses.
C OMMUNITY
AND
F AN S ITES
One of the great things about the game industry and for the game industry is that
its customers are often fans who set up websites, community sites, and other online
forums. Players set up these sites on their own initiative and can have audiences of
tens of thousands or more.
However, many of these sites are run by amateurs and are easy prey for hackers and online criminals. Some are set up by criminals to lure players in to collect
personal information and passwords or even download malware onto visitors’
computers.
These sites are totally beyond the control of game companies and the threat is
serious. Thirteen percent of the malware in Asia is targeted towards online games12
(key-loggers and other tools that help break into player accounts). Sometimes online sites do strange things that can create security problems. The Chinese Internet
portal Sina ran an online poll about casual games, which was fine, except that there
were questions in the survey that asked for player’s account names and passwords13.
Improved identity systems, like World of Warcraft’s identity token or systems
that use cell phones to log in, can minimize the potential risks from player errors.
A lot of people have argued strongly for user education as an effective countermeasure against phishing or accidentally installing malware, but a game company can’t
bank on changes in player behavior. One potential option is to include or provide
free security software with a game. Another option is to certify and monitor fan
sites to help them with their website security.
274
Protecting Games: A Security Handbook for Game Developers and Publishers
R EFERENCES
1. Vegetius, “Prepare for War: Latin Quote from Vegetius,”
http://ancienthistory.about.com/od/warfareconflictarmor/f/PrepareforWar.htm
2. D. Becker (2004),“Inflicting Pain on Griefers,”
http://news.com.com/Inflicting+pain+on+griefers/2100-1043_3-5488403.html
3. N. Robischon (2007), “Station Exchange: Year One,”
http://www.gamasutra.com/features/20070207/SOE%20Station%20Exchange%20White%20Paper%201.
19.doc
4. FBI (2007), “Cracking the Code, Online IP Theft Is Not a Game,”
http://www.fbi.gov/page2/feb07/iptheft020107.htm
5. B. Crecente (2005), “City of Heroes Hacked,”
http://kotaku.com/gaming/city-of-heroes/city-of-heroes-hacked-144399.php
6. L. Alexander (2007), “CDC Sues MGame for Security, Tech Support Failures,”
http://www.worldsinmotion.biz/2007/10/cdc_sues_mgame_for_security_te.php
7. S. Burns (2006), “Warcraft Game Makes $10m a Month in China, But Blizzard Expansion Dispute Still
Not Resolved,” http://www.vnunet.com/vnunet/news/2162262/world-warcraft-makes-10m-china
8. M. McWhertor (2006), “God Hates Steam, Too,”
http://kotaku.com/gaming/god/god-hates-steam-too-222329.php
9. D. Becker (2004), “Stolen ‘Halo 2’ Hits Pirate Sites,”
http://news.zdnet.com/2100-3513_22-139103.html
10. B. Sinclair (2008), “Ubisoft Sues Over Assassin’s Creed Leak,”
http://www.gamespot.com/news/6195570.html?sid=6195570&part=rss&subj=6195570
11. 47 U.S.C. § 230
12. M. Hines (2008), “Online Game Malware Takes Off in June,”
http://securitywatch.eweek.com/exploits_and_attacks/online_game_malware_takes_off_in_june.html
13. DoNews (2008), “Sina Online Poll Asks for Game Account Passwords,”
http://www.marbridgeconsulting.com/marbridgedaily/2008-09-11/article/19520/sina_online_poll_asks_
for_game_account_passwords
27
Money: Real Transactions,
Real Risks
by M. Eikenberry
Author’s Note: Although money can’t buy happiness, lack of money can cause your
business to collapse. Handling payments and fighting financial fraud are
profoundly important issues for online services, especially game companies. The
lack of physical product delivery makes digitally distributed games and online
game services targets for fraud. There are also serious risks associated with payment processors that many individuals, experienced only with the consumer side of
the payment business, are completely unfamiliar with. I asked Marcus Eikenberry,
who has lengthy experience with these types of transactions as a game code and
virtual item reseller, to provide his insights into the payments process and fighting
fraud.
am Marcus Eikenberry and I’m a serial entrepreneur. I make a living dealing in
intangible goods and services within online video games. My companies sell
huge volumes of game registration codes and game time codes, as well as providing anti-fraud solutions for other sellers within these online gaming markets.
I
I started in 1997 selling virtual items within the game Ultima Online. I noticed
a couple of sales of UO items on eBay and wanted to try my hand at making a sale
there. I took two extra game accounts I had that were about three months old and
put them up on eBay with full details of all the virtual loot that would be included
on them. When I sold the accounts for a combined total of $2,400 I knew I was onto
something. I thought to myself, “I could make a full-time job of this and do very
well.” I have done so ever since.
Now more than 10 years later, I no longer touch in-game goods when it violates
a game’s terms of service. I focus on selling game codes and providing anti-fraud
services for other companies.
After being taken for a lot of money by scammers and thieves and not understanding how to process payments over the years, I’ve developed methods for some
of the more popular payment services to greatly reduce fraud and overhead costs.
275
276
Protecting Games: A Security Handbook for Game Developers and Publishers
You will find information here that will help you improve your own payment processing and anti-fraud practices to help you to keep more of your profits in your
pockets.
P AYMENT P ROCESSING
Payment processing in its simplest form is getting the money your customer wants
to give you for goods or services into your account. There are several types of payments. I will cover some of the ones that are more popular with video game players.
In North America, credit cards are king. PayPal is also very popular. In Europe,
there is a smaller percentage of people who use credit cards. In Europe, the culture
in many areas is that if you are purchasing with a credit card it is because you do not
have the funds to make the purchase. This may account for their lower use in
Europe and why bank transfers are the preferred payment method. Moneybookers
is a very popular payment method for Europe, as it supports multiple types of bank
transfers as well as credit cards.
Another method that is very popular across the globe is prepaid cards. These
cards can provide credits into your games or subscription time. These are very popular because of their low barrier to entry for purchasing. In the US, you can walk
into any Target store and find 30 or more types of prepaid game cards. In Europe,
the cards can be found in many supermarkets.
If you are selling services or intangible goods that are not delivered to the customer’s physical address, you will not have any seller protection in the event of a
dispute. When accepting payment by credit card, you must accept the fact that you
will lose 99 percent of all disputes. Credit card companies do not track digital goods
delivery. Nor does it appear that they will offer any support for this in the near future.
Depending on your volume of sales, you can expect to pay 1.9 to 2.4 percent,
plus a transaction fee of $0.25 to $0.35 per transaction. Most credit card companies
will not allow you to charge the customer directly for these fees. Additional fees can
be levied on the vendor for chargebacks (Author’s Note: A chargeback is when a
consumer reverses an existing credit card purchase and the vendor is responsible for returning the funds to the credit card company and, ultimately, to the consumer unless the
vendor can successfully dispute the chargeback). Chargeback fees are commonly $10
per disputed charge. You can also be fined heavily if you have a high percentage of
chargebacks. If you have greater than five percent fraud you may need to worry
about these additional costs. The threshold will depend on the merchant service
you are using. If you are planning to have higher than five percent fraud, this
threshold may be one of the questions to ask when looking for a merchant account.
Chapter 27 Money: Real Transactions, Real Risks
277
Credit card companies will commonly do a credit check on you or your company before approving a merchant account. They also will have caps on transaction
volumes in dollars per day, week, or month. These caps can be directly related to
your personal or company income. I have known company owners who have told
me horror stories about having great growth in a market only to have your merchant account held for reviews when the credit card company starts to get nervous
about your volumes.
For this reason, I suggest having multiple merchant accounts. Use a round
robin method of cycling through the accounts with each new payment that comes
in. Using a round robin method is helpful for multiple reasons. The first might be
obvious: If you have four merchant accounts, the volume will be split across the
four accounts. Thus you will have fewer chances of hitting your limits. The other
issue is when funds get held by the payment processor. These funds are most commonly held for disputes but sometimes the entire account can be frozen if the credit
card company is nervous for any reason. If you do have multiple accounts and one
of them gets tied up, it will not kill your business. You will still have other accounts
and will still have access to their funds. This is important because if you look in
your merchant contracts you will see that they can hold your funds for far longer
than you can go without them. (Author’s Note: They can hold your funds for months
and you have no way to dispute the delay… or even earn interest on the funds.)
I recommend starting with four different accounts from four separate payment
processors. Even if you have really great credit and very high limits, I still suggest
starting with at least two companies.
USING PAYPAL
PayPal is very popular in North America. It is also available in many European
countries. PayPal accounts are funded in three different ways. The first is that one
PayPal account holder can send funds to another. Those funds are held within the
account. The accounts can also be credited from bank accounts and or credit cards.
Fees for PayPal are 1.9 to 2.9 percent of each transaction, plus a $0.30 fee. If you
are accepting funds from all over the world, there can also be a currency conversion
fee of up to 1 percent on top of this. Other fees that can appear are credit card
chargeback fees of $10. Other disputes that are not credit card funded do not have
extra fees.
Depending on your volume and your credit score, PayPal may also elect to insure your transactions against your going out of business. In most cases when you
reach volumes of more than a quarter million dollars per month you will be subject
to this, and PayPal will place a temporary hold that is a percentage of your daily sales.
278
Protecting Games: A Security Handbook for Game Developers and Publishers
In my dealings with PayPal, we have had a “hold” like this placed on one of our
high volume accounts. The percentage that they told us they would “hold” was only
1 percent lower than our previous year’s profit percentage. I found this to be a
threatening request as they stated that they were doing it to insure the “good
health” of our company. I did renegotiate the percentage to something that we felt
was much more acceptable. So if you get hit with this by any company, do attempt
to negotiate your fees.
PayPal originally started this process and a rolling hold on our funds when my
credit score dropped (this was occasioned when we launched a new company and
we financed part of its launch). PayPal as well as merchant account providers will
check your credit every six months or so, and if your score gets too low for the
volume of sales you are doing, you may be faced with one of these holds. As an
additional note, my credit has returned to where it was prior to the holds, but the
holds are still in place. I would hope that they would release these funds but who
knows. Now that this is in place they may just keep it for the life of the account.
PayPal offers a wide range of features that are good for merchants. They offer
small companies easy development of payment buttons for their websites as well as
automated communications with their online stores for big companies. They also
have fairly good multi-user accounts where you can give access to staff without
giving them full control over the account. Many other payment methods have no
support for this, which means you to have to give the master login to your staff to
process transactions. (Author’s Note: This kind of single login system creates serious
risks of insider fraud that is difficult to detect, as there is no individual accountability
for actions.)
You can also sign up for the PayPal money market account, which tends to pay
higher interest than most banks on the daily funds within your account (currently,
the account pays up to 6 percent). For most companies there will be no reason not
to participate, even if you sweep all of the funds out of your account nightly you will
still earn interest. Make your funds work for you. (If you get any funds “held” on a
rolling 90-day cycle, do insist that those funds be included. Because you cannot use
those funds for anything else, you should demand it; I did and PayPal has included
them.)
PayPal offers multiple levels of account managers. As you increase in volume
your account gets transferred to higher and higher levels. The highest levels will give
you direct access to your account manager 24/7. To reach the highest level, you
need to be doing an average of over $500,000 per month in a rolling three-month
average. Lower-level accounts will be supported only during standard business
hours.
PayPal, in my opinion, is a very good payment method.
Chapter 27 Money: Real Transactions, Real Risks
279
USING MONEYBOOKERS
Moneybookers supports many different bank transfer methods as well as accept
credit cards. In Europe, Moneybookers is more popular than PayPal. The European
method of bank transfers has a much lower cost than it does for us in the US. As
Europeans tend to like to use bank transfers more, Moneybookers is providing a
service that is needed and wanted.
Moneybookers takes a different approach to fraud. They guarantee no chargebacks or reversals on any payments. There is, of course, a catch to this. If you start
accepting too much fraud they will close your account. They use this “no fraud” as
a big selling point. You still have to do your due diligence to screen funds coming in.
Moneybookers has one item that I feel has a high risk. They do not have multiuser accounts. This requires you to give out your master login and password to any
staff that needs to perform functions within the account. Moneybookers is working
on allowing multiple logins and permissions levels for the future. But as of writing
this, that option is not yet available.
PRE-PAID CARDS/GAME CODES
Pre-paid cards are becoming more and more popular. By moving to a code redemption system, you can allow others to resell your products and use their existing payment methods and infrastructure. This also allows you to let the merchant
take all of the risks on whom they sell to. The complexity of implementing a code
redemption system is much less than if you were to implement several payment
methods. The down side to this system is that resellers will need to be able to earn
their normal retail markup rate.
OTHER PAYMENT METHODS
Many carriers offer billing to telephones or cell phones as an option. There are several companies out there that can help with this service. This method has two major
pitfalls. The first is that it is not uncommon to have carrier charge 50 percent of the
transaction amount for their fee (in the US). The second is that the volume your
customers can purchase via this method can be $100 or less. This is not a very profitable method unless you have very high margins.
Are more payment methods better? The simple answer is yes. I have seen a direct increase in sales with several stores once I added additional payment methods.
I would suggest the following methods for tracking what is needed and wanted:
280
Protecting Games: A Security Handbook for Game Developers and Publishers
Know where your customers are coming from. Identify their countries. Take
your top countries and focus on their available payment methods first. Credit
cards are nearly universal but you can also be leaving a lot of money on the
table if you do not include other payment services. I would focus on providing
at least one alternative payment method for each country to start.
Track your payment gateway abandonment rates. To track abandonment, you
will want to monitor when a customer brings a cart of items to checkout and
then fails to make a successful purchase. If you track this by country this can be
a great tool for knowing where to focus your efforts. An example of this is
when I put PayPal into one of our stores and PayPal was the only option. The
store did sales primarily to North America and Europe. We had a payment
gateway loss for North America of 20 percent, but for Europe it was much
closer to 40 percent. This would be an indication that we should look at a more
preferred payment method for our European customers. You will never reach
a 0 percent abandonment rate. But the closer you are, the better you are doing.
Some of the more popular international games are supporting as many as 200
payment methods. If the demand is there, you may as well take advantage of it. For
getting started I suggest going with companies that can offer multiple payment
types. PayPal and Moneybookers both offer a wide range of options. As you get
more sophisticated with your payment acceptance, you can move to work directly
with more region-specific methods. You will save on your processing charges but
you will also increase complexity.
I NSIDE
THE
P AYMENT P ROCESS : P AY P AL
Let’s talk a little bit about how PayPal works. It works by funding orders through
PayPal funds (funds in the actual PayPal account), which are typically given from
a bank account, credit card, or having received money from someone else through
a transfer. Another method is e-check. This is when money is funded by an attached
bank account only. E-checks can bounce. Do not trust them until they have cleared.
Once they have cleared, you can still run the chance of a bank reversal, but this
doesn’t often happen.
Then there are credit cards funded by PayPal accounts. Whether or not they
have funds in their account, the credit card allows them to do instant payments.
You want the instant payments because the customer wants instant satisfaction.
With payments coming from PayPal funds and credit cards (not e-checks),
you’ll find that about 80 percent of the orders are good after 24 hours. In the first
24 hours, there is an 80 percent chance that the payment you received is good.
Chapter 27 Money: Real Transactions, Real Risks
281
If you get to 7 or 8 days or more, there is about a 90 percent chance that the payment is good. When you hit 11 days, you’re at a 98 percent chance of that payment
being good. At 30 days it’s approximately 99.8 percent. These figures are based on
statistics with our payment acceptance and how long before the payment gets held.
PayPal will hold payments for several reasons. One is that they watch for funds
being shifted around from account to account to account, all by the same person.
They will monitor these actions. Within a few minutes of the payment coming in,
they will place a temporary hold for investigation. If you are not planning on talking to your customer, you may want to give them a 30-minute delivery expectation.
Wait about 25 minutes and then send the product. This investigation will trip
internal checks at PayPal within a few minutes of the payment being sent. By delaying the delivery of the first order by 25 minutes, you can reduce your fraud by 0.5
percent or so. This may not sound important, but we did $6,000,000 in sales in one
of our stores last year and that short delay saved us $30,000 in potential profit
(profit margins are often lean for resellers).
I have talked with PayPal many times about why they flag a payment and hold
it a minute or two after it’s done. If they are that fast, why can’t they prevent the
payment being sent to us in the first place?
PayPal can be frustrating to work with. You just have to know how to work
with them. They will hold funds for many reasons, even if it’s just general suspicion.
I’ve seen this many times. There’s nothing you can do about it other than build it
into your costs that they will do this from time to time. I usually refund the order
if I haven’t delivered the product. If I have delivered product, I may place a few
notes in the order so they know the details I have of the order. This may provide
them with the information they need to release the order if it is legit.
I always wonder what happens to the funds that PayPal holds. Do they give
those funds back to the customer? Do they keep them? I certainly don’t get it. I’ve
talked with people some time later and they said their money wasn’t refunded.
PayPal states that the funds will always go to the buyer or seller after any hold. They
also state that they are audited and are required to account for all funds. It makes
me wonder if the buyer is being honest with us in these situations or if they have
misunderstandings about how the system works. I’m betting that, most of the time,
the customer funded their payment with a credit card and they do not have access
to online statement. Thirty days later they will receive their statement and see that
a credit was in fact given back to them.
Also with PayPal, they will hold in situations when the customer has no funds
in their account to send in the first place. When an order is funded by a credit card,
the credit card company does a hold on the payment to PayPal. It’s frustrating how
this works. PayPal will first send you an email saying they are disputing this on your
behalf; please provide information. When they dispute it, they also charge $10.
282
Protecting Games: A Security Handbook for Game Developers and Publishers
This $10 fee is in many cases non-negotiable. Although, I do such a high volume I
have negotiated that they not charge us this fee because we have told them we will
never dispute a credit card chargeback. So, we do not require this service from
them for disputing charges on our behalf.
The credit card chargebacks typically do not appear for at least seven days. This
process differs in that it requires forms to be filled out and most of them are not
electronic. The last one I dealt with was from a furniture company. They called me
two weeks after the order and told me that two months prior to my purchase they
had gone into bankruptcy. Why wasn’t I told this when I made the purchase? They
said I was not getting the funds back. I had to do a chargeback if I wanted my funds
returned. I had to sign documents saying that I attest this was true, had to fill out
other forms, and copy receipts. It was a lot of work; it took me several days to organize and gather the paperwork and then fax it all in.
These holds are not disputable. You cannot fight a credit card chargeback
through PayPal. I have never won that battle unless the customer was making a
chargeback on something else and they did this one by mistake. I have had them
reverse a couple of times in that instance, but it is not worth your time even if it is
a thousand dollar chargeback. The odds of you getting one back are very low. You
will spend more than a thousand dollars worth of time to get that one chargeback
released. Don’t even worry about it.
If you have a lot of profit on certain items, then you may want to study where
your highest profits are. It can sometimes be more profitable to allow a low amount
of fraud, though, as it will make it easier for your honest customers to make purchases.
With this information you can get as hard-core with anti-fraud as you want; or
just use a few of these items to enhance your current anti-fraud policies.
A NTI -F RAUD
Why are anti-fraud measures so important? My experience is that about five percent
of first-time customers are using a stolen PayPal account, credit card, or another
online payment method (whereby they’re not the legitimate owner of the account).
Typically, they have acquired it from phishing.
Thus, if you blindly accept payment from just any PayPal or credit card account,
you’ll end up with at least five percent fraud. If you sell virtual items that can be
(licitly or illicitly) resold, they will make multiple purchases. When they make one
successful purchase, they will be back again to make more purchases and, if left
unchecked, you’ll go up to about an 18 percent loss rate from their numerous purchases before they get shut down.
Chapter 27 Money: Real Transactions, Real Risks
283
With products that are not re-sellable, such as registration keys or add-ons, you
can still occasionally get fraud. Because I have those registrations “call home” (they
send a request to our servers to verify they are active in good standing), as soon as
the payment is reversed or there is an issue, I block their registration. The next time
they try to log in to that application, it will become unregistered again.
After that, I use one of two methods. First, I allow them to purchase again at
regular price and hope that it doesn’t get reversed. This is an acceptable method.
The other method, which I prefer, is to charge a penalty price to re-register the
product. If they reverse the payment but come back again and want to re-register
the product, I increase the price substantially, typically up to three to five times the
original purchase price.
The way I identify those who attempt multiple purchases is by having the registrations tied to the actual account names for the games or by another way of identifying which computer or person is making the purchase. I find this to be a good
deterrent. If they know that they can only connect to a specific account with the
purchase, they typically don’t reverse charges, lowering fraud a bit. I have found
this approach has about a 2.5 percent fraud rate. For most products, this would be
acceptable.
For those who come whining to us that they got their registration key banned,
we’ll sell them the banned version for a greater price.
Because five percent of first-time customers are attempting a fraudulent
payment, the key is to catch them immediately. If you don’t, they start running
rampant.
I figured this out the hard way. Several years ago I was running an online store.
I sold game codes and other items such as currency in some games (it was legal, not
the grey-market terms-of-service violation items). This store would do automatic
delivery of the codes or currency. I had a system in place that checked if their IP
address, PayPal account, or email address had been fraudulent in the past. If it
passed those checks, the system would allow the purchase to go through.
However, this limited the amount of purchases a person could make. I restricted purchases to five in a 24-hour period. If any fraud appeared, I would lose
five purchases. These losses would be pretty limited, or so I thought.
In this store there was $18,000.00 worth of stock. One morning I woke up,
checked the computer, and saw that I sold out of everything! At first I was really
happy. Then I was really scared.
I realized that someplace really popular had linked to our site or something had
happened and someone had found a way to exploit our systems. In fact, the latter
was the case. Someone figured out that only so many purchases per day were allowed. They bought a domain with a stolen credit card and immediately purchased
284
Protecting Games: A Security Handbook for Game Developers and Publishers
email hosting. They then set up email addresses on this hosting account. They
would make five purchases with the credit card on a PayPal account then our
system would cut them off. Then they create a new email address and make five
more purchases. They did this until the store was empty. They managed to do this
within a couple of hours.
That’s when I decided that I had to do something. I wanted to have an automated solution. The best kinds of sales are the ones that are replicated—those that
require no more effort. The reality is that this just doesn’t work for items that have
resale value.
A human element is required. That human element can come in several different forms. When humans do anti-fraud they can review orders and check on suspicious purchases. They assess orders looking for patterns. You can look at their IP
addresses and for large amounts of fraud from certain ISPs. You may have a human
review a transaction if it’s a high dollar order or just review all of the transactions
right off the bat. Thieves are always looking for a new loophole to get through. So
there needs to be someone always watching the transactions.
You may want to consider automation for performing searches of email addresses or for searching the names of the people to identify those who are going to
steal from you.
This may sound really crazy, but it’s my belief that some criminals want to be
caught. A prime example is this story: I had an email address that read imatheif
@******.com. He placed an order and our staff did not notice the email address.
When they approved the order, the order went out just fine and a couple days later
I get a hold on the funds for that. Looking it over, I realized this person was telling
us they were going to steal from us—they told us so in their email address.
We have since started tracking this kind of information. There are many different payments that should be held. If they have the words such as thief, steal, cheat,
or hack—these are some examples where you can have your system automatically
hold those orders for review. In fact, you may just want to turn them down. I have
found that their email addresses actually told us what they were going to do. (Like
imathief. What does a thief do? He steals.) Half of these customers did actually
reverse charges. I tested that by allowing several such orders through and waiting to
see if charges were reversed.
Customers can give you their intentions. That’s one of the ways that can be automated. Other ways cannot be automated, like your interactions with customers.
Sometimes they tell you things. Like I said, thieves want to be caught. They will give
you hints. It’s a game and a thrill to them.
Chapter 27 Money: Real Transactions, Real Risks
285
In fact, when you identify a thief, you can even call to speak with some of them
and they will actually tell you what they’ve been doing. They will explain what has
been successful and what hasn’t. That may sound crazy but that’s been my experience. Some thieves like to brag about their exploits, about the people they’ve tricked
or stolen from. You can learn a lot from that.
We’ve seen payments that were going to the XXX game company (I’ll just call
them XXX so as not to embarrass them). Although we were not involved in their
payment processing on this, I realized that in one of the markets (where I was selling game codes), a lot of game codes were appearing on the market for sale at a
discounted price. I knew the game codes were being sold for below cost. I was sure
of that because I was probably one of their highest volume resellers of these codes
and the prices they were selling them for was just incredible.
I decided to figure out what was going on. I contacted some of these sellers who
were selling the cheap codes. I bought some of them and, low and behold, they did
work. I was halfway expecting that they wouldn’t work; that the codes would have
been used or they would just be fake. They, in fact, did work.
When I spoke with them and listened to them brag, they told me they were
Russian carders. A Russian carder is someone who phishes credit cards or gathers
them by some other means. They use those credit cards to make purchases of other
items such as game codes. They then resell those game codes. They have, in effect,
laundered these stolen funds. They were selling the game codes for 50 cents on the
dollar and were making a lot of money.
This turned out to be huge for XXX. I am not sure of the total losses, but it took
me forever to get XXX’s attention on this. I was adamant about getting XXX to do
something about this because it was affecting our sales of their codes (because the
market was flooded with these cheap codes).
When they finally did something about it, they got the FBI involved. Since the
thieves were in Russia, there was really not much that could be done. They got away
with it. Nothing ever happened to them.
These are the exact kind of organized criminals you need to weed out immediately. If not because of the costs of fraud, then because U.S. Homeland Security will
review transactions to make sure terrorists are not laundering money through your
company. All of the IP addresses of the carders at that point were coming from
Russia so we had flags on all Russian orders. They all had to be reviewed because of
the country’s high fraud rate.
I’m going to tell you a story about a guy who placed an order with us. Keep in
mind that I know where our orders originate.
286
Protecting Games: A Security Handbook for Game Developers and Publishers
The deal on this is that even though we know what city and state they’re from,
we ask them anyway when we confirm purchases by phone. We can see this particular customer is from Nashville, TN. He had a non-regional accent that isn’t necessarily a red flag but can be sometimes. I asked him what city and state he was
from. His answer: “Nash-villey, Tennasis.” Right then we knew that there was a
huge problem and we say, “Thank you, we’re sorry but we’re not going to be able
to process your order.” You’ll receive a refund from us shortly and an email.”
Somebody who cannot pronounce his or her own city and state is typically not
from that area.
Other examples: People from the East coast say “Orygon,” people from the
West coast say “Oregun.” Then there is “Illinoy” (correct), and other people say
“Illinoise.” There are different ways to gauge whether or not someone is from a
region by asking them where they’re from. That’s pretty easy if you know how
words are pronounced in a local area. Don’t let them use the excuse that they just
moved to the area.
I NTEGRATION
FOR
A UTOMATION
The hardest thing about all of these payment methods is the integration into your
systems. All of these systems offer integration but this can be very complex. I recently worked on integrating Moneybookers into one of our stores. I would have
thought it would take just a couple of weeks to get set up, but it took several
months. Each service has different requirements for integration. This is an area
where you will want to have a highly skilled technical person doing this work. If you
take the easy route and just get it working you will be open to exploits. I recently
found this out the hard way—we took substantial losses from a hacker who was
able to fake our system into thinking that every item for sale was just one cent. We
found that we had left one check in our system unused and they exploited this fact.
Taking the time and resources to do this right the first time is worth it. Our losses
had we not caught it right away would have been higher than the costs of integration. We were lucky, but luck should not have anything to do with it. We should
have done it properly the first time.
Chapter 27 Money: Real Transactions, Real Risks
287
P AYMENT F RAUD
by S. Davis
Credit card fraud1 is a massive problem. The FBI estimated that credit cards were
responsible for the majority of the $315 billion in U.S. financial fraud losses in 2005
while French credit card losses were $319 million2. In the UK, “card-not-present”
fraud was £212.6 million (almost $350 million) in 2006. Although consumers may
see these losses hidden as part of their interest rates and fees, the credit card
companies and payment processors have successfully passed most of the risks to
merchants. The burden is on you to protect your revenues and the health of your
business.
R EFERENCES
1. Wikipedia (2008), “Credit Card Fraud,” http://en.wikipedia.org/wiki/Credit_card_fraud
2. J. Conlin (2007), “Credit Card Fraud Keeps Growing on the Net,”
http://www.iht.com/articles/2007/05/11/news/mcredit.php
28
More Money: Security,
Technical, and Legal Issues
here is always more to say about money. The PCI-DSS (Payment Card
Industry Data Security Standard) initiative by the credit card industry has
been put in place to reduce fraud at merchants. Unfortunately, PCI-DSS
compliance is not the same as “security,” as the Hannaford Brothers grocery chain
found when 4.2 million customer credit cards were compromised even though the
company’s operations had been certified PCI-DSS compliant1. PCI-DSS compliance is an important issue, however, because most online services are likely to need
certification in order to be allowed to accept payments.
T
Fraud is one of those things you really have to keep an eye on. As we were celebrating revenues in Q1, it was being tainted by fraud. We didn’t know what
acceptable levels were. And the detection is delayed. Revenue is scalable, but so
is fraud. Revenue clouds your ability to identify and fight fraud. You see
money coming in and you don’t want to tighten your grip. And fraud leads to
fines, incrementally and if you hit a certain level they can hit you with a big
one. Increased fraud leads to expulsion from credit card processing. Some companies have been dealt six-digit fines. If you have over a 1 percent chargeback
rate, you get hit with a fine.
… You lose the revenue of the purchase and an additional [chargeback] fine.
Merchants can fight the chargebacks, but it’s difficult and costs a lot of
manpower. We learned you have to stop fraud before it happens and identify
future chargebacks. You need a firm user policy and education. …We had
users selling their time for existing fraudsters to level up characters. And that
came back to hit us.
… We set spending limits and educated the user base. We created a fraud [team]
and joined the Platinum Members List in the Merchants Business Council.
Chargebacks have been drastically decreased and controlled.
—Min Kim, Director of Operations, Nexon America
288
Chapter 28 More Money: Security, Technical, and Legal Issues
289
Increasingly, online services are portals to a wide range of entertainment
services. Player accounts allow players to purchase everything from virtual items to
real goods. This makes these accounts targets for fraud by both insiders and hackers. Finally, even though virtual currencies have become a key part of the growth of
the online game industry, there are some real risks. In addition to gold farming, the
ability to convert some of these synthetic currencies back into official currencies
raises the potential for their use for money laundering.
PCI-DSS
AND
S ECURITY
The rise of ecommerce and explosion of corporate IT and networking has created
a huge problem for the payments industry. Poor internal security systems and procedures created huge opportunities for fraud. TJX Companies, owners of a number
of major retailers including T.J. Maxx and Marshalls, compromised 45 million
credit card numbers during a multi-year security breach2. This compromise cost
the company well over $100 million in losses. The credit card industry established
the PCI-DSS standard and certification3 to help protect credit card data, because
these large-scale compromises were costly for the payments industry as well.
As seen with the Hannaford Brothers case, PCI-DSS compliance is not the
same as being secure. It is a minimum standard and may affect your transaction
fees and terms as a merchant. Game companies and other online service providers
should thoroughly investigate their options for practices that can directly reduce
transaction costs as a matter of good business (such as joining Platinum Members
List in the Merchants Business Council).
Good system design should make it possible to move beyond PCI-DSS and reduce your practical risks. Online service providers should also investigate insurance
and even consider not taking payments directly by working with third parties to
further reduce potential threats.
A CCOUNT S ECURITY , V IRTUAL I TEMS ,
AND
R EAL M ONEY
Online game accounts are becoming much more than a way to pay a monthly subscription. Players can purchase downloadable content (DLC) for existing games,
purchase additional games, buy virtual items, and will soon, no doubt, be able to
purchase physical items. Microsoft’s Xbox Live is a pioneer in turning a game service into an all-encompassing entertainment portal, but Apple’s iTunes and App
Store as well as Valve Software’s Steam and Amazon’s growing suite of Amazon
290
Protecting Games: A Security Handbook for Game Developers and Publishers
Web Services, among others, are joining in. In China, Tencent’s Q-coins have
grown in popularity to the point where the Chinese government considered them
a threat to the nation’s currency4.
These accounts are rapidly becoming much more than a subscription payment
method. As these capabilities of online game services grow, they will become more
“interesting” targets for thieves. There are even greater risks if the virtual currencies
that many of these services use can be converted back into “real” money. Convertible
currencies raise the risk that game-like incentives and rewards can be construed as
gambling. Also, the ability to “cash out” makes the currency a tempting target for
internal fraud and outside hackers. Until a weakness in the QuickTime player was
patched, Linden Lab’s Second Life was vulnerable to a hack that allowed thieves to
transfer virtual currency from one player’s account to another player’s account
without their consent5.
At NetEase, a company employee identified 30 accounts and sent in faxes of
counterfeit identity cards claiming that he had “lost his password” that transferred
the accounts to his control. He then proceeded to loot the accounts6. The amount
involved was not large by U.S. standards, around 4000 Yuan (around $500), but
this is equivalent to several months’ wages in China.
These types of services are vulnerable at three key points: the game or other systems that can reward players, payment systems that move between real and virtual
currencies, and customer service systems.
Customer service applications are a critical security target, because they are the
means for handling any sort of problem that customers have. Potentially, they are
an easy way to compromise user information, steal accounts, add unauthorized
credits or bonuses, or carry out actual transactions for real money.
M ONEY L AUNDERING
AND
I LLEGAL P AYMENTS
Rampant payment fraud is a nightmare for any online business and an increasingly
important issue for online games. One alternate payment processor, Flooz, had
created a virtual currency for micro-transactions (similar to that used in many
games). Unfortunately, Russian organized crime groups used Flooz and stolen
credit cards to launder funds7. This resulted in an FBI investigation.
[T]he rate of fraudulent purchases spiked from less than one-twentieth of one
percent to 19 percent of consumer credit card transactions in June and July
2001. Chase Merchant Services, which processed credit card transactions for
the company, then imposed tens of thousands of dollars per month in fines
Chapter 28 More Money: Security, Technical, and Legal Issues
291
for the excessive fraud rate. Chase also attempted to hold $2 million in company
credit card deposits to cover the fraudulent transactions. Credit card fraud was
already a major concern for online shoppers, and digital currencies were
attractive to fraudsters due to its instant delivery and potential anonymity.
Eventually, Flooz was shut down.
Convertible currencies can pose a risk, if there is enough value that can be
transferred. There has been speculation about criminals or terrorists using online
games as a way to launder money, but typically the amount of value that can be
moved easily in these games is too small to be of interest. This is yet another reason
that companies should be careful with their transaction systems.
Online poker, skill games, sports wagering, and pari-mutuel wagering do have
the potential to be used for money laundering, however, because of the larger
amounts of money involved. Criminals are using online wagering services for
money laundering with wagers of 100,000 Euros on third-string Romanian soccer
matches or even a Czech women’s league game. There are apparently around
15,000 online wagering sites with only 2,000 being legitimate and together they
handle around $23.6 billion in wagers a year8. Internet sports wagering also is
threatening the integrity of many traditional sports. Several suspicious matches at
Wimbledon and elsewhere have led to investigations9.
Perhaps unsurprisingly, the ban on Internet gambling in the US has led to
criminal innovations. A payment processor in Utah miscoded credit card transactions to allow them to be used for online gambling; see10 and11. In Korea, illegal
online gambling has grown with the rise “cyber-money dealers” who handle the
conversion between virtual currencies and hard cash12. These types of “covert
payment channels” can be used for other criminal applications.
Gift cards, because they are not considered “real currency,” have been used by
criminals for payments for drug deals and money laundering13. Gift cards are compact, flexible, and do not have to be reported when crossing borders.
Crooks don’t need great graphics or immersive worlds to create real problems
for individuals, governments, and the online game industry.
M ONEY L AUNDERING : L EGAL I SSUES
Law enforcement throughout the world is well aware that money laundering is not
limited to money transfers between typical banks or other financial institutions.
They know that games, especially online games, have increasingly become the vehicle of choice of many looking for unique ways to transfer money “under the radar.”
292
Protecting Games: A Security Handbook for Game Developers and Publishers
Those that take advantage of a game for the purpose of laundering money are often
crafty, and a game operator could unsuspectingly find itself in the crosshairs of an
investigation or, worse yet, a prosecution. The unsupervised electronic funds transfers inherent in online gambling, for example, are exploited by criminal interests to
launder large amounts of money14. It is an issue that cannot be ignored.
First, know what money laundering is; then, know how to address potential
issues when you discover them. Money laundering is a process by which a person
takes money, potentially illegally gained cash, and then transfers the money, perhaps distributing it among others or back to himself, with the goal of keeping any
governmental body from finding out the source of the funds. In this manner,
“dirty” (questionable) money goes through a “laundering” process to become
“clean” (deceptively lawful) because the new source of the money is not in doubt
and the path of where it came from is intentionally untraceable. Any process that
moves cash without asking a lot of questions about the money (and does not have
governmental reporting obligations) will be a candidate for a money launderer.
If a person uses a bank or financial institution to transfer money, the bank or
financial institution will have a record of the transaction, and is likely required
to report the transfer to the government. In the United States, for example, cash
transactions and deposits of more than a certain dollar amount are required to be
reported as “significant cash transactions” to the Financial Crimes Enforcement
Network (FinCEN), along with any other suspicious financial activity that is identified in “suspicious activity reports.” Other jurisdictions have similar requirements
that obligate financial services employees and firms to report suspicious activity to
the authorities.
When suspicious activity is discovered by authorities through FinCEN, or some
other means, most countries have broadly written laws at hand to prosecute those
who launder money, as well as those who aid and abet the launderers. In the US,
law enforcement principally relies on a law called the “Illegal Money Transmitting
Business Act of 1992,”15 which makes it a crime to “conduct, control, manage, supervise, direct, or own all or part of a business, knowing the business is an illegal
money transmitting business”16. This law covers the transfer of money by “all
means,” which includes the Internet and any other online service such as a game,
social network, or virtual world17. The scope of this law gives prosecutors the tool
they need to go after each person in even the most creative money laundering
scheme. Each state in the US also has the capability to investigate and prosecute
crimes within their boundaries.
If consideration (such as money) is an element of the game, the game operator
will have to be well aware of potential issues relating to money laundering. Money
laundering can also occur in some other manner, such as sales made with virtual and
actual currency. Issues will occur that the game operator truly has no knowledge of,
and that may be a defense. But prosecutors will often have suspicions about what
Chapter 28 More Money: Security, Technical, and Legal Issues
293
the game operator knew and when the game operator knew it based on their investigation. If you have the slightest suspicion that something illegal is occurring,
contact law enforcement. You may consider contacting legal counsel first, but do
not delay. Assume you will encounter some sort of incident and have practices in
place to quickly respond to work with law enforcement. You do not want your
business shut down like Flooz.
R EFERENCES
1. R. Mogull (2008), “Picking Apart the Hannaford Breach: What Might Have Happened,”
http://securosis.com/2008/03/18/picking-apart-the-hannaford-breach-what-might-have-happened/
2. J. Vijayan (2007), ”TJX Offers Settlement in Wake of Massive Data Breach,”
http://www.networkworld.com/news/2007/092407-tjx-offers-settlement-in-wake.html
3. PCI Security Standards Council (2008), “About the PCI Data Security Standard (PCI DSS),”
https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml
4. Wang X. and Wang S. (2006), “Virtual Money Poses a Real Threat,”
http://news.xinhuanet.com/english/2006-12/26/content_5531905.htm
5. D. Terdiman (2007), “Report: Hackers Say They Can Steal ‘Second Life’ Currency,”
http://news.cnet.com/8301-13772_3-9827500-52.html?tag=tb
6. China View (2006), “More Attention Paid to Virtual Property Protection,”
http://news3.xinhuanet.com/english/2006-04/03/content_4377645.htm
7. D. Cotriss (2008), “Where Are They Now: Flooz,”
http://www.thestandard.com/news/2008/07/21/where-are-they-now-flooz?page=0%2C0
8. F. Chaptal (2008), “Sports Credibility Caught in Tangled Web of Gambling,”
http://www.thestandard.com.hk/news_detail.asp?we_cat=9&art_id=66491&sid=19097230&con_type
=1&d_str=20080529&fc=2
9. J. Calvert, B. Flatman, N. Fleming (2008), “Wimbledon Fears Match-Fixing Scandal in Massive Betting
Scam,” http://www.timesonline.co.uk/tol/sport/tennis/article4187780.ece
10. KUTV (2007), “Mob 3.0: Covert Channels in Online Gambling in the US and the Expansion of
Organized Crime,” http://www.playnoevil.com/serendipity/index.php?/archives/1261-Mob-3.0-CovertChannels-in-Online-Gambling-in-the-US-and-the-Expansion-of-Organized-Crime.html (original article
at KUTV no longer available)
11. B. Hansen (2007), “BetonSports—Again?—and BetUs Indicted in Latest DOJ Bust,”
http://www.theregister.co.uk/2007/05/12/betonsports_doj_betus_indicted/
12. M. Ha (2008), “Online Gambling Sites Mushrooming,”
http://www.koreatimes.co.kr/www/news/nation/2008/06/117_25599.html
13. D. Birch (2007), “Moral Panic or Genuine Worry?,”
http://digitaldebateblogs.typepad.com/digital_money/2007/01/moral_panic_or_.html
14. S. Coates (2006), “Online Casinos ‘Used to Launder Cash’,”
http://www.timesonline.co.uk/tol/news/politics/article620834.ece
15. “Illegal Money Transmitting Business Act,” Pub. L. No. 102-760, § 1512(a) (1992), codified at 18
U.S.C. § 1960
16. 18 U.S.C. § 1960(a); also refer to 31 U.S.C. § 5330
17. 18 U.S.C. § 1960(b)(2)
29
Identity, Anonymity, and
Privacy
dentity is a severe problem for almost all online services, including games.
Games can operate as anonymous services, but usually identity becomes important at some point. The U.S. online game industry seems to be moving towards
an environment where identity will tend to be very weak. Although credit and debit
cards provide reasonable identity information, prepaid cards (see Chapters 27 and
28) are rapidly becoming the preferred payment method and they are naturally
anonymous (to the game company).
I
Other countries have a very different view of online identity. Both China1 and
Korea2 are moving towards requiring registration for many online services via some
form of national identity number. It is likely that this approach will be adopted in
many countries. Korea has gone so far as to create a separate online identity number for its citizens3.
The first problem that any identity system faces is how to register users. The
“registration problem” does not get nearly the attention it deserves. The biggest
challenge is assigning an actual person to some sort of number or token or collecting a biometric signature. Once registration is completed, the operation of an
identity service is fairly straightforward. (As almost everyone knows, it is much more
difficult to get a driver’s license than to use one to verify your identity and age.)
Age verification is a particularly thorny aspect of the identity problem. In the
US, the only place where there is a legally acceptable definition for online age verification is to identify younger children under COPPA4. Another area where there
has been increased interest in age and identify verification is the development of
usage controls to address public policy concerns about game addiction. Whether
game addiction is an actual problem or not, game companies need to address public perceptions of the issue.
Compromise of user information and identity theft is a problem that has been
gaining increasing public awareness over the past several years. In the US,
California’s Data Disclosure law has been critical in raising awareness as to how
294
Chapter 29 Identity, Anonymity, and Privacy
295
often and how much personal information is compromised5. Korea has gone one
step further with substantial civil penalties being assessed when user data is lost—
as much as $100 per person6. There are legal requirements that any online service
needs to meet in order to collect and retain user information. However, the US has
some of the weakest privacy protections in the world. Most other countries require
notably stronger protection for individuals’ information. Online businesses that are
considering international markets need to be particularly sensitive to these issues,
because acceptable practices in the US are not permitted elsewhere.
Identity has an important internal role to play in online services. Identity management systems need to collect and retain sensitive user information. They also
need to handle login, account recovery, compromise management, and other issues.
Identity is particularly important for game companies that are concerned about
player accountability.
T HE S TATE
OF
I DENTITY
AND
A NONYMITY
Identity is probably one of the most important problems of the 21st century.
Although businesses and governments have always collected data on individuals,
until the explosion of computing power and networking, this sensitive data sat relatively safely in file cabinets spread all over the world. Today, this multitude of
identity records can be accessed and linked together to provide more information
about ourselves than any of us would really care to share. Online services make it
trivial to track user actions in great detail. At the same time, it is almost trivial to
steal an identity. Stolen identity information, including name, social security number, and address, can be purchased for as little as $2 per identity, whereas a credit
card name and number can be had for 40 cents7. These are for American identities;
European identities go for more.
There has been no real growth in identity security and the need for digital identity or any serious debate of the issues as a matter of public or business policy.
Sadly, there has been depressingly little discussion of the implications of the pervasive access to all of our identity information and the overall lack of security of
online identity. For a business, in addition to the growing requirements for data
that must be retained to meet legal and regulatory requirements, there are also legal
risks from data disclosure. There are other challenges—hate speech and harassment,
obscenity, liability and government access, parental controls, and community
standards and jurisdictional issues—all of which have an identity component.
One strategy may be to move an online service to an offshore jurisdiction,
which has a more amenable legal environment to your specific business. This may
296
Protecting Games: A Security Handbook for Game Developers and Publishers
appear to increase operational costs, but could be a powerful tool to reduce the
threat of litigation (Note: This will certainly not solve all problems as the online
gambling industry has found with the UIGEA. One firm, Party Poker, lost 90 percent
of its poker revenues due to this law which applies to companies outside of the US 8.)
Anonymity is an interesting issue for online services. On one hand, anything
that reduces barriers to entry increases participation by potential customers. On
the other hand, anonymity seems to encourage bad behavior. Many people see
anonymity as the right to act with impunity. For games, strong identity helps fight
cheaters and griefers by making them accountable for their actions and it helps with
piracy by making it difficult to use pirated games online.
One real challenge for most identity systems is that they are not designed with
malicious individuals in mind. Almost all the systems are built on the implicit assumption that the individuals using the system actually want their identity to work
properly and be secure. When this assumption is incorrect, as it is when criminals
and even minor miscreants in games are involved, the security of the systems often
comes crashing down. Digital signatures and public key infrastructures just don’t
work if a private key has been compromised or the user is willing to lie during
registration or share or steal a key. The best available approaches build on positive
identity relationships such as existing relationships with customers, security tokens, some payment systems, or active incentives that reward accurate identity.
Game developers and operators need to assume that their identity system is
constantly under attack and that some of their users are always trying to defraud
their online service. Until recently, Xbox Live players who had been banned could
use promotional cards that provided minutes and pre-paid cards to set up new accounts and get back into the system9. Games should explore building highly specific
identity systems that take advantage of their unique service offerings. Fan clubs,
loyalty programs, incentive programs, and anything else that rewards honest identity is very valuable. The larger and richer the identity system and online service,
the more effective it is. This is one of the real advantages of services like Valve
Software’s Steam. The more they add to the service, the more costly it is for a player
to “defect” and cheat, pirate, or otherwise damage the game ecosystem.
T HE R EGISTRATION P ROBLEM
AND
I DENTITY M ANAGEMENT S YSTEMS
Identity is a profoundly important problem. The biggest problem for identity
systems is identity itself: knowing that who you are talking to is who you think it is.
If you look at many discussions about identity, they completely ignore this most
essential issue. There are three main components of an identity system:
Chapter 29 Identity, Anonymity, and Privacy
297
Registration and Association: Linking the Person to an “Identity”—This
consists of both initial registration process and the real-time login or access
control system for some sort of identity-based session.
Transport: Communicating an Identity (over a Network)—This is usually
implemented via cryptography, but the transport service often needs to address
identifying the people and the application and platform that they are using to
contact each other.
Policy: Linking Identity to a Specific Business Problem—Identity is not an
end, it is a means to solving some problem. An identity system policy captures
information about the individuals and what they are allowed to do based on who
they are, their role, or other criteria. An unfortunate habit in the IT security industry is to define policies for systems that may, or may not, reflect the actual
business needs of their clients: organizations own policies, not technologists.
There are several critical supporting issues that need to be addressed as part of
a complete identity system:
Compromise Recovery—What do you do when things go wrong? This issue is
critical, yet is rarely addressed. What happens if the identity service’s data is
compromised (look at the seemingly endless data disclosures in the news if
you think this issue isn’t important)? What if the user compromises her identity information? How does the system recover? For game systems, it is also important to address the scenario where a user intentionally compromises her
own identity data. I would argue this is the key failing of biometric systems—
they have no meaningful recovery mechanism when biometric data is lost either
through compromise of the biometric database or subversion of a biometric
reader.
Initial Registration—How do you enroll a person or system in your identity
service? This has been the killer for public key infrastructures (the big security
fad of the 1990s) before biometrics (the current security fad that is winding
down). Initial registration is often costly. In some sense, the Postal Service and
its private competitors are in the best position to handle this function, because
they periodically get physical signatures from individuals face-to-face.
Acceptability—What is legally good enough? Although there are many cases
where there is no need for identity to meet a legal standard, it is an important
and sometimes critical feature of many identity systems. It can also be a trap.
There are a number of age verification services that provide some age and identity information, but none of them, to date, can accept or transfer liability from
the actual service provider (except for COPPA). This is also important when
considering the growing identity theft problem.
298
Protecting Games: A Security Handbook for Game Developers and Publishers
What are the de facto identity systems today?
Usernames and passwords are used both for association and registration.*
Email addresses are used for registration.*
Credit card numbers with other identity information such as names and addresses are used for registration and for association when making a payment.
Essentially, identity systems can tap existing payment processing and authorization services for a fairly strong sense of identity.*
National identity numbers are used in Korea and China for identification. The
problem with these systems is that it is possible to generate an “authentic”
identity number, because the algorithms that each country uses are known10. In
some cases, these numbers encode personal information such as gender, age,
and location of birth, making the identity numbers tools for identity theft
themselves. In the US, the use, until recently, of social security numbers by a
wide range of entities for identification caused similar problems. Because these
numbers are used to access a number of online services, compromises of the
databases for these sites have resulted in millions of identification numbers
being disclosed. Privacy advocates in Korea have raised concerns with requiring the use of any sort of national ID. They are concerned about the rise in
cybercrime from easier identity theft and about the loss of privacy11.*
The use of online identity numbers. Korea has recently created a separate
number, called an i-PIN, for online identity12. It is not correlated with the
country’s national identity number. This system doesn’t seem to address a couple of important issues: Because the number can be changed, it would make a
lot of sense to support a global “compromise” notification system so that sites
and services that use the ID number could cancel it and replace it with the new
number. Also, although it is important to tie an identity to a specific individual, there are probably a number of benefits to allowing a person to have multiple ID numbers for improved privacy and speedier compromise recovery.*
All of these systems (the ones marked with an asterisk) are vulnerable to compromise. They are dangerous to enter in a public computer and can also be stolen via
keyboard loggers and phishing scams. Except for passwords, these identity systems
do not recover easily from compromises. Even issuing a new number does not
necessarily or promptly invalidate a compromised identity number.
Chapter 29 Identity, Anonymity, and Privacy
299
Faxed Identity Card or Drivers License—This approach is sometimes used by
services for adults and seems to be fairly widely accepted. People are not particularly likely to lose control of their identity cards and there are existing legal
sanctions for misusing, altering, or forging official documents. The “fake ID”
problem that plagues control of underage alcohol purchases does show the
limits of this approach. Also, this system is relatively costly and slow and, technically, as vulnerable to database compromises as identity numbers.
Registered Mail/Signature Required Delivery—Postal offices and other delivery services typically provide some mechanism for requiring a signature to accept an item. This form of identification and authentication is fairly effective,
if slow and somewhat costly. It can wind up having little marginal cost if there
is an actual physical delivery to a customer. It also has an advantage of fairly
solid legal status.
Security Tokens—There are a number of time-based and challenge/response
security tokens used for identification and authentication. They do not address
the initial registration problem, but are useful for day-to-day authentication.
Blizzard managed to bring the price of an authentication token down to $6.50,
which should make it fairly widely acceptable13. Interestingly, Blizzard is the
real beneficiary of the token, but it has managed to pass the cost of the device
on to its customers.
Mobile Phone Messaging—Asian games are increasingly using mobile phonebased authentication. Because mobile phone numbers are personal items, they
may have available identity information for registration purposes. Players are
presented with a challenge code that they then must send to a specified number (usually via SMS text messaging) to log in to the service.
Biometrics—Some organizations have considered biometric authentication
for remote access. The problem is that the biometric signature is vulnerable to
compromise as regular computers cannot be considered trustworthy devices.
Keyboard loggers or other malware could easily capture the biometric information for use by a malicious user.
Public Key Credentials—This is another system that looks better on paper
than in the field. Unless there is a physically secure device that holds the private
key, it is no better than a username and password.
Challenge/Response Card—NHN in Korea came up with a fairly clever idea of
using a paper card with a set of challenge/response number pairs (that is,
Challenge: 435, Response: 813) listed on the card. The challenge value is provided by the server and a response given by the player14. This system has most
of the benefits of a security token at a fraction of the cost.
300
Protecting Games: A Security Handbook for Game Developers and Publishers
There are other identity strategies available. The adult social network, Naughty
America, provided an online background-checking service for its customers to help
find out if potential partners have a criminal record15. Shanda Interactive’s King of
the World MMO requires players who wish to play female characters to “prove
their biological sex via webcam”16! There are also identity systems such as web
cookies and computer fingerprinting. These are better at identifying platforms than
their users (this difference is something that U.S. online service providers tend to
forget; in the rest of the world, the Internet is usually accessed via a public terminal
at an Internet cafe, not a personal PC). Computer fingerprinting systems use various values that can be accessed by software on a computer including: serial numbers for hard drives, MAC addresses for network cards, and license keys to attempt
to create a unique identify for each platform. This technique works much better if
the subject does not know her computer is being fingerprinted, as the signatures
can be changed by a motivated hacker.
THE MORRIS TRAP
Robert “Bob” Morris invented and implemented the widely used scheme of using irreversible transforms to protect passwords. The huge advantage of this approach was
that the transformed passwords could be stored in the computer’s main memory
back in the days when memory, hardware, and software were all expensive.
The first part of the Morris Trap is the misuse of the irreversible transform technique. Because people are people, we tend to use highly structured, predictable
passwords. A hacker can test these passwords easily if he has a copy of the “hashed”
or transformed passwords stored in a computer (which Morris’ technique allowed).
If every password is processed with the same irreversible transform function, it becomes very efficient to run a dictionary attack against all of the different user passwords at once. This is not an error on the part of the actual transform technique as
defined by Morris, but how it is incorrectly implemented by many, many programmers.
To avoid the efficient dictionary attack, each password needs to have a distinct seed.
Sometimes, the username is used, but it is better to actually generate a distinct seed
value associated with a username.
The second, and more serious, part of the Morris Trap is that hardware and storage are no longer expensive. Rather than relying on a mathematical technique that
still allows fairly efficient dictionary attacks, it would be better to physically isolate
passwords in a separate system that can only be queried at a relatively slow pace.
In practice, relatively few attackers do have physical access to the target systems. If
passwords are in a separate machine that is hard to attack, passwords are not nearly
as weak a security mechanism as they are when the memory of the machine is
remotely accessible. Buy a separate computer, give it a painfully simple, secure
interface, and physically protect passwords and other sensitive data.
Chapter 29 Identity, Anonymity, and Privacy
301
It is very hard to have true anonymity online. People tend to forget that they are
sending out a “return address” every time they do anything online via the Internet.
Yes, there are services that can hide online users, but the performance and effectiveness of these services in reality should be questioned.
Anonymity is kind of like cheating—everyone wants to be the only one who
has/does it.
Some online services do not want to support a strong identity management
system, often to allow them to reach a larger audience, but still would like some
level of accountability. Social networks, blogs, and web forums that authenticate
users via username and password or email address are a good example.
The standard solution is usually some sort of “web of trust.” The problem with
a web of trust in an anonymous environment is that there is no cost or penalty for
lying or creating additional identities.
The classic way to attack a “web of trust” is to build your own large collusive
web of untrustworthy people who “trust” each other. This is most easily implemented
by all of them being you. Many individuals create multiple identities at a single online service for perfectly legitimate reasons. Because there is no tie to a real identity
or any cost for creating an identity, it is possible to build an arbitrary reputation by
generating enough identities and relationships to feed your “hero” identity.
These anonymity architectures (like many mathematical systems) seemingly
are designed by mathematicians for mathematicians. They exist in a world of equations and protocols, but tend to have real problems when “real life” intervenes.
Little details, like implementing the system in hardware or software (much less the
involvement of less-than-honorable people) can bring the security of these systems
crashing down.
Anonymous systems need some sort of cost for creating additional identities
and motivating people to be honest about whom they are. The best method is a real
financial cost to create an identity, but this often conflicts with the other goals of the
online service that was considering anonymity in the first place.
Even if a working anonymous system could be put together, would it be desirable?
The data to-date on anonymous behavior online is pretty abominable—
griefing, cheating, harassment, abuse, spamming, phishing, ID theft, and so on—
and it is not like “free speech” is really protected by these systems. There is no
“right to anonymity.” If the government (or, more likely, a motivated hacker)
wants to find out who you are, they will. They will start tracking down IP addresses,
read actual logs of systems, and find you.
302
Protecting Games: A Security Handbook for Game Developers and Publishers
So, at best, we have a veneer of anonymity that encourages bad behavior
without protecting those rare instances where anonymity might have some positive
social value. Bravo!
What people actually can live with (I think) is a system of strong privacy (in the
ordinary sense of the word) and strong identity. Thus, I may be free to explore
alternative experiences with confidence that, as long as I don’t break the rules, very
few folks will need to know who I am. This can be done. Technical systems need to
be combined with good business practices and sensible laws and regulations.
A GE V ERIFICATION
with J. Price
A variety of online problems could be resolved if a user’s age could be confirmed
quickly, reliably, and under a consistent legal framework. Even better, how about a
law with a “safe harbor” from liability for those who play by the rules and make
a good faith effort to weed out underage or other inappropriate individuals from
content they should not be able to access? Unfortunately, we’re not completely
there, yet. Progress is being made.
Age verification and identity verification are important “gateway services”
necessary for a large number of online businesses. Today, unfortunately, there is no
way to provide these services in a way that completely addresses liability concerns.
The Adult industry uses click-agreements and payment systems as a “best practices/
best effort” solution. On the children’s front, we have COPPA, which does provide
an actual means to verify the age/identity of a child (but not of an adult).
Several companies offer general age verification services, including IMVU17
and Second Life18. Because both companies allow businesses to operate within their
environment, should these virtual businesses trust IMVU or Second Life’s age verification or, for that matter, to what extent should IMVU or Second Life trust their
age verification service providers?
Not if the business faces any real liability for failing to accurately verify the age
of a user.
Neither IMVU nor Second Life nor the actual age verification providers offer
any sort of insurance or liability protection to a business or individual who trusts
the service and uses its result to make a business decision. IMVU ’s service only
claims 90 percent accuracy, which is not very comforting in the world of rampant
litigation.
Chapter 29 Identity, Anonymity, and Privacy
303
These new age certifications do have the advantage of being inexpensive, but
they provide limited value to consumers or businesses. Ironically, one of the
“features” of these new systems is really a weakness—their claim that no information
is retained. If the “evidence” of identity was maintained, it could, at least, be used
as the basis of a fraud investigation and action against any individuals who have
misrepresented their identities. Instead, all we will know is that at some time
some data was provided that the company assumed was associated with a specific
individual.
If you are going to target your game to children, follow the law. Know why certain laws apply or why they do not apply. Do not go halfway and kinda-sorta target
children and then discover you “accidentally” have data on children. The rewards
from following laws and regulations will far outweigh the risks of building your
service and taking a chance that the government won’t notice. And, if you are going
to hire a third party for this service, make sure you know where the liability falls if
the system fails. The age verification provider may have a “safe harbor” clause that
covers you, and they might not.
One law that is important in this area is the “Children’s Online Privacy
Protection Act,” frequently referred to as COPPA (often confused with “COPA,”
the “Child Online Protection Act,” which has been successfully challenged in court).
COPPA applies to the online collection of personal information from children
under 13. The Federal Trade Commission (FTC) implements the law through a
variety of regulations and suggested “best practices.” The FTC also sends out warnings to industry when it cracks down on those that violate the law.
COPPA provides a “safe harbor” from liability for those who follow its guidelines. Industry groups or even individual businesses can create self-regulatory
programs to govern compliance with COPPA. These guidelines must meet a checklist of legal requirements and then be submitted to the FTC for approval. Before
approval, the FTC will make the guidelines public and ask for comments on whether
the guidelines should be approved. If the FTC approves your guidelines, then you
will generally have a “safe harbor” from any enforcement action for violations of
COPPA.
Although the “safe harbor” is tempting, it might not be the solution if your service targets children under 13 and collects information about the children. In most
cases, those service providers avoid COPPA violations by adhering to strict rules.
First, know whether your service is covered by COPPA. To determine whether a
website is directed to children, the FTC considers several factors including, subject
matter, visual or audio content, the age of models on the site, language, whether advertising on the website is directed to children, information regarding the age of the
actual or intended audience, and whether a site uses animated characters or other
child-oriented features.
304
Protecting Games: A Security Handbook for Game Developers and Publishers
Next, you need a carefully crafted and prominently placed privacy policy. Do
more than post a compliant privacy policy—adhere to it. Also, note that the FTC’s
regulations also require, among other things, that you obtain verifiable consent
from the child’s parent before collecting data.
Although COPPA does address legal liability for online identity for children
under 13, solving online identity for everyone is a key problem for the future of
advanced online services. The solution to this problem is important. Companies
will need to be able to get a legal safe harbor for certifying identity and individuals will
need to be held liable for identity fraud or theft. Unfortunately, it will require more
than a technical solution. Someone is going to have to engage government to establish a legal safe harbor for online identity.
U SAGE C ONTROLS
AND
G AME A DDICTION
There is a wide perception that people can become addicted to computer games in
the US19, in Europe, and in Asia. Whether this is true or not is beyond the scope of
this book. What is relevant is that the perception that games are addicting is creating
a public policy problem for the computer game industry. As of late 2008, there has
been little public response of any kind to this issue from industry associations or
individual companies.
Asia, China20, Korea21, and Vietnam22 have all taken similar steps to restrict
game usage. These controls are different than ordinary parental controls (see
Chapter 30) in that they are not adjustable by an adult. In general, the response
from the industry has not been very supportive, but most companies do not seem
to be actively fighting regulation.
No business lives in a vacuum and the failure of the games industry to respond
to social concerns about game addiction reflects poorly on the industry and its
maturity. It is also good business for an industry to lead public policy for issues that
affect the industry’s livelihood.
On the other hand, there is a real concern for governments seeking to control
game companies and address game addiction: The global nature of the Internet
makes it easy to move offshore and successfully avoid undesired regulations. This
could give domestic companies a disadvantage compared to their less regulated,
offshore counterparts.
To understand usage controls, it is instructive to look at what the actual restrictions are. China has established limits on game usage that are far from onerous:
Chapter 29 Identity, Anonymity, and Privacy
305
Limits play of minors (only).
Play up to three hours per day is not restricted.
Play from three to five hours is penalized at 50 percent of normal in-game
benefits.
Play over five hours has no in-game benefit.
Players must provide valid identities to play.
These are not difficult restrictions. In the US, where games are largely based on
monthly subscriptions, it would have no negative impact on revenues (and there
may even be an upside with some players purchasing additional accounts). In Asia,
where subscription games are typically metered hourly, the impact would be really
only on extreme players. In both areas, “professional” players, like gold farmers,
would feel the impact the most because these users are playing full-time (eight
hours a day or more).
Many of the “industry concerns” are based on the notion that the system can
be circumvented. Of course it can, but it does not matter. The company is providing due diligence to protect minors with usage controls. The individual player
would have to take positive action to subvert the security system. The game
company has done its part, and it is up to the individual to also obey the law.
For games with a U.S.-style subscription system, this scenario is probably
“money in the bank.” After all, gold farmers and other heavy players would wind up
buying multiple accounts—meaning more subscriptions—so a game company can
probably match revenues to usage better for extreme players.
The game industry worldwide probably should move to usage controls for
players of all ages. The system would be closer to metering and would largely
answer public policy concerns about game addiction and excess game playing.
Finally, the real gem in this program is the requirement for the use of real identities. Although this may place an additional burden on companies in the short
term to adequately protect privacy, strong online identity is necessary to the growth
and vitality of the industry as a whole.
In China, gold farmers increased the prices of their virtual items in anticipation
of the implementation of the “anti-fatigue” usage controls. Whether this was due to
projected loss of business due to fewer hours of play or because the gold farmers
were concerned about an increase in the cost of their operations is unclear23.
Griefing, fraud, unauthorized gold farming, and so on should become much, much
more manageable with a strong identity system in place. This should lower the cost
of operations for everyone.
306
Protecting Games: A Security Handbook for Game Developers and Publishers
The game industry would benefit from leading on issues such as usage limitations instead of simply reacting and focusing on the (alleged) short-term financial
aspects of these legitimate social issues. The endless battles over age restrictions and
success of anti-gaming activists in the US like Jack Thompson (and he has been a
success in putting the entire U.S. video game industry on the defense in the matter
of labeling and restricting game sales) should show the costs and risks of letting
government and society get “ahead” of the industry on policy matters.
A CCOUNT C OMPROMISE , I DENTITY T HEFT ,
AND
P RIVACY
Millions and millions of personal records have been compromised due to negligence
and malice. I’ve received at least two notifications that my personal data has been
compromised: One time from a large defense contractor I hadn’t worked for in
years (why was my information even in a “live” database?) and the other I just received from some firm that apparently has my information because of some stocks
that I own. They all reassure me that there is “no evidence that your personal information has been misused.” What kind of “evidence” are they actually looking for?
Welcome to the world of data disclosure, account compromise, and identity
theft.
Goodbye privacy.
If you want to understand why there is so little concern about protecting your
data, in the US, the standard fine for data disclosure is pretty low. The SEC recently
fined a brokerage firm $275,000 for compromising the data of at least 10,000
customers24 and leaving the data unprotected for over a year. Approximate fine per
person: $2.75 or less. Conversely, in Korea, NCsoft was fined 500,000 Won (around
$500) per person for leaving a log file with 8,500 user IDs and passwords unprotected for just five days25. These cases raise some interesting questions:
If the company can show that it keeps data protected so that a single incident does
not lead to any meaningful compromise, can it avoid liability?
This is certainly possible from an engineering perspective (via encryption, split
data storage, and other techniques). Also, if the company has a strong logging
system in place, it may be able to determine the scope of an incident in sufficient detail to reduce costs and better inform customers of whether they are
actually at risk of identity theft (determine if the data has actually been accessed
as opposed to just exposed and if the data has been accessed, by whom.).
Chapter 29 Identity, Anonymity, and Privacy
307
Should this be a payment to the consumer or a fine?
If the compromise was of a username and password and no other information,
the password compromise should be considered insignificant, if the company
acted promptly and reimbursed users for any lost data during the period of the
compromise. In this case, a fine is reasonable to encourage companies to avoid
these compromises. The simple loss of a password for an extended period of
time could arguably result in a fine and a payment to affected players for
“losses.” Consumers need to be responsible and encouraged to use passwords
in such a manner that the compromise of one does not affect their other accounts (thus, a company fine).
Losses at the site are one matter, but the compromise of personally sensitive information is different. Credit card numbers, ID numbers, and so on, are sensitive, and have a long term value, can be used for other crimes, and are
expensive and time-consuming to recover (once you figure out that identity
theft has occurred, which is difficult in and of itself).
Standards for prompt disclosure combined with an established schedule of
fines and payments would encourage companies to take appropriate actions
promptly and exercise better care with this information. Conversely, consumers
should not be rewarded for irresponsible behavior on their part.
Game companies have compromised data: A Japanese MMO compromised
the full account information (excluding payment information) for nearly 300,000
customers because the data was accidentally placed on a download server26 and
hackers gained access to Second Life’s entire user database, including usernames,
real names, and encrypted passwords and encrypted payment information27. There
are also cases of real malicious insiders. A database administrator at a consumer
reporting agency in Florida stole 8.4 million data records and sold them for
$580,00028.
The list of incidents goes on and on. In 2007, Microsoft has had several problems with customer service representatives for Xbox Live succumbing to social
engineering to provide passwords for other users accounts29, 30. What is frustrating
about the Xbox case is that the customer service representatives should have been
able to use the player’s Xbox console ID, which, presumably, is known to Microsoft
but not to other players, to help confirm a player’s identity. Also, Microsoft should
have had procedures in place to restore the integrity of the players’ accounts in cases
where the accounts are compromised (all security systems need to be designed to
recover from failures).
308
Protecting Games: A Security Handbook for Game Developers and Publishers
The costs for game companies can be serious. In 2006, K2 Networks estimated
that they lost $1 million in one year due to hacking, account compromises, phishing,
and identity theft31. The loss was not of direct revenues, but from lost “customers:
“It’s not lost money generated daily, but lost customers that wouldn’t come
back.”
—David Lee, K2 Network Senior Director of Infrastructure and Engineering
If these were lost customers, it is likely that the total losses would actually be a
good bit larger. After all, online gamers tend to stay with the games they enjoy for
a number of years.
The game industry’s experience with personal data disclosures is consistent
with other businesses. The typical cost to a company for a lost record was $197 for
each customer record that was compromised in 2007—up from $182 in 200632. Game
companies are high value targets. Identity thieves stole 230,000 identities from a
number of online sites in Korea and many of them were used to create dummy
accounts for gold farming in NCsoft’s Lineage games33. These costs clearly indicate
that it is worth investing in improving information security technology and practices for any business that holds customer data. This investment should include
protections against external hackers, errors, and internal crooks.
Phishing attacks are a particular problem for online games. Forged emails that
direct players to sites that download malware or solicit usernames and passwords
are an ongoing problem for the industry. Virtually everyone has been hit, from
World of Warcraft, Xbox Live, Steam, EverQuest II, EVE Online, Tibia, and probably everybody in between. Tools like Blizzard’s Authenticator security token and
NHN’s challenge/response cards as well as the phone-based authentication systems
being used in Asia are probably the best approaches to fighting these attacks (see the
section “The Registration Problem and Identity Management Systems,” earlier in
this chapter). Customer education and training can help, but social engineering
attacks have a long, consistent history of success34.
L EGAL R EQUIREMENTS
FOR
P RIVACY P ROTECTION
by J. Price
Privacy is a growing concern. Consider what type of data you actually need to
retain. You do not have an obligation to secure any data that you do not keep. This
is not a minor point. Keeping data—no matter how securely—means that the data
Chapter 29 Identity, Anonymity, and Privacy
309
is susceptible to being stolen or misused in any number of ways. If you require
personally identifiable information from someone to play a game—such as a name,
address, credit card number—you have security obligations, and must respond in
specific ways if a data breach occurs. Issues arise with non-personally identifiable
information, but the obligations are less serious.
LEGAL REQUIREMENTS
IN THE
US
Most privacy protection issues occur in the context of online services, although the
collection of personal information about people is not limited to online service
providers, and the laws relating to protecting that information and appropriately
reacting to data breaches are applicable to anyone who holds personal data. Data
breaches can lead to state and federal enforcement actions and result in serious
fines. In 2006, the U.S. Federal Trade Commission (FTC) settled charges with
ChoicePoint, Inc. in connection with a breach involving the personal information
of 163,000 persons. ChoicePoint was required to pay $10 million in civil penalties
—the largest civil penalty in FTC history at the time—and to provide $5 million for
consumer redress35.
These potential fines are in addition to other laws that require you to notify all
individuals whose records were lost if you suffer a data breach. As of August 2007,
approximately 39 states have enacted legislation requiring notification of their
citizens in cases of misappropriation of their personal information36. California is
in the forefront with its tough requirements that require such notification5. Most
states have followed California’s lead. Federal law will not likely be far off, but (as
of the writing of this book) no law has yet been passed, although many drafts have
been circulated.
LEGAL REQUIREMENTS
FOR THE
EU
In the US, privacy controls include a mix of legislation, regulation, and self-regulation. The European Union, however, relies on comprehensive legislation that, for
example, requires creation of government data protection agencies, registration of
databases with those agencies, and in some instances prior approval before personal
data processing may begin. The two fundamentally different approaches to regulating privacy can cause issues for companies engaging in trans-Atlantic transactions.
To bridge these different privacy approaches and provide a streamlined means
for U.S. entities to comply with the EU requirements, the U.S. Department of
Commerce, in consultation with the European Commission, developed a “safe
harbor” framework. The safe harbor is a voluntary means for U.S. companies to
avoid facing prosecution by European authorities under European privacy laws.
310
Protecting Games: A Security Handbook for Game Developers and Publishers
Certifying to the safe harbor assures consumers that EU organizations certify that
your company provides “adequate” privacy protection, as defined by the European
Commission.
Organizations that decide to participate in the safe harbor must comply with
the safe harbor’s requirements and publicly declare that they do so. To be assured
of safe harbor benefits, an organization must self-certify annually to the U.S.
Department of Commerce, in writing, that it agrees to adhere to the safe harbor’s
requirements. These requirements include elements such as notice, choice, access,
security, data integrity, and enforcement. The game operator must also state in its
published privacy policy statement that it adheres to the safe harbor. Further details
can be found at the U.S. Department of Commerce Safe Harbor website37.
R EFERENCES
1. F. Dai (2005), “China: Real Name Registration for Instant Messenger,”
http://www.globalvoicesonline.org/2005/07/21/china-real-name-registration-for-instant-messenger/
2. Kim Y. (2007), “KOREA: Busy Websites Need Real Name Registration,”
http://www.asiamedia.ucla.edu/article-eastasia.asp?parentid=60686
3. Korea.Net (2005), “Foolproof ID to be Adopted for Online Registration,”
http://korea.net/news/news/NewsView.asp?serial_no=20051031013&part=109&SearchDay=&source=
4. Federal Trade Commission (1998), “Children’s Online Privacy Protection Act of 1998,”
http://www.ftc.gov/ogc/coppa1.htm
5. California (2002), “SB 1386,”
http://info.sen.ca.gov/pub/01-02/bill/sen/sb_1351-1400/sb_1386_bill_20020926_chaptered.html
6. Kim T. (2006), “Internet Operators Face Suit Over Privacy Infringements,”
http://search.hankooki.com/times/times_view.php?term=online+game++&path=hankooki3/times/lpage/
nation/200605/kt2006052516592810510.htm&media=kt
7. J. Robertson (2008), “ID Thieves Drive Down Prices for Stolen Data,”
http://www.usatoday.com/tech/news/computersecurity/infotheft/2008-04-08-internet-securitymarket_N.htm?csp=34
8. S. Bowers (2006), “Players Walk Away as US Law Wipes Out 90% of PartyGaming’s Poker Revenue,”
http://www.guardian.co.uk/business/2006/oct/17/usnews.gambling
9. S. Davis (2006), “Payment Card Spoofing: Subverting Identity & Cheating,”
http://playnoevil.com/serendipity/index.php?/archives/791-Payment-Card-Spoofing-Subverting-IdentityCheating.html
10. Xinhua (2006), “Fake Identities Open Up Games, Blogs, Websites,”
http://www.chinadaily.com.cn/china/2006-12/27/content_769097.htm
11. Kim T. (2006), “Teenage Porn Case Fuels Online Identification Debate,”
http://search.hankooki.com/times/times_view.php?term=porn++&path=hankooki3/times/lpage/tech/20
0610/kt2006101619305711780.htm&media=kt
12. S. Burns (2006), “Korea Guards Against Online ID Theft,”
http://www.pcauthority.com.au/News/61055,korea-guards-against-online-id-theft.aspx
Chapter 29 Identity, Anonymity, and Privacy
311
13. Blizzard (2008), “Blizzard Authenticator (United States Only),”
http://www.blizzard.com/store/details.xml?id=1100000182
14. Wohn D. (2006), “NHN, NCsoft and Identity Security in Korea,”
http://playnoevil.com/serendipity/index.php?/archives/872-NHN-NCsoft-and-identity-security-inKorea.html (original article at JoongAng Daily no longer available)
15. J. Wyss (2006), “Sentry to Play Cop, Chaperon Online,”
http://playnoevil.com/serendipity/index.php?/archives/282-Mom,-Hes-Not-A-Convicted-Felon-TheNew-Standard-For-Online-Dating-Games-in-Naughty-America-The-Game.html (original article at
Miami Herald no longer available)
16. R. Hsu (2007), “Shanda’s Aurora Bans Transsexuals,”
http://www.pacificepoch.com/newsstories/106627_0_5_0_M/
17. IMVU (2007), “Age Verification FAQ,”
http://imvu.com/catalog/web_info.php?section=Info&topic=age_verification_faq
18. Virtual World News (2007), “Second Life Adds Identity Verification,”
http://www.virtualworldsnews.com/2007/08/second-life-add.html
19. J. Wagner (2008), “Addiction to Video Games a Growing Concern,”
http://health.usnews.com/articles/health/2008/05/07/addiction-to-video-games-a-growing-concern.html
20. S. Davis (2007), “China: Anti-Fatigue System Regulation Translated,”
http://www.playnoevil.com/serendipity/index.php?/archives/1510-China-Anti-Fatigue-SystemRegulation-Translated.html
21. Kim T. (2006), “Bill to Limit Time for Online Games,”
http://search.hankooki.com/times/times_view.php?term=online+game++&path=hankooki3/times/lpage/
tech/200605/kt2006051918332111780.htm&media=kt
22. B. Hayton (2007), “Vietnam Restricts Online Gaming,”
http://news.bbc.co.uk/2/hi/asia-pacific/6225505.stm
23. H. Lee (2007), “Fatigue System Pushes Up Virtual Item Prices,”
http://www.pacificepoch.com/newsstories/95096_0_5_0_M/
24. G. Risling (2008), “Brokerage Firm to Pay Fine for Security Breach,”
http://www.forbes.com/feeds/ap/2008/09/11/ap5414745.html
25. Chosun Ilbo (2006), “Landmark Ruling Against ‘Lineage’ Maker Over Data Leak,”
http://english.chosun.com/w21data/html/news/200604/200604280026.html
26. W. Wyman (2006), “Japanese MMOG Suffers Privacy Leak,”
http://www.gamespot.com/news/6153299.html
27. V. Cole (2006), “Second Life’s User Database Breached,”
http://www.joystiq.com/2006/09/09/second-lifes-user-database-breached/
28. D. Goodin (2007), “IT Pro Admits Stealing 8.4M Consumer Records,”
http://www.channelregister.co.uk/2007/12/04/admin_steals_consumer_records/
29. J. Evers (2007) “Microsoft Probes Possible Xbox Live Fraud,”
http://news.cnet.com/Microsoft-probes-possible-Xbox-Live-fraud/2100-7349_3-6169060.html
30. R. Lemos (2007), “Account Pretexters Plague Xbox Live,”
http://www.securityfocus.com/news/11452
31. L. Sullivan (2006), “Thieves Targeting MMOGs Prompt Tighter Security,”
http://www.techweb.com/wire/security/192700321
32. R. Blitstein (2007) “Cost of Compromise: a Customer Record Costs a Company $197 each in 2007,”
http://www.playnoevil.com/serendipity/index.php?/archives/1776-Cost-of-Compromise-a-CustomerRecord-costs-a-company-197-each-in-2007.html (original article at San Jose Mercury News no longer
available)
312
Protecting Games: A Security Handbook for Game Developers and Publishers
33. S. Burns (2006), “Identity Theft Victims to Sue NCsoft,”
http://www.vnunet.com/vnunet/news/2151224/identity-theft-victims-sue
34. J. Timmer (2008), “Fake Popup Study Sadly Confirms Most Users Are Idiots,”
http://arstechnica.com/news.ars/post/20080923-study-confirms-users-are-idiots.html
35. Federal Trade Commission (2006), “ChoicePoint Settles Data Security Breach Charges; to Pay $10
Million in Civil Penalties, $5 Million for Consumer Redress,”
http://www.ftc.gov/opa/2006/01/choicepoint.shtm
36. Consumers Union (2007), “Notice of Security Breach State Laws,”
http://www.consumersunion.org/campaigns/Breach_laws_May05.pdf
37. Export.gov (2008), “Welcome to the Safe Harbor,” http://www.export.gov/safeHarbor/
30
Protecting Kids from
Pedophiles, Stalkers,
Cyberbullies, and
Marketeers
nline games and virtual worlds whose primary customers are children are
probably the fastest growing portion of the online game industry. It is
gratifying that many of these services take the issue of protecting children
seriously. Protecting children online is an increasing concern to mainstream
media—it has even been the lead letter to “Dear Abby”1. Parents and public officials
worry about pedophiles and stalkers harassing their children. The available data
actually indicates that cyberbullying and harassment by other children is a much
more significant problem.
O
For example, the media often cites a claim that one in seven children has been
contacted by a sexual predator. The more accurate number is that 1 in 25 children
received an online sexual solicitation from someone (not necessarily a predator)
that includes an attempt to meet in real life. Interestingly, most adults flatter youth,
they don’t lie, and they don’t misrepresent their age or interest in sex. The young
people involved are not pre-teens, but typically 13-15 years of age and the (potential)
crime is statutory rape, not forcible rape2. The details of this issue are important
enough to quote at length; see the following quotation.
1) These solicitations did not necessarily come from “online predators.” They
were all unwanted online requests to youth to talk about sex, answer personal
questions about sex, or do something sexual. But many could have been from
other youth. In most cases, youth did not actually know the ages of solicitors.
When they believed they knew, they said about half were other youth.
2) These solicitations were not necessarily devious or intended to lure. Most
were limited to brief online comments or questions in chat rooms or instant
messages. Many were simply rude, vulgar comments like, “What’s your bra size?”.
3) Most recipients did not view the solicitations as serious or threatening. Twothirds were not frightened or upset by what happened.
313
314
Protecting Games: A Security Handbook for Game Developers and Publishers
4) Almost all youth handled unwanted solicitations easily and effectively. Most
reacted by blocking or ignoring solicitors, leaving sites, or telling solicitors to
stop.
5) Extremely few youth (only two) were actually sexually victimized by someone they met online. This number was too small to be the basis of a reliable
estimate of how many youth in the population get sexually victimized from
online meetings.
….
1 in 25 youth (about four percent) got “aggressive” sexual solicitations that
included attempts to contact the youth offline. These are the episodes most
likely to result in actual victimizations. (About one-quarter of these aggressive
solicitations came from people the youth knew in person, mostly other youth.)
1 in 25 youth (about four percent) were solicited to take sexual pictures of
themselves. In many jurisdictions, these constitute criminal requests to produce
child pornography.
* 1 in 25 youth (about four percent) said they were upset or distressed as a result
of an online solicitation. Whether or not the solicitors were online predators,
these are the youth most immediately harmed by the solicitations themselves.
—Crimes Against Children Research Center (December 2007)
Some more recent data has shown that online harassment (cyberbullying) has
risen to nine percent of children who go online, substantially less than the 17
percent who are bullied in real life3.
The Internet, in general, and online games, in particular, are easy targets for
child protection advocates. Symantec recently completed a study of online behavior. Some of the most interesting data shows how ignorant parents are of what
their children are doing online. In many cases, the parents underestimate the length
of time their children are online by a factor of 10 and only a third of parents take
advantage of available parental controls4.
Good parental controls could be a real business opportunity, not a burden for
game companies. Incidents such as the case of an 11-year old New Zealand boy who
used his mother’s credit card to spend $1500 on virtual items in There.com5 are not
the sort of attention the industry needs. Parental controls can even become powerful marketing tools: T-Mobile, AT&T, and Verizon have all announced initiatives
to give children an “allowance” for mobile phone minutes and SMS messages6.
The game industry has taken some steps to address these issues. Microsoft
launched its Family-Safe Gaming Initiative7 and NCsoft has a similar PlaySmart
Chapter 30 Protecting Kids from Pedophiles, Stalkers, Cyberbullies, and Marketeers
315
Initiative8. What the game industry really needs is to launch and sustain an industrywide campaign to educate parents about appropriate and safe gaming, as well as
provide parents with useful tools.
Monitoring inter-player communications and game play is particularly important for children’s games, but is also a sensitive topic in games for general audiences
and for adults. Game operators need to balance providing a safe, functional game
environment with addressing privacy and legal concerns.
One of the most misunderstood subjects for children’s games is The Children’s
Online Privacy Protection Act (COPPA)9. COPPA has been misinterpreted and
caused many game creators to steer away from creating online games and virtual
worlds that allow children to play. In fact, COPPA can provide a legal safe harbor
for those online services that comply with its requirements.
Increasingly, there are third-party companies that offer services to help game
providers protect children. With the exception of certain providers certified under
COPPA, these third-party firms can only provide a “best effort” or “best practices”
service and cannot really help a game company reduce its liability if problems occur.
The ultimate goal for the game industry would be for online games and other
online services to effectively protect children globally through a standard and
accepted combination of procedural and technical measures. Today, it is a daunting
challenge to determine adequate, let alone best, practices.
D EALING
WITH
C YBERBULLIES , P EDOPHILES ,
AND
S TALKERS
As noted previously, public perception is that the online pedophiles and stalkers are
a much worse problem than is actually the case. The fact that it is newsworthy
when such incidents occur is a tribute to their relative rarity. Cyberbullying, on the
other hand, is relatively widespread—25 percent of girls and 11 percent of boys in
middle school reported being harassed electronically at least once in the previous
two months, according to a 2005 study of cyberbullying by Clemson University
researchers10:
Psychological studies show that people will do more, go further, than they
would normally, if their identity is obscured. Online, it is easy to remain
anonymous, and the normal frustrations of daily life can lead to what psychologists call disinhibition.
Cyberbullies, pedophiles (or child molesters), and stalkers all take advantage
of the relative anonymity of the Internet to pursue their goals. [see the following for additional details on the topic: 11, 12, 13, 14].
316
Protecting Games: A Security Handbook for Game Developers and Publishers
Although there are some technical tools that an online service can use to automatically filter online communications looking for behavior associated with
bullying, grooming, or stalking, the key is human oversight, preferably by the
children’s parents. Although such technologies may be helpful, it is unlikely
that they will transfer liability from the online service. The Clemson research
recommended the following guidelines for parents:
Teach your kids that, although your identity can be hidden when you’re
online, you still should treat people with respect.
Make sure your children have no online secrets from you, and that they
never share private information over the web or meet with someone they
only know from an IM session.
Put their computers in a space, such as a den, where you can see what
they’re doing.
You should know the passwords for all their accounts and check on what
they are posting.
—Dr. Robin Kowalski, Clemson University
Technically, online games should provide tools to make it easy to report
griefing or other suspicious behavior and support extensive logging both for the
company and for parents (see the next section for more information). Again, this
is an area where the industry has an opportunity to provide leadership through
advocacy and by public awareness and education.
K IDS ’ C OMMUNICATIONS , P ARENTAL C ONTROLS ,
AND
M ONITORING
The security issues related to protecting children’s communications are, essentially,
the same issues that exist for adults—with substantially increased visibility and
sensitivity to failures. For adults, the problem is nuisance griefing (see Chapter 21);
for children issues of cyberbullying, stalkers, and pedophiles raise the stakes much
higher. There are several strategies companies commonly use to secure “kidfriendly” online services:
Menu-Driven Communications—Menu-driven systems allow only certain
words and phrases to be constructed based on user selection from a list. The
advantage of this system is that it essentially requires no monitoring, as the participants are incapable of expressing any inappropriate phrases. This is often
the default communication service supported by many kids’ game sites. These
systems are not perfect. Children and adults have created “covert channel”
communications systems on these services, or even used decorations in any
Chapter 30 Protecting Kids from Pedophiles, Stalkers, Cyberbullies, and Marketeers
317
personal, customizable space in the game (or even clothing, I’d guess), to
exchange data and allow expanded chat (see the “Friend Codes” bullet)15.
Whitelist Chat—These services allow players to use only specific, preapproved words for communication. Site moderators have to continually
monitor game slang to identify new euphemisms for inappropriate topics such
as cybersex. There are also issues where motivated players can use legal phrases
to signal inappropriate information.
Blacklist Chat—This type of chat service blocks words and phrases that are inappropriate. It needs to be constantly updated as new “problem words” are
identified. In practice, this should not be difficult. A real-time monitoring team
can be alerted whenever a new word arrives and it can be added to either a
whitelist or blacklist. In practice, relatively few words are used, even with misspellings, so this is not a challenge for an automated filter. Club Penguin has
100 moderators who add 500 to 1,000 words per day to the site’s filters16.
Personal Blacklist—Sites can be concerned about personal information, such
as addresses, phone numbers, and email addresses, when children attempt to
share the personal info. This information may not be sensitive to everyone, but
when associated with a specific child, it indicates a potential problem—often
innocent, sometimes not.
Silent Filter—Club Penguin created this innovation for their Standard Safe
Chat system. Many sites will filter a specific word or phrase only if it is deemed
inappropriate. Some sites will also notify users that they have said something
wrong. Club Penguin’s system fails silently: The sender does not know that the
system rejected her message. The goal of the system is to not give the offender
any positive feedback—either from the recipient or from the security system—
so that she does not have information to “tune” her abuse strategy17.
Friend Codes—These sequences of letters and/or numbers need to be exchanged
outside of a game or online service before communications can occur. They are
most closely associated with Nintendo’s DS and Wii consoles. Many users
criticize them, but most children’s online games use the technique. Because this
technique forces a communication outside the game, the participants need to
have some sort of independent, hopefully pre-existing, relationship of trust.
Monitoring—Many children’s games use manual monitoring by company
staff to look for troublesome behaviors of all sorts. These people act as supplements to the automated filters and can intervene in various ways when they
identify a suspicious communication. The content of the communication does
not need to trigger intervention, only the fact that it is a new or an anomalous
pattern of behavior. Strictly speaking, monitoring does not always need to occur
in real-time; it can be slightly delayed or even used for simple review of logs.
318
Protecting Games: A Security Handbook for Game Developers and Publishers
These strategies can be used either in isolation or together. Many children’s
sites have different tiers of service with menu-driven communications available to
all and more flexible chat options for paying customers or individuals who have
provided detailed information about their identity.
As with other online services that have relied on text-based communications,
the rise of audio and video communications can pose a real challenge for protecting
children. Filters, word lists, and the other strategies that have been effective so far
for protecting children online are not really viable for video or audio communication services.
In addition to protecting communications, some games implement additional
parental controls, but typically, these are quite remedial. Games like World of
Warcraft, Lineage, and the Xbox Live service all have basic time limits, schedules,
and payment status tools. There are a number of additional capabilities that could
be useful for children’s online services and would make the services even more
appealing to parents:
Time Limits—An overall time allowance for hours of play per day or per week.
Schedules—Hours during which online activities are permitted or prohibited.
“Grounding”—The ability to prohibit a child from playing because of misbehavior.
Special Reward—The ability to temporarily add hours, open up a schedule, or
otherwise alter the game usage for the child. This could even be implemented
by a separate interface to a cell phone, allowing the parent to be “untethered”
from the playing child.
Payment Status—Current funds in the players account.
Allowance—A rate at which the child can spend money in the game account.
This is particularly applicable for free-to-play games or multi-game services.
Message and Activity Log Review—John Smedley, CEO of Sony Online
Entertainment, noted that it would be helpful for parents to be able to review
the full logs of their children’s messages activities in an online game18. Actually,
there is no reason that parents should not be able to review the activities of their
child online beyond just messaging, perhaps even a full game or online session
replay feature.
Approved Friends List—Parents could have the ability to approve friends or
move them into different categories. This could be beyond the basic “communication type” limitations that many services support today.
Chapter 30 Protecting Kids from Pedophiles, Stalkers, Cyberbullies, and Marketeers
319
Event Notification—Alert parents of notable events in the game. These do not
even need to be relevant to child safety (although it is probably unwise to abuse
them too much for marketing purposes). This would be another opportunity
to directly contact parents via SMS messages to cell phones or email and create
a strong, direct relationship with the parents.
Ratings System Support—Online games are going to need to develop their
own ratings system or become more involved in the traditional games rating
process. The more information parents have, the more comfortable they will
feel with these online services.
Rich Family Structure—It would be very beneficial to support multiple children
and parents/guardians under a single account with appropriate privileges and
capabilities for each. The service could even support temporary access for baby
sitters and for friends of the children, which could also be good for business.
Parent-Child Contract—Barbie Girls came up with an excellent idea for its
Parents’ Place service: a tool that helps parents and children build a contract for
when, where, and how the child can use the online service19.
One feature that many parents would likely appreciate would be a “parental
dashboard” that would allow a parent to centrally manage all of the online activities
of their child or children at all of the sites that the children use. It often seems that
game developers view parental controls as a burden instead of an opportunity to take
care of the real customer. After all, it is usually the parent who pays for the service.
A market is beginning to develop for security products and outsourced services
related to protecting children20. In addition to technical capabilities and costs, companies that are investigating such services should consider whether they can transfer any liability to the service provider.
Monitoring is not used solely for children’s games. There are additional issues
related to monitoring, particularly privacy, that should be considered regardless of
whether the participants are children or adults (see Chapter 29).
COPPA
with J. Price
Children are often the direct or indirect audience for many games, including online
games. Providing the game to them, and collecting various data associated with
their use of the game, will require game companies to adhere to the Children’s
Online Privacy Protection Act of 199821 (COPPA). (COPPA should not be confused
320
Protecting Games: A Security Handbook for Game Developers and Publishers
with COPA, the Child Online Protection Act, which addresses the exposure of
children to online pornography.) COPPA applies to websites and online
services operated by persons or entities under U.S. jurisdiction for commercial
purposes that are either directed to children under 13 or who have actual knowledge that children under 13 are providing information online.
COPPA is not optional. It is the law and companies have been fined substantially, in one case, $1 million for violating the statute22.
Online game developers seem to be petrified of children using their services.
The prospect of complying with COPPA and not marketing to kids seems to have
driven many companies to restrict their market to children 13 and up or adults.
It is interesting to note that parents are very active in children’s games. In the
social network and doll “dress up” game, Stardoll, a survey found that 80 percent of
surveyed children and 54 percent of surveyed parents visit the site daily. Parents seem
heavily involved: 75 percent visiting the site along with their daughters at least once a
week, 64 percent visiting on their own, and 60 percent having their own accounts23.
COPPA does not ban marketing to children; it provides rules on how to do it.
The law details, for example, what an online game operator must include in a privacy policy, when and how to seek verifiable consent from a parent or guardian,
what responsibilities an operator has to protect children’s privacy and safety online,
and includes restrictions on marketing to children under 13.
An important element of COPPA is potential legal immunity. The Federal
Trade Commission (FTC) implements a “safe harbor” designed to encourage
increased industry self-regulation. To take advantage of the safe harbor, the FTC
must approve the set of compliance guidelines that the company employs.24
C HILDREN
AND
I DENTITY
Protecting children’s identity is a particular challenge. In the US, a child’s privacy
is protected under COPPA, and as a practical matter mishandling children’s identity information is bad business and worse public relations. Kids don’t see identity
protection this way. They want to play games, and there is nothing like saying “no”
to encourage devious behavior. When a player registers, even an adult, the goal of
the registration process is to deter bad behavior, but some parents will also collude
with their children to “game” the system.
A good system should include both carrots and sticks for establishing and protecting identity: rewards and punishments. Verifying identity online is a hard problem;
face-to-face identity verification is not. However, verifying face-to-face identity is
not cheap. One answer is to get the users to pay to have their identities verified.
Chapter 30 Protecting Kids from Pedophiles, Stalkers, Cyberbullies, and Marketeers
321
How about a T-shirt?
One way to get users to pay for identity verification is through the physical
delivery of goods. Delivery services (such as UPS and FedEx or even the Post Office)
offer the ability to confirm identity via signature receipt. It is fairly expensive to pay
for this service purely as an identity verification method. However, consumers will
often pay to receive a T-shirt, poster, or other items (“carrots”). The marginal cost
of adding signature verification is low to a product delivery and, of course, the consumer is now actively engaged in marketing your game. The worst-case scenario is
that you might have to convince your marketing department to subsidize the shirts
or items.
An approach to handling identity misrepresentation is assessing an obvious,
serious financial penalty for misrepresenting information and the threat of legal
action (the “sticks”). For example, the game provider could levy a $250 charge for
handling and revoking a fraudulent identity. And, because identity theft and credit
card theft are both crimes, the service provider should be willing to pursue legal
action and do so conspicuously and publicly. Both of these threats would be highlighted during the registration process with a clear, explicit acknowledgement by
the user when completing the process. If an incident does present itself, the company
should be willing to follow through by enforcing the fine or taking legal action, or
both. If the service provider does take legal action, it should do so publicly.
Publicity will aid the company’s credibility and deter future problems.
C HILD P ORNOGRAPHY
with J. Price
Players may create or post child pornography onto your online service, unfortunately, and it must be dealt with quickly and appropriately. Federal law imposes significant penalties for the online (and off-line) distribution of child pornography.
Any entity providing any online service, including a game, must report any facts or
circumstances around possible violations of federal child pornography laws to a law
enforcement agency25 or the Cyber Tip Line at the National Center for Missing
and Exploited Children (1-800-843-5678—see also http://www.missingkids.com/
cybertip/). Any person who knowingly and willfully fails to make a required report
will face serious consequences, including fines of $50,000 for the first offense and
$100,000 for subsequent offenses26.
The legislation does not require an online service provider to monitor any user,
subscriber, or customer, or the content of any communication of any user, subscriber, or customer, and immunizes game operators and ISPs from civil lawsuits if
322
Protecting Games: A Security Handbook for Game Developers and Publishers
they take good-faith actions to comply with the legislation27. But game operators
must respond quickly to any report of child pornography and involve law enforcement just as quickly. Turning a blind eye to an end-user complaint regarding
content, especially if it is—or could be—child pornography, will very likely result
in prosecution.
R EFERENCES
1. Dear Abby (2007), “Online Video Game Threat Catches Parents Unaware,”
http://www.uexpress.com/dearabby/?uc_full_date=20070915
2. Crimes Against Children Research Center (2007), “1 in 7 Youth: The Statistics About Online Sexual
Solicitations,” http://www.unh.edu/ccrc/internet-crimes/factsheet_1in7.html
3. Crimes Against Children Research Center (2007), “Internet Safety Education for Teens: Getting It
Right,” http://www.unh.edu/ccrc/internet-crimes/safety_ed.html
4. Symantec (2008), “Parents, Get a Clue!,”
http://www.marketwire.com/press-release/Symantec-NASDAQ-SYMC-820494.html
5. R. Markby (2006), “New Zealand Boy Runs Up $1,500 Debt in There,”
http://playnoevil.com/serendipity/index.php?/archives/962-New-Zealand-boy-runs-up-1500-debt-inThere.html (original story at Stuff no longer available)
6. B. Tedeschi (2008), “How to Give Your Child an Allowance, the Mobile Way,”
http://www.nytimes.com/2008/07/31/technology/personaltech/31smart.html?em
7. Edge (2006), “Robbie Bach Fronts Safe Gaming Campaign,”
http://www.edge-online.com/news/robbie-bach-fronts-safe-gaming-campaign
8. S. Davis (2006), “NCsoft Launches ‘PlaySmart’ Information Program to Advance Online Gaming
Safety, Security,” http://playnoevil.com/serendipity/index.php?/archives/764-NCsofts-PlaySmartInitiative-Hopefully-Just-the-Beginning.html (via PlayNoEvil: original article at Yahoo! no longer
available)
9. Federal Trade Commission (1998), “Children’s Online Privacy Protection Act of 1998,”
http://www.ftc.gov/ogc/coppa1.htm
10. B. Levine (2006), “Taking On the Cyber Bullies,”
http://www.toptechnews.com/story.xhtml?story_id=02300000L9FA&page=1
11. D. Stang (2008), “How Pedophiles Groom Victims,”
http://sexual-abuse.suite101.com/article.cfm/how_pedophiles_groom_victims
12. K. Lanning (2001), “Child Molesters: A Behavioral Analysis,”
http://www.missingkids.com/en_US/publications/NC70.pdf
13. CyberBullyHelp.com (2007), “The Facts About Cyber Bullying,”
http://www.cyberbullyhelp.com/whatis.html
14. P. Agatston (2007),“Cyber Bullying Quick Reference Guide for Parents,”
http://www.cyberbullyhelp.com/Cyber%20Bullying%20Guide%20for%20Parents.pdf
15. The Good Reverend (2007), “How to Chat in Chatless Disney Online Game,”
http://thegoodreverend.blogspot.com/2007/06/how-to-chat-in-chatless-disney-online.html
16. P. Elliot (2008), “MMO Week: Club Penguin,”
http://www.gamesindustry.biz/articles/mmo-week-club-penguin
Chapter 30 Protecting Kids from Pedophiles, Stalkers, Cyberbullies, and Marketeers
323
17. S. Davis (2007), “Feature Article: Inside Club Penguin and its Child Safety Program—Updated Club
Penguins purchased by Disney,” http://www.playnoevil.com/serendipity/index.php?/archives/1461FEATURE-ARTICLE-Inside-Club-Penguin-and-its-Child-Safety-Program-UPDATED-Club-Penguinspurchased-by-Disney.html
18. J. Smedley (2006), “Be Vigilant,” http://stationblog.wordpress.com/2006/08/21/be-vigilant/
19. Barbie Girls (2008), “Barbie Girls Parents’ Place,” http://www.barbiegirls.com/parent_home.jsp
20. Virtual World News (2008), “Xivio Signs Crisp Thinking for Online Child Protection,”
http://www.virtualworldsnews.com/2008/06/xivio-signs-cri.html
21. 15 U.S.C. §§ 6501–6506
22. Federal Trade Commission (2006), “Xanga.com to Pay $1 Million for Violating Children’s Online
Privacy Protection Rule,” http://www.ftc.gov/opa/2006/09/xanga.shtm
23. N. Mitham (2008), “Stardoll: Fame, Fashion and Friends…and Mothers?,”
http://www.kzero.co.uk/blog/?p=2140
24. Federal Trade Commission (2006), “How to Comply with the Children’s Online Privacy Protection
Rule,” http://www.ftc.gov/bcp/conline/pubs/buspubs/coppa.shtm
25. 42 U.S.C. § 13032(b)(1)
26. 42 U.S.C. § 13032(b)(3)
27. 47 U.S.C. § 230; 18 U.S.C. § 2702(b)
31
Dancing with Gambling:
Skill Games, Contests,
Promotions, and Gambling
Again
here is one place where playing games purely for fun collides hard with the
real world: when gaming becomes gambling. Although game violence and
game addiction have recently been the focus of media attention and public
policy concerning the game industry, gambling is an area where game companies
can rapidly get into very serious trouble.
T
I am addressing gambling, contests, and related topics in a book on game security for two reasons:
Game companies can get into a lot of difficulty by veering into the gambling
industry unintentionally.
Once cash or prizes are involved, games are not just for fun, and the threat level
to a game’s integrity goes up dramatically.
The gambling gaming industry and the non-gambling gaming industry rarely
seem to acknowledge the other’s existence. However, the explosive growth of online
gaming and the wide range of business model experiments within the gaming industry are creating “accidental casinos” and “unintentional lotteries.”
Governments have no sympathy for companies that make these kinds of mistakes.
The temptation for game developers to edge towards gambling is pretty obvious. The potential to win cash or prizes is a huge incentive to participate in a game
and substantially increases a player’s willingness to pay to play. Designing a casino
game seems very simple: a deck of cards, a couple of dice, a wheel and ball, some
green felt, and you’re in business. All legal U.S. gambling (including casinos, Indian
casinos, charitable games, bingo, card rooms, and lotteries) generated $90.93 billion in gross gaming revenue in 20061; certainly enough money to catch anyone’s
attention.
324
Chapter 31 Dancing with Gambling
W HAT I S G AMBLING
AND
325
W HAT I S N OT
In general, a game must have three elements to be considered “gambling”: (1) consideration to play (often money); (2) an element of chance; and (3) a prize. If the
game lacks any one, it is not a gambling game…usually2. Game business models
can be broken into the following categories (if you are considering gambling and
related legal issues):
No Prize: No Gambling, No Problem—Even if you charge to play or have an
element of chance, if there is no prize, there is no gambling.
No Consideration: Contests and Sweepstakes—As long as you do not have to
pay to enter and all entrants have an equal chance to win all prizes (equal dignity is the legal term), the game is not gambling. There are certain U.S. states
that are more restrictive in this regard. Personally, I use the “McDonalds Test.”
Go get a McDonalds prize ticket and look where the contest is “Void Where
Prohibited by Law.” This is a good list of the places where you can’t run contests.
Consideration, No (Little) Chance, and Prize: Skill Game—If the game does
not contain an element of chance, it is a skill game and not considered gambling. Typically, in the US, about 30 states use a “preponderance of skill” standard, another 10 have a “pure skill” standard, and the rest don’t allow skill
games (contact your lawyer).
Consideration, (Mostly*) Chance, and Prize: Gambling—A game that includes all three elements is not necessarily prohibited, but it is almost certainly
regulated in most jurisdictions. For example, in the US, fantasy sports leagues,
horse racing, and certain online lotteries are excluded from the Unlawful
Internet Gambling Enforcement Act (UIGEA)3. There are also different rules
for charitable gaming. (*)Interestingly, the law in Canada is reversed; if there is
an element of skill in the game, it is not considered gambling 4.
Nations and states may treat the gaming/gambling transaction as occurring
where the player is, not where the server or business is located. This is an issue that
needs to be explored more carefully from both the perspective of protecting a gaming company and as a matter of public policy. Some jurisdictions, most notably the
US, France, and Israel5, have stated that if either party to the transaction is in their
jurisdiction, the government has jurisdiction over both parties. The risk for a gaming company is that it may be operating in a jurisdiction where gambling is legal,
but be at risk of prosecution in another jurisdiction because one of its players is
located there.
326
Protecting Games: A Security Handbook for Game Developers and Publishers
Game designers can work their way around these issues, if they do so carefully.
Trading card games allow players to create value for the cards independently of the
value set by the game company. Games can also be redesigned to remove an element of chance. For example, Duplicate Bridge6 eliminates chance from a card
game by having all partnerships play the same hands. The bottom line is that if you
have any questions or doubts about whether your game is a gambling game, contact an attorney knowledgeable in this area of law.
A CCIDENTAL C ASINOS
User-created content and emergent game play are usually wonderful things when
they are part of your game. Players have taken online games and expanded them
and transformed them far beyond the initial plans or intent of their creators. Game
companies can experiment with new rewards and incentives for playing. All of
these factors can sometimes cause a game to stumble into gambling: Linden Lab’s
Second Life has been at the forefront of player creativity. One of the obvious, and,
for a while, quite popular, options for players was to create a virtual casino that
used the game’s currency. In 2007, Linden Lab asked the FBI to review these inworld services7 and shortly thereafter banned both advertising for gambling8 and all
of the virtual gambling sites inside the virtual world9. In Korea’s intensely competitive online gaming market, the Lohan MMO, was launched and was surprisingly
popular. It had a Baccarat “mini-game” that became very popular and which was
of sufficient concern that Korea’s Media Rating Board (equivalent to the U.S.
Entertainment Software Rating Board) asked that the game be removed10.
Even more challenging to the boundary between gaming and gambling is the
case of Sony’s Station Exchange. As discussed in the gold farming section of
Chapter 22, Sony launched this online sales service as part of its strategy to fight
gold farming. However, because Sony seems to have profited from the transactions
and many of the virtual items had an element of chance involved in their acquisition, there were questions raised as to whether the UK’s new Gambling Act would
require Sony to get a license11. Sony could perhaps avoid this potential problem if
it set a flat listing or processing fee instead of a commission-based transaction service. NHN’s game Reign of Revolution embraced a more direct form of capitalism
by allowing players to tax all of the transactions in regions that they controlled. This
could potentially be quite lucrative, given the wide availability of real money trading sites in Korea12.
As a world leader in online gaming, Korea is struggling with clarifying the distinction between gaming and gambling online. They have large-scale gold farming
and, at the same time, casual gambling games (such as the card game Go-Stop and
Chapter 31 Dancing with Gambling
327
poker) that are widely played for large amounts of virtual currency. The government is considering penalizing players who trade more than 300,000 Won (around
$290) in virtual currency per month13.
S KILL G AMES
Typically, contests are pretty safe and non-controversial. There is no legal problem
as long as players don’t have to pay to enter and they have an equal chance of winning the prizes. It is pretty easy to determine whether the game is a contest.
Skill games are more problematic. Because payments are required to play, the
boundary between jail time and a good business is based solely on the game design
and implementation. Governments are not always helpful: The UK recently determined that poker was a game of chance14, whereas Denmark decided it was a game
of skill15.
Game developers have adapted a number of casual games to use the skill games
business model16. Developers have even converted first person shooters into skill
games, although to date, none of these endeavors has been financially successful17.
There are a range of issues that game developers should consider when designing a
skill game or converting an existing game to the skill game business model:
Does the Game Have Enough Skill—There are a lot of games that are quite fun
that don’t require much skill. The entertainment comes from the graphics, animation, and sound, simple game play, and substantial rewards. Because of the
legal issues, developers have to be quite careful to ensure that the game will pass
the “preponderance of skill” or “pure skill” test, depending on where the game
company plans to operate and for which customers they wish to make the game
available.
Vulnerability to Attack—Many games are fun but not secure or even able to
be secured. Single-player games often have optimal solutions that can be exploited and many multi-player games are very vulnerable to bots (see Part III
on cheating). These design flaws may, in fact, be part of the appeal of the nonskill variants of the game, as players often enjoy the satisfaction of victory, even
if it is gained easily.
Single Player Game Design Issues—Very few online games for single players
are designed to be implemented on the server. All of the game logic is on the
player’s computer and the sole interactions with the server are to download
the game and upload a score. These games are virtually impossible to protect,
although they are commonly used for advergames and skill games.
328
Protecting Games: A Security Handbook for Game Developers and Publishers
Migration Issues—If a developer is working with an existing game, it is very
tempting to reuse the already built and tested code. Because security is much
less of a priority for a (non-skill) game, the existing game may have serious architectural and game design issues that could make it difficult to port securely.
Skill Dominance/Sufficient Audience—Some games have very high learning
curves and some players are substantially better than others. First person shooters often fit this profile, as do deep, strategic games like chess. These games
make poor skill games because many typical players will have no confidence
that they can win or improve enough that they can ever win. One reason that
poker is so successful is that pretty much everyone thinks that they are an above
average player.
Another issue for skill games is that players do not necessarily trust the game
service. Because money is on the line, players are likely to be concerned about insider cheating, shills (players paid by the game site to play the game), and other
problems.
M ISCELLANEOUS S ECURITY I SSUES
Contests, skill games, and gambling games are potential targets of all of the security
threats discussed elsewhere in this book. Players will cheat, hack, gold farm, abuse
tournaments, grief, and subvert their identities. In other words, some players will
do pretty much anything to win cash or prizes. There are several potential security
issues that are worth discussing further.
GAME SERVICE SCAMS
Online casinos and skill game sites can be intentionally criminal enterprises.
Because they accept player payments and are potentially rewarding players with
cash or prizes, there are many ways to defraud customers. Unfortunately, reputation is not very effective as a mechanism for preventing fraud because it is so easy
to launch a new site and so easy to market it. Lack of regulations and the ability to
shop for favorable jurisdictions makes it easier to set up and profit from a scam.
Game scams can be fairly subtle since players expect to lose a portion of the
time that they play. A slight change in the payout odds at a casino can turn into a
huge amount of profit. Having shills (players affiliated with the game site) periodically win or defeat players can sustain their trust in the game. One of the reasons
that we created our SecurePlay anti-cheating software was to help players be able to
independently check that games are fair18. Of course, the easiest scam is to simply
refuse to pay out winnings.
Chapter 31 Dancing with Gambling
329
The growing popularity of online games has also brought out some pyramid
schemes tied to games. No doubt other forms of fraud will emerge.
POKER, CONTEST,
AND
SKILL GAME BOTS
Bots are a hard problem for game developers to stop. At the end of the day, it is impossible to tell the difference between a human player using a mouse and keyboard
and an automated program driving a mouse and keyboard. Gold farmers use bots
against MMOs and are successful because it is economically worthwhile. Any time
there is money involved, there is real potential for someone to figure out how to automate game play undetectably. As these types of online services grow, it would not
be surprising to find “poker farmers” and “skill game farmers” using automated
tools to exploit these games. These automation tools don’t need to be perfect, only
sufficiently good that they can reliably make money without being easily detected
by the game sites.
There are really only two solutions—you can build games that are not “bot-able”
and design game play so that it has a substantial psychological element. This is
what has kept pokerbots at bay, so far19. The other option is to combine online with
face-to-face play. Face-to-face competition in a controlled environment will keep
bots out by definition. Public humiliation for failing in front of a large audience
may further deter otherwise anonymous botters.
LIVE PLAY
Video feeds of remote, live games have been part of the online gambling industry
for a number of years. Some players believe that these systems are more secure. But
it is well known that traditional, regulated casinos periodically have problems with
cheaters and an ordinary player with a webcam is highly unlikely to be able to
detect any suspicious activity. Wholesale fraud by game sites is also possible. After
all, the same technology that allows the virtual “first down line” to appear on your
television screen during a football game20 could be used to present whatever cards
or dice values you would like to a player.
L EGAL C ONSIDERATIONS
with J. Price
Even small changes or additions of new features to a game could unwittingly trigger a host of laws and regulations. With a single change, a game can go from not
being regulated at all to being subject to the same laws and regulations as the largest
330
Protecting Games: A Security Handbook for Game Developers and Publishers
casinos in the nation or being outright illegal. To complicate matters, laws change
and courts often interpret provisions differently depending upon the jurisdiction of
the court and specific application of the law.
As noted previously, there are three elements in games that make a game a
gambling game: (1) consideration to play (often money); (2) an element of chance;
and (3) a prize. There are limitations to this shorthand rule, however. This is an industry with a variety of interweaving laws and regulations. It is often difficult to
make a clear, legal distinction between various types of games. Definitional issues
arise, in large part, because the laws and regulations are often purposely vague (to
encompass present, future, perhaps currently unknown issues), and vary widely
from one jurisdiction to the next.
Not knowing whether your game incorporates gambling is not a legal defense
against charges of running an illegal casino or lottery. Just as with speed limits, law
enforcement will not care whether you were aware of the law when a potential
offense occurs.
Of course, one way to decrease the number of legal issues you have to handle is
to make an effort not to create problems and to avoid pitfalls. The easiest way to
keep your game out of the gambling category is to simply remove one of the three
elements—not just tweak an element so it is arguably not part of the game, but
completely remove it. For example, a game without any type of prize is not gambling, anywhere, anytime.
If you develop a game that includes elements of gambling, you must be aware
of criminal and civil laws and regulations that exist at both the federal and state
level. Worldwide, gambling is often slightly less regulated than in the US, where
there are very specific laws and regulations. There are also a variety of federal and
state laws and regulations that do not specifically relate to either gaming or gambling, but are highly relevant to game developers, such as laws regarding privacy,
consumer protection, fraud, money laundering, online content, as well as other
laws and regulations that might be triggered depending on the type of game, where
it is offered, and where it is played.
You also should consider that the federal (and state) government will not be
shy when it comes to prosecuting something it considers a crime, even if it seems
obvious to you that its reading of the law is incorrect. Whether they win or lose in
a lawsuit against you, it will be a distraction and may set your business off course.
It will also likely be a costly, time-consuming experience.
All of these different parts operate in a legal machine that includes something
referred to as “prosecutorial discretion.” Under U.S. law, government prosecuting
attorneys have broad authority to choose whether or not to bring charges, and
what charges to bring, in cases where the evidence would justify charges.
Chapter 31 Dancing with Gambling
331
“Prosecutorial discretion” is typically the answer to the question: “Well, if it’s illegal, why is so-and-so doing it?” The fact that someone else is “doing it” does not
mean that “it” is legal, or a prosecutor is not interested in the conduct; it simply
means the person has not been prosecuted for it—yet.
FEDERAL LAWS
AND
REGULATIONS
The most important law used by federal prosecutors for gambling is the Interstate
Wire Act of 1961, (often called the Wire Act)21. This law addresses those engaged in
the business of gambling and transmitting information relating to gambling by a
wire (or wireless) communication device. There are exceptions written into the
law, and not all courts agree on its breadth. The U.S. Fifth Circuit Court of Appeals,
for example, has ruled that the Wire Act applies only to sports betting and not other
types of online gambling22. In contrast, the law has been interpreted by some, including the U.S. Department of Justice, to mean that all online gambling is illegal.
Another important federal law, the Illegal Gambling Business Act of 1970, prohibits gambling businesses, in general23. This law is particularly interesting because
it is one of a few that intersect with state law. For a game business to be illegal under
this law, the federal government must first establish that it is a gambling operation
in violation of state or local law. This federal law exempts Las Vegas casinos, for example, where gambling businesses are legal under state law. But most online games
are not regionally offered or limited to one state. In fact, the very success of a game
can be the result of revenues in jurisdictions you never considered. A successful
game could also trigger this and similar laws if a state law is violated, even unwittingly.
Caution is warranted, especially if your game is of the type that might be considered gambling in some jurisdictions, and a legal game in others. If a problem
arises in one of the more conservative jurisdictions, you could have an additional
problem under federal law. A federal prosecutor can literally “make a federal case
out of it.”
Another federal law, referred to as the Travel Act, also may cause issues for unsuspecting game operators, and is another example of how an isolated act can turn
into a much larger issue. This law is aimed at prohibiting interstate travel or use of
an interstate facility in aid of an unlawful business enterprise such as illegal gambling. Similar to the Illegal Gambling Business Act, the Travel Act first requires a violation of another law to trigger the federal law. If the game is defined as illegal
gambling in a jurisdiction, or if there is some other legal issue, that initial violation—or attempt to violate the law—will lead to further issues if interstate facilities
were used to further the unlawful activity.
332
Protecting Games: A Security Handbook for Game Developers and Publishers
Similarly, the subject matter of a game can cause problems. For example, the
Professional and Amateur Sports Protection Act of 199224 makes it unlawful for any
government (including states and tribes) to authorize legal wagers that are based on
sporting events. Exceptions to this law exist for some states, such as Nevada, which
has its own specific laws concerning sports wagering.
STATE LAWS
AND
REGULATIONS
In addition to laws that “make a federal case out of it,” states can cause plenty of difficulties. Worse yet, any number of states can sue simultaneously, and force you to
defend yourself in multiple jurisdictions at once. Every state has laws to distinguish
between games and gambling, and otherwise address issues that arise with games
and gambling. Each also has laws in place to protect its citizens in a variety of ways
that do not directly relate to games, and may not have been drafted with games in
mind, such as laws requiring appropriate disclosures, tax laws, data security statutes,
and catch-all laws that are used to protect consumers in any number of circumstances.
Although each state regulates games in some way, two states stand out—
California and New York. Each has aggressive laws covering games and gambling.
New York provides a good example of a state that bars gambling in its constitution25,
and prosecutes cases vigorously. Under New York law26, “games of chance” are
separately addressed, including a specific exception for bingo for senior citizens27.
Similarly, California has laws regulating the difference between gambling and
gaming28 and very aggressive consumer protection laws.
When you consider a state’s tolerance for any type of game or related activity,
it is instructive to look first at the state’s statutes and regulations, and then at the
state’s court cases with a focus on:
Jurisdiction (whether the state laws apply to a particular game and entity or
person providing the game).
The elements that distinguish gaming from gambling (reviewed previously)
that are often interpreted differently by different states.
Even if two states have similar laws, they might apply their laws differently. This
happens because each state has a myriad of cases that have gone through the court
system that interpret important elements of games in the context of varying facts.
For example, at least one court in Washington state has found that consideration does not have to be defined as money. Consideration could be someone’s time
and effort to obtain prize slips, even though the game pieces were available without
Chapter 31 Dancing with Gambling
333
purchase and therefore might be gambling in Washington29. In contrast, another
court, in a different state (Michigan), found that any effort that is a mere inconvenience to the participant is insufficient to qualify as consideration and therefore the
same type of game was not determined to be gambling30.
To avoid any confusion about the legal status of different types of games, some
states simply prohibit all pay-for-play skill games that include prizes. Other states
use a sliding scale, with what is referred to as a “predominance test.” If the element
of skill in a game predominates over chance then the game is permitted. For some
games, such as chess, the distinction is clear; for other games, such as poker, the
answer is more ambiguous because poker includes both chance and skill elements.
Skill games are allowed in about 30 U.S. states if the games have a preponderance
of skill; in 10 states a skill game is legal only if it is a pure skill game; and in the remaining 10–12 states, skill games are illegal.
Unfortunately, there is no standard, simple process to determine which legislation or regulations are applicable to a given game within the US. You need to look
carefully at court precedent and applicable laws and regulations.
R EFERENCES
1. American Gaming Association (2007), “Gaming Revenue: Current-Year Data,”
http://www.americangaming.org/Industry/factsheets/statistics_detail.cfv?id=7
2. Direct Marketing Association (2008), “Sweepstakes Advertising: A Consumer’s Guide,”
http://www.dmachoice.org/Sweepstakes/
3. Wikipedia (2008), “SAFE Port Act,” http://en.wikipedia.org/wiki/SAFE_Port_Act
4. S. Davis (2008), “Notes on Skill Games and Contests from the Next Generation in Gambling
Conference,” http://playnoevil.com/serendipity/index.php?/archives/2150-Notes-on-Skill-GamesContests-from-the-Next-Generation-in-Gambling-Conference.html
5. B. Hansen (2007), “Israel Bonds with US Over Online Betting Ban,”
http://www.theregister.co.uk/2007/02/08/online_betting_israel/
6. Wikipedia (2008), “Duplicate Bridge,” http://en.wikipedia.org/wiki/Duplicate_bridge
7. A. Reuters (2007), “FBI Probes Second Life Gambling,”
http://secondlife.reuters.com/stories/2007/04/03/fbi-probes-second-life-gambling/
8. Linden Lab (2007), “Advertising Policy Changes,”
http://blog.secondlife.com/2007/04/05/advertising-policy-changes/
9. Linden Lab (2007), “Wagering in Second Life: New Policy,”
http://blog.secondlife.com/2007/07/25/wagering-in-second-life-new-policy/
10. Jun S.H. (2006), “Virtual World or Virtual Vegas?,” http://gamestudy.org/eblog/2006/05/03
/virtual-world-or-virtual-vegas/http://gamestudy.org/eblog/2006/05/03/virtual-world-or-virtual-vegas/
11. Virtual World News (2007), “UK Gambling Act: How to Protect Your Virtual World,”
http://www.virtualworldsnews.com/2007/07/follow-up-on-uk.html
334
Protecting Games: A Security Handbook for Game Developers and Publishers
12. Cho J. (2006), “Jungle Law and Taxes Apply in ‘R2’,”
http://search.hankooki.com/times/times_view.php?term=online+game++&path=hankooki3/times/lpage/
culture/200605/kt2006051418022511710.htm&media=kt
13. Bae J. (2008), “‘Habitual’ Online Item Buyers Face Sanctions,”
http://www.koreatimes.co.kr/www/news/nation/2008/06/113_26515.html
14. BBC (2007), “Man Guilty in Poker Skills Case,”
http://news.bbc.co.uk/1/hi/england/london/6267603.stm
15. Online Poker News (2007), “Danish Court Rules Poker Skill Game,”
http://www.onlinepoker-news.com/20070723/danish_court_rules_poker_skill_hjb.aspx
16. FUN Technologies (2007), “WorldWinner and PlayFirst Team Up to Create Diner Dash Online Cash
Competitions,” http://www.marketwire.com/press-release/Worldwinner-763678.html
17. P. Elliot (2008), “Kwari Shuts Down,” http://www.gamesindustry.biz/articles/kwari-shuts-down
18. IT GlobalSecure (2008), “SecurePlay,” http://www.secureplay.com/
19. J. Woo (2008), “Poker Bots: The Future of Online Poker is Doomed!,”
http://www.gambling911.com/poker/poker-bots-online-poker-doomed-081008.html
20. S. Brannan (2008), “How the First-Down Line Works,”
http://entertainment.howstuffworks.com/first-down-line.htm
21. 18 U.S.C. § 1084
22. United States v. McDonough, 835 F.2d 1103, 1105 n. 7 (5th Cir. 1988)
23. 18 U.S.C. § 1955
24. 18 U.S.C. § 1955; Pub. L. No. 102-559, 106 Stat. 4227-4229 (1992)
25. New York Constitution, Article 1, Section 9
26. New York Penal Law, Article 140, 225.00 (“Gambling Offenses”)
27. New York Penal Law, Section 213-23 “License Required; Exemption for Senior Citizen Games”
28. Gambling Control Act, California Code, Chapter 5, sections 19800–19958
29. Washington v. Safeway Stores, Inc., 450 P.2d 949 (Wash. 1969)
30. ACF Wrigley Stores, Inc. v. Olsen, 102 N.W.2d 545 (Mich. 1960)
32
Denial of Service, Disasters,
Reliability, Availability, and
Architecture
ou’ve got to keep things running. If there is no game service, there is no game
to play, no players, no money coming in, nothing to pirate, no one to cheat,
and no gold to farm. If one looks at IT protection purely from a budgetary
and business impact perspective, this chapter should have been first. I’ve had close
encounters with two IT disasters and one near-miss during my career (so far).
Y
W HAT C AN G O W RONG , W ILL G O W RONG
First, an “operational” service was “back-hoed” when my employer had a cable cut
that took down a critical secure mail server. The email service was actually a prototype, but it was being used by senior executives across the federal government, so
no matter what our contract said formally, we were operational. We had purchased
our data lines from two separate telecommunications companies and so we thought
we were safe against single points of failure. We were wrong; the connections were
redundant, not independent. The two telecommunications carriers had both
purchased space on a single physical cable on one segment of their connection to
our site.
Second, we had a contract to operate the main Internet access point for a large
government department. Our building’s roof was being repaired and we had a rain
storm. This would have only been a minor problem, except there was a huge
amount of rain and the massive roof was flat with a single six-inch hole in the center, down which the water spun through like a whirlpool. I have never been in a
building before where it was raining inside. Of course this hole was right on top of
our equipment room. Water streamed down over numerous, brand new, high-end
servers and networking equipment (the folks in the network operations center
didn’t see, hear, or notice a thing).
335
336
Protecting Games: A Security Handbook for Game Developers and Publishers
Finally, in another rain-soaked incident some number of years ago, the alreadysaturated District of Columbia had four inches of rain in 45 minutes and the water
rapidly backed up through a large portion of the city (and totally drained away 30
minutes later). Some areas of the city were six to eight feet deep in water. Our office
was lucky. There is nothing like walking through six inches of water to go turn off the
main power and hoping that nothing really bad is going to happen. Nothing did, or
else I wouldn’t be writing this, and we lost surprisingly little IT equipment.
All sorts of things can go wrong. Whatever you plan for, something else will
come along that you haven’t considered. Nature will try to get you, your service
providers will try to get you, your customers will try to get you, and hackers and
other intentional trouble makers will try to get you.
Planning for natural and manmade disasters is totally thankless before it occurs
because of the “unnecessary” cost. But, it is totally necessary (whether a disaster occurs or not), even if you don’t cover every contingency. There are books on contingency planning, but a lot of the needed planning is very procedural and specific to
your business.
However, it is increasingly easy for online services to scale rapidly and, at the
same time, reduce their vulnerability to failures. Virtualization technologies like
Xen1 and VMware2 and cloud computing as well as the commoditization of data
center services are good for business as well as good for security.
Designing your system architecture to be deployed rapidly on leased servers or
virtual services, such as Amazon’s EC23, saves money, improves scalability, and ensures
availability. (As a side note, the continuing rapid evolution of server technology
makes leasing hardware compelling for most applications as well as a great way to
control cash flow. This is a huge change in basic IT thinking from just a few years ago.)
D ENIAL
OF
S ERVICE
Denial of service attacks can be done just “because” or with serious intent: In 2004,
hackers threatened online bookmakers with a denial of service (DoS) attack during
the Grand National horse race and the Super Bowl (American) football events. These
blackmail attempts, assumed to be from Eastern European criminal groups, targeted
the huge portion of annual sports wagers that are placed for these competitions4.
Gambling sites are not the only target of denial of service attacks. In 2005,
Square Enix’s Final Fantasy XI MMO was also the victim of a distributed denial of
service attack5. Although some folks in the game industry may have been pleased,
most of Korea’s major RMT sites suffered simultaneous denial of service attacks in
early October 2007. The sites took themselves offline for several days to tighten up
their security6.
Chapter 32 Denial of Service, Disasters, Reliability, Availability, and Architecture
337
It is possible to attempt to blackmail an MMO with a DoS attack, but as the
services do have outages periodically, it is not clear if this would be as financially serious as it is for a sports wagering site. Any site that needs to be operational to earn
revenue is a potential target—any business from ad-driven sites to online casinos.
However, it is much more effective to target sites that have traffic that is highly concentrated at specific times, because the attack does not have to be sustained nearly
as long to have serious impact on the victim.
Sites that support rich, user-created content can be targeted by in-game denial
of service attacks. Linden Lab’s Second Life has suffered a number of such attacks
over the years7. However, user-created content could be used to cause denial of
service and other attacks on client computers, not just at the central service, which
could be potentially more damaging to the company (and its relationship with its
customers).
There are four types of denial of service attacks:
Hardware—Attacks that result in changes to the target servers’ or associated
network devices’ firmware so that they no longer operate.
Network—Attacks that overwhelm the network connection to the victim’s site
so that legitimate data can no longer reach the target system.
Platform—Attacks that target the standard operating system and shared applications, such as the network stack, on the victim system’s computers.
Application—Attacks that target the victim system’s specific application.
There are an increasing number of strategies that are available to help fight
denial of service attacks. Some of the simplest strategies are architecture changes. By
hosting an online service at one or more major data centers, it is much more difficult for hackers to simply overwhelm the bandwidth of the site or servers. If the target system is located at a small data center, the company should work with its
upstream network providers to ensure that traffic rate filtering is done to ensure
that the data that comes over a smaller connection has been purged of standard
DoS attack traffic (unusual concentrations of traffic from sites is often an indicator
that the computer is a “zombie” and member of a botnet used to attack networks
and distribute spam).
It is unfortunate that there is no accountability today for ISPs to guarantee that
the data they provide or pass through to their clients is clean. (Hackers will also
modify the source address of data from compromised computers to hide the source
of an attack. Although this is hard to detect by the victim computer, it is easy for the
host ISP to detect: Any data generated from a client computer should have an ISP
issued or authorized IP address.)
338
Protecting Games: A Security Handbook for Game Developers and Publishers
Defeating hardware and platform attacks is usually the responsibility of the
equipment provider. Basically, the providers need to deliver systems that only allow
authorized updates to the firmware to be installed and these updates can be installed
only by authorized individuals.
Firewalls, intrusion protection systems, and other security hardware and software tools can be used to attempt to keep denial of service attacks at bay. These
products are designed to protect “generic” online services. Online games can also
take advantage of their custom communications protocols to improve their security.
First, because most online game services include general website and other nongame related applications, these sets of servers and services should be separated
from game servers or shards (groups of game servers that work together). This will
allow commercial security tools to work more effectively and have to process less
data. Using a content-distribution system or web-caching service like Akamai can
also reduce the risk of DoS attacks on websites.
Because online game services often process very large amounts of network traffic, typical denial of service security solutions can be quite expensive (the cost for
these solutions is mainly driven by the need to process volumes of network packets
in real time). However, most game services have very structured network data and
this can be used to their advantage.
Game services can use proxy servers to ensure that only data that is formatted
in the structure required by the game’s protocols gets passed on to internal servers
for further processing. Because these proxies only have one purpose—to parse
game messages—they can be simple, fast, and replicated easily. They may even
translate a public game message format into an internal format to support logging
and other security functions. Commercial “deep packet filtering” solutions can implement similar features to a game protocol proxy, but they are burdened with
their need to handle a wide range of protocols. Another advantage of a good proxy
server system is that it can help prevent buffer-overflow and other malformed data
attacks such as that suffered by World of Warcraft in August of 20078.
A simple extension to a game protocol proxy is support for a “white-list” authorization service. Because virtually all games establish a session using some sort of login
service, the same login service can create a registry of IP addresses and random authentication token pairs that it provides to both the client and the game’s proxy servers:
// client creates a secure session with license or login server
ClientAuthorizationMessage = (SecureSessionID,AuthorizationToken);
// message sent to client
ClientRegistrationMessage = (IPAddress,SecureSessionID, AuthorizationToken);
// message sent to the game proxies to add to their white lists
Chapter 32 Denial of Service, Disasters, Reliability, Availability, and Architecture
339
When a proxy server receives a message from an alleged client, it can rapidly
validate the IP address with SecureSessionID and AuthorizationToken to determine whether it should even begin to parse the remainder of the message. This can
be used to speed the rejection of data from botnets or other malicious users.
A complete white-list proxy service will include the ability for the login service
to de-register a session and IP address. The proxy service should also be able to do
this itself if it suspects that a game client or game session has been compromised
(even core game servers should be able to “black-list” a game client based on anomalous data or activities).
S CALABILITY
AND
A VAILABILITY
It is always surprising how routinely online games underestimate traffic at start up.
The term “overwhelmed servers” is a routine part of the first hours, days, or weeks
of far too many game services. There are ways to plan for huge surges or spikes in
systems and bandwidth, but none of them is free and they take some serious effort
and planning. The game industry isn’t the only one that faces this challenge:
Sporting events such as the Olympics can create huge, short-term demands for
hardware and bandwidth. Large traffic spikes can also be addressed through the
game’s core architecture. EVE Online’s architecture allows multiple solar systems
to be housed on a single server so that sparsely populated systems can share resources9.
Although game servers may be costly to bring online, it is easier to support
surges of license registrations for new games. License registration does not require
massive amounts of data to be sent or complicated server support like an MMO.
I am not privy to inside data on these cases, but I suspect many games use the same
system architecture for license registration as they do for regular online game play:
direct socket connections to the license servers, and so on. This is really not necessary. Game registration systems could easily use a standard HTTP POST code with
a polite retry system to help handle new game traffic spikes. As a default, the server
would respond with the registration key for the application, but it could also send
a cached “wait 60 seconds” message to spread out requests. There are many tools to
support scaling up websites, ranging from application acceleration tools to virtual
servers (which provide the ability to add new servers on the fly) and cloud services
(pure “cloud” applications that are not tied to individual hardware platforms), as
mentioned previously. Of course, the actual license processing would be carried out
on a backend database and application server behind a web server in a typical threetier architecture allowing both front end and backend servers to be added easily.
340
Protecting Games: A Security Handbook for Game Developers and Publishers
Another option for handling high-volume license registrations is to take advantage of email. After all, if a player is online, she almost certainly has an email account.
The game could build a structured registration message for the game server that a
player could easily paste into an email, and then cut and paste the response to the
message when it is received from the game site. Just like web servers, standard email
systems are built to scale well; there is no need for game developers to create new
solutions when off-the-shelf answers are available.
S AMPLE G AME O PERATIONS A RCHITECTURE
Any online game service is going to have a number of fairly standard major systems:
The Game(s)—The actual game servers, their supporting proxy servers, databases, and other application servers.
The Website—The basic website and community services. The website may
also include the front-end support for ecommerce and payments.
Game Operations Center—The server, network, and application management
functions for the game service. The administration of the website may be included within the operations center or handled separately.
Corporate IT—The back office where the game company staff do their work.
Conceptually and practically, it is important to separate the day-to-day work of
the staff from the actual operations of the game service. There may also be a
separate duplicate or small version of the game service itself for testing and
back-up purposes.
Content Delivery—Many games use a mix of internal and outsourced contentdelivery systems to deliver game software and updates to players.
Figure 32.1 shows one such sample game operations architecture.
There are several components of an online game service that are particularly
important from a security perspective:
User Financial Database and Payment Processing Services—Controlling
access to any resource that can be monetized is critical. The most valuable target
in a game service is any database that contains user credit card or other financial information. These financial and payment systems should be physically
separated, if at all possible, and their electronic interfaces closely controlled. If
a game has valuable virtual assets, especially with a potential for gold farming,
the database that contains those assets should be handled with a level of care
similar to that used for a financial system. In addition, financial and payment
systems should be carefully controlled and all actions logged.
Chapter 32 Denial of Service, Disasters, Reliability, Availability, and Architecture
341
FIGURE 32.1 Sample game operations architecture
User Account System—Any information about players should be carefully
protected. Even though the US does not have strong privacy laws, other countries do and protections like the previously discussed California Data Disclosure
law can make any error costly (see Chapter 29). If these systems do not need to
be easily available in real time online, restrict access to them as much as possible.
If there is data that does not need to be retained or collected, don’t collect it.
Data that doesn’t exist can’t be compromised.
Logging Systems—Although not shown in Figure 32.1, it is critically important to make logging and analysis systems for all part of the online game service
as independent, thorough, and reliable as possible. There is no accountability
without history. Logging is not sufficient; it is crucial to build tools to facilitate
the analysis of all logs as well as include alerts, metrics, and statistical information for critical logged events.
Player Systems—It is actually possible to use the player’s systems as part of the
overall reliability, availability, and security of the overall game service. Although
player computers may be in “untrusted” and “untrustworthy” hands, they are
also very independent of the core game servers.
Traditional IT infrastructure and management systems are not often considered part of a game service. However, it is important to think of the whole company
as an integrated system—including external entities and interfaces like payment
342
Protecting Games: A Security Handbook for Game Developers and Publishers
processors and outsourced services. All of these components must work together to
provide a reliable service. Unplanned interactions between these components can
be the source of problems: In late 2007, CCP Games took EVE Online offline due to
a suspected security breach10. There was some discussion that the attack originated
via a key-logger on a regular office IT computer that had been hacked. True or not,
understanding the actual interaction between system components and the activities
of individual employees, partners, and players is critical for security success.
D ISASTERS
AND
D ISASTER R ECOVERY
There are many, many circumstances that can knock a system offline. Fires, rain,
floods, earthquakes, hardware failures, power outages, vendor problems… the list
goes on and on. As I noted at the beginning of this chapter, it is impossible to plan
for everything. In December of 2006, Valve Software’s Steam online service was
knocked offline by a major storm in the Pacific Northwest11. Sony Online
Entertainment, having experienced a number of wildfires in San Diego, was able to
keep the game running during a major fire in October 2007, but with minimal
technical and customer support12.
Perhaps the easiest way to avoid catastrophic failures is to build a truly distributed system. Multiple sites with independent service providers can handle disasters
more easily simply because all of the locations in a well-designed distributed system
are unlikely to be vulnerable to a single disaster. Because of their experience with
hurricanes, many organizations with headquarters in the Southeastern part of the
US have moved aggressively to be able to deal with a disaster that can knock out a
large region13.
More modest failures can still cause serious problems. Outages at individual
servers or databases can lose valuable data. A Singapore MapleStory server failed
and lost hours of play for several thousand players14. Many games include a substantial game client. This system could conceivably be used as part of a backup and
recovery strategy by storing critical game data on player computers. Note that it is
not necessary to store a specific player’s data on her own computer and the data obviously needs to be stored in a manner that the player cannot modify (or even read)
the encrypted, signed player data.
C ONTINGENCY P LANNING
Online games are first and foremost services: Their value and revenue comes from
being available to customers. Outages can lead to customer dissatisfaction and
abandonment. Design choices can make a game more or less vulnerable to disasters
Chapter 32 Denial of Service, Disasters, Reliability, Availability, and Architecture
343
and substantially affect the cost of ensuring service availability. Often online services
will provide “free” time to compensate for outages to protect their relationship
with their customers.
This “free” time is far from free for the game provider. Employee salaries were
still paid while the service was down and other expenses were incurred. The “free”
time itself costs additional potential revenue. This is not to say that companies
should not offer customers compensation, but avoiding the need to incur such
expenses should be part of the game service’s business plan.
Planning for contingencies must not be a paper exercise. It should not result in
PowerPoint presentations and unread binders sitting on shelves. Actively working
to avoid costly outages is usually a better business strategy than just recovering
from failures when they occur.
R EFERENCES
1. Xen (2008), “Xen,” http://www.xen.org/
2. VMware (2008),”VMware,” http://www.vmware.com/
3. Amazon (2008), “Amazon Elastic Compute Cloud (Amazon EC2),” http://aws.amazon.com/ec2/
4. Evening Times (2004), “Blackmail Threat to Net Bookies,”
http://playnoevil.com/serendipity/index.php?/archives/7-Blackmailers-Threaten-Denial-of-ServiceAttack-Against-Net-Bookmakers-February-2004.html (article no longer available from the Evening Times)
5. W. Knight (2005), “Attack on Game Raises Prospect of Online Extortion,”
http://www.newscientist.com/article.ns?id=dn7293
6. Chosun Ilbo (2007), “Hackers Threaten Cyber Money Sites,”
http://english.chosun.com/w21data/html/news/200710/200710100013.html
7. T. Walsh (2006), “Rogue Lily Disrupts ‘Second Life’ Service,”
http://www.secretlair.com/index.php?/clickableculture/entry/rogue_lily_disrupts_second_life_service/
8. A. Modine (2007), “World of Warcraft Exploit PKs Servers,”
http://www.theregister.co.uk/2007/08/27/wow_exploit_crashes_servers/
9. B. Drain (2008), “EVE Evolved: EVE Online’s Server Model,”
http://www.massively.com/2008/09/28/eve-evolved-eve-onlines-server-model/
10. N. Breckon (2007), “EVE Online Database Security Breach Leads to Downtime of Game, Website,”
http://www.shacknews.com/onearticle.x/49539
11. McWhertor (2006), “God Hates Steam, Too,”
http://kotaku.com/gaming/god/god-hates-steam-too-222329.php
12. Sony (2007), “SOE Support Services Suspended During Emergency,”
http://forums.station.sony.com/vg/posts/list.m?topic_id=21161
13. FDIC (2008), “Lessons Learned from Hurricane Katrina: Preparing Your Institution for a
Catastrophic Event,” http://www.fdic.gov/regulations/resources/lessons/index.html
14. A. Siew (2007), “Server Glitch Loses Gamers Points, Virtual Cash,”
http://www.sgforums.com/forums/1720/topics/294434
33
Scams and Law
Enforcement
“You can’t cheat an honest man; never give a sucker an even break,
or smarten up a chump.” —W.C. Fields1
veryone is looking for an edge, some sort of advantage to get ahead of everyone else. One of the things that breeds cynicism in security professionals is
the constant reminders of how reliably corruptible virtually everybody is.
Another group of avid students of human frailty are con artists.
E
In general, there are two types of scams that target online games. The most
common scams offer players an advantage in a game: some sort of cheat or aid that
makes the game easier for them than it is for everyone else. Sometimes the scammers offer a cheat tool that works but also has some “extra features,” such as a keylogger or some malicious software. Other cheat-aid scams are more brazen. They
offer a fake cheat; something that the scammers can show on YouTube or offer for
sale (or even for free) on a website.
The second type of scam is pretty new for online games. It is a Ponzi scheme or
pyramid scam that uses a game as the “front business” to conceal the fraud. In some
sense, this is flattering to the game industry: Games are widely seen as a “hot new
business” and con artists are using them to pull in unsuspecting individuals looking to cash in on the industry’s popularity.
Games and other online services are facing a range of criminal activities, including scams and fraud. It is important to understand how your game company should
work with law enforcement. Game companies may seek out the help of law enforcement for recourse after a crime, but game companies can also be contacted by law
enforcement to support an existing criminal investigation. Companies need to be
cautious because sometimes law enforcement officials make inappropriate requests
that may put a business in legal jeopardy as well as endangering the company itself.
344
Chapter 33 Scams and Law Enforcement
S CAMS
IN
345
G AMES
The competition between players that underlies most games makes finding “suckers”
for scams pretty easy. The same passion about a game that leads some people to
play 20 hours or more per week also brings out some people’s desperate need to get
ahead. The scammers are there to fulfill that need to win at any cost. Sometimes, the
tools are pretty innocuous. In 2006, a crooked inside developer turned a legitimate
poker tool that tracked the “rake” (the commission on each hand) collected by online poker sites into a piece of malware that also installed four tools that collected
username and password information from the poker players and sent it over the
Internet to the criminals2. In 2008, a company released a tool for EVE Online that
was supposed to automatically queue up skills for players so that they would not
have to log in at odd hours, which also happened to include a Trojan program that
stole passwords3.
What is interesting about both of these tools is that the game developers themselves could easily have provided these features in the basic game application: It
would be a simple courtesy for a poker site to provide tracking information about
its own fees. In fact, the reason players want tools like this is that they suspect that
the game site is cheating them on the rake. For EVE Online, there is no real reason
that the game itself should not allow players to queue up skills to be trained. (EVE
Online is unique in the MMO genre in that players earn skills based on elapsed, calendar time, not based on game play activities.) Today, players have to be online to
change from one skill to another—an inconvenience that doesn’t help game play
and that opened the door for this malicious tool.
Many games ban most or all third-party tools, but in some sense this is futile.
Because players control their own computers, they will always find a way to run independent tools (see the discussion of bots in Chapter 15). As noted in the earlier
discussion, it probably makes more sense to design the game so that such tools are
either unnecessary or can be used legally. If there are tools, it would be better for the
game and for players if they could buy the tools from the game company who can
certify their features, not to mention capture some revenue by running a tool store.
Fake hacks are particularly troubling for games. Scammers who create fake
hacks don’t need to create a real hack or tool for a game; they offer a way to get
more of whatever the game values (additional money, experience, items, and so on)
by providing some instructions that include giving the scammers the player’s username and password (and sometimes even credit card).
Someone, scammer or not, it doesn’t matter, submitted an alleged “hack”
against Sulake’s Habbo Hotel virtual world to my blog4. The hack demonstrated in
a YouTube video how to give a player tons of furniture and items. Actually, the
346
Protecting Games: A Security Handbook for Game Developers and Publishers
hacker used a memory editor to add items to the inventory in the player’s game
client application. This worked because the art assets for all of the items are included
in the game client on the player’s computer. Virtually all online games work in a
similar manner and are vulnerable to the same “attack.” To most players, the attack
looks valid since it is using the actual game client and art assets. However, these
changes are purely local to the player’s PC and do not actually alter the information
in the game’s database. The videos have since been removed, apparently at the request of the game’s publisher.
YouTube poses a particular risk for game companies. Whenever a game company
contacts me to consult on a game, the first place I look for attacks is on YouTube.
Often, I find some pretty entertaining exploits. However, there are fake hacks
mixed in with the real ones. The key clue to identifying the fake hacks is the request
to go visit the scammer’s website and enter your username and password, install
some software, or buy a tool. Game companies need to constantly keep up with
these videos and contact YouTube to take them down.
Third-party sites can also house scams. These sites are run by fans, and occasionally scammers, for games. In general, third-party sites are great for a game.
Player-run forums, blogs, social networks, and other communities are evidence of
a game’s popularity and are mostly beneficial. However, the low level of technical
skill of many of these fan sites makes them good places to launch an attack against
a game—either direct malicious code attacks or as a means to advertise “fake hacks”
and other malicious tools. Both of the malicious tools mentioned previously were
downloadable through otherwise legitimate game community sites or found on
YouTube.
Simply setting up a fraudulent fan or community site for a game is not usually
sufficient to cause real problems for the game company. Game community sites
take a lot of effort and are really a labor of love by the players who create them. IGE,
known for its involvement in the gold-farming and gold-selling businesses for
World of Warcraft, notoriously bought two very popular WOW community sites:
Allakhazam5 and WowHead.com6. Gold frauders and power-leveling firms (see
Chapter 22) can take their business a step further by using their interactions with
game players to scam them as well. The players who use gold farming and powerleveling services have little recourse, as they are already cheating at the game.
Game companies can do little to directly protect themselves from scammers
who use third-party sites to target their games. Even though the game company and
game are blameless, these scams can be costly from a customer service perspective
when players complain about looted accounts, viruses, and other security problems.
Chapter 33 Scams and Law Enforcement
347
One tactic that may make life difficult for scammers is to sponsor “official affiliate” community sites that have access to game art assets, animations, and affiliate revenues in return for following a code of conduct. The sites could perhaps even
allow the game company to scan the fan site for malicious code and downloads.
Another tactic that was mentioned previously is the notion of bundling a good
security tool suite with the game client.
G AME S CAMS
There are two main categories of game scams: (1) scam business models that target
affiliates and partners and (2) crooked game operations. Game business models
that are scams are a relatively new problem and I have yet to see a case go to trial,
although I have seen several suspicious games. The closest example was an FTC
move to shut down the online music service BurnLounge7.
Most of the scam business models are variations on pyramid schemes or Ponzi
schemes. These business models basically “rob Peter to pay Paul.” Later entrants’
fees fund the earlier participants, who are continually encouraged to recruit others.
The typical clue that a game business model is not legitimate is that it has a very
complicated payment structure8.
However, it could be quite interesting to see a game company legitimately use
a multi-level marketing business model; even affiliate revenue-sharing services are
not supported all that widely in the game industry. If used more widely, affiliates,
channels, and MLM programs could deter game scams by giving fan sites a legitimate revenue stream to reward their efforts.
Crooked game operations have mainly been a problem for online gambling, although the problem could also affect skill games, online lotteries, bingo, and contests with an entrance fee. These crooked games either rig the game so that no
legitimate player wins or they simply refuse to pay out and take the players’ money
and disappear. One of the consequences of attempts at prohibiting online gambling
is that even game companies that desire legitimacy have been unable to be licensed
in major jurisdictions. (This may be changing in many countries in Europe as of
2008.) Lacking strong government licensing regimes, industry groups will need to
self-regulate and self-certify. Skill games could be a prime target for scams, as there
is a general weakness and lack of uniformity of regulation for the industry (this is
also true for other “not gambling, but games for money” businesses).
348
Protecting Games: A Security Handbook for Game Developers and Publishers
L AW E NFORCEMENT
with J. Price
Game companies may need to contact law enforcement to handle a security breach
or in case of fraud; or they may be contacted by law enforcement in support of an
investigation. The topics of how to collect, retain, and preserve data that may be
needed for evidence are far beyond the scope of this book, but an online service’s
leadership, IT staff, engineering team, and legal counsel should consider these
issues carefully throughout their design and development process.
Most operators of online games and other online services will eventually
receive a request from law enforcement asking for information about an end user.
When a state or federal law enforcement officer presents a subpoena, court order,
or some other “authorization,” the game operator should not panic. These are typically routine events, and should be processed professionally and efficiently.
First, have a plan in advance. Designate someone in the company to receive and
interact with law enforcement. When the request comes in, be sure it is immediately forwarded to the designated person. That person must decide whether the
request is valid and is what it purports to be or escalate matters further to management or legal counsel. Ideally, legal counsel can assist to make the determination
whether the request is valid and provide guidelines that game company staff can use
for most situations.
After the game company has seen a number of requests, counsel should only be
necessary for the “odd-looking” ones because company personnel will develop a
feel for what are legitimate and illegitimate requests. It is important to note that if
the request is obviously illegitimate, the company may be held liable for turning
over the requested information. Generally speaking, however, there is immunity for
a good faith reliance on law enforcement. But the immunity does not extend to all
situations, and caution is warranted as seen by the recent lawsuits against U.S.
telecommunications firms for their involvement in the government’s “warrantless
wiretapping” program9.
The designated person may delegate tasks where appropriate. However, law
enforcement might require tight secrecy in some instances, which will limit who in
the company can know about or assist with supporting the activity. If there is any
doubt about who can know about the request, ask the law enforcement agent. In
most instances the request will include explicit instruction and leave little confusion, but do not hesitate to clarify any concerns with the agent.
After accepting the request and establishing that it is valid, the person designated to assist law enforcement should consult the relevant staff to determine
whether the information being requested (1) is available and (2) can be provided to
Chapter 33 Scams and Law Enforcement
349
law enforcement within the period of time allotted in the request. If the request is
legitimate and the information is available, you should fulfill law enforcement’s
expectation.
If the request appears legitimate and the information is available, but the company simply cannot meet the deadline, the company has recourse to protect itself.
You may consider making the law enforcement agent who served the request aware
of any difficulties that you have, as the agents are in a position to alter the request and
avoid a confrontation in court. Courts can receive challenges to law enforcement requests and alter the request to make it more manageable or provide other relief.
It is important to ask the law enforcement agent about reimbursement procedures for their agency. You may be able to have costs you incur when responding
to a law enforcement request reimbursed. The federal government and most states
permit a responding person or entity to be reimbursed for their time and associated
expenses such as overnight mailings. The reimbursement might not cover all costs,
but it can help, especially if you receive numerous requests.
Another good practice is to keep the law enforcement request and any related
material in a safe, secure location (unless law enforcement forbids the record retention for security reasons). Keep these records after you have complied with the request. If any issue arises later, you will be able to refer back to the records.
F ACILITIES R EQUIREMENTS : P OTENTIAL U NEXPECTED L AWS
AND
R EGULATIONS
with J. Price
Game services are not just providing games. They provide a range of network and
communications services that may impose requirements to support law enforcement.
Depending upon the game’s infrastructure, game designers may need to comply
with various laws.
For example, if a game operator provides voice service, it may have legal and
regulatory obligations under the Federal Communications Commission’s (FCC)
Communications Act. But its obligations will depend upon how the service is
provided and whether a different service provider is responsible for legal and regulatory compliance.
If the operator provides its own network facilities or provides broadband
Internet access, the Communications Assistance for Law Enforcement Act (CALEA)
should be reviewed. CALEA requires that the operator include specific security features within the network. It also requires the service provider to file “System
Security and Integrity Plans” with the FCC and adhere to those plans within the
company.
350
Protecting Games: A Security Handbook for Game Developers and Publishers
A number of other regulations might also apply, including taxes and tariffs
and “Universal Service” obligations, just to name a few. It is recommended that you
take a careful look at the legal obligations that might come with any expansion of
services, or before you implement a unique business strategy that may impose regulatory requirements.
Also, be very aware of the obligations that come along with services being provided by third parties. A contract with another company can leave you with unexpected legal obligations. You might assume that the third-party service provider is
responsible for compliance with the assorted regulatory obligations that are associated with the service and, therefore, you do not have related legal exposure. Most
service providers, however, go to great lengths to avoid regulatory obligations, and
the details of the service agreement contract might shift the burden to you.
You do not have to accept the “standard” contract that another party offers.
Negotiate. One place in the contract to study carefully is the “indemnification” section, which explains how and when you must protect someone other than yourself.
Some third-party contractors try to avoid any responsibility and, when an issue
arises, leave the obligation to you. It is usually reasonable to indemnify against issues
you may cause the service provider, but they should stand by their product and handle expected as well as unexpected issues and expenses related to providing the service. Also, as always, be careful who is responsible for costs and taxes related to the
service. Be sure these terms are defined broadly and do not come back to haunt you.
R EFERENCES
1. W.C. Fields (1939), “You Can’t Cheat an Honest Man,” http://www.imdb.com/title/tt0032152/quotes
2. F-Secure (2006), “How’s Your Poker Face?,”
http://www.f-secure.com/weblog/archives/archive-052006.html#00000878
3. J. Egan (2008), “EVE Online Trojan Warning,”
http://www.massively.com/2008/09/27/eve-online-trojan-warning/
4. S. Davis (2007), “Demonstrating Real Game Hacks vs. Fake Game Hacks: Fake Cheats Attack Sulake’s
Habbo Hotel,” http://playnoevil.com/serendipity/index.php?/archives/1243-Demonstrating-Real-GameHacks-vs.-Fake-Game-Hacks-Fake-Cheats-Attack-Sulakes-Habbo-Hotel.html
5. L. Smith (2006), “Gold Farmers Buy Allakhazam,” http://www.1up.com/do/newsStory?cId=3150282
6. Emma_UK (2007), “WOW Fansite Sells for Reported $1 Million,”
http://www.gamespot.com/news/show_blog_entry.php?topic_id=25727087
7. G. Gross (2007), “FTC Asks Court to Shut Down Digital Music ‘Scheme’,”
http://www.pcworld.com/article/132857/ftc_asks_court_to_shut_down_digital_music_scheme.html
8. S. Davis (2007), “Multilevel Marketing for Games? And a Bit of Info on Pyramid Schemes,”
http://playnoevil.com/serendipity/index.php?/archives/1310-Multilevel-Marketing-for-Games-And-aBit-of-Info-on-Pyramid-Schemes.html
9. J. Leydon (2007), “AT&T Sued Over NSA Warrantless Wiretapping,”
http://www.theregister.co.uk/2006/02/01/atandt_wiretap_assistance_suit/
34
Operations, Incidents, and
Incident Response
perations is where “the rubber hits the road.” It is also where security pays
off or fails. Security becomes real when technology is combined with business operations to actually do something. If users and operators circumvent security because it is too complicated or too expensive or too time consuming,
it is a failure of the security team, not the users. It is appalling to read professionals
in the security industry talking about PEBKAC— the problem exists between keyboard and chair—the user, in other words1. Security is, at its core, as much about
human behavior as it is about technology.
O
There are some in the security industry who’ve taken the adage “the best defense is a good offense” to heart. Instead of being content with protecting their
games or other online services from the “bad guys,” they’ve decided to turn around
and wage war on their foes. Some of these techniques are very self-contained, but
others are more aggressive and expose their users to legal and business risks.
It is almost inevitable that security systems will fail. Good security systems are
designed to fail gracefully and recover quickly. Unfortunately, many developers
neglect to plan for failure. Some of the worst security incidents are the result of failure to consider the possibility of the system’s failure. Such systems tend to collapse
catastrophically and sometimes can never recover. One of the worst characteristics
of many public key cryptography systems is that their compromise recovery systems (compromised key lists and certificate revocation lists) are terribly awkward
and inefficient.
Games are a particularly public business. When things go wrong, they are
highly visible and widely commented on. Part of protecting the integrity of the
game and game company is planning for public relations problems, especially when
responding to security incidents. Although almost everyone would prefer that security incidents don’t happen, effective preparation and a well-handled response can
sometimes turn a security incident into a marketing and branding benefit.
351
352
Protecting Games: A Security Handbook for Game Developers and Publishers
S ECURE O PERATIONS
There is a lot more to security than just good technology. One common delusion is
that security systems need to be invisible to users. In fact, the most familiar security
system of all, standard keys for cars and homes, are highly visible and somewhat inconvenient. From an operational perspective, they work pretty well. People lock
doors (most of the time) and crooks need to find another way in. It is also fairly obvious that people don’t lose keys too often, but they can “recover” from the loss or
compromise of a door or car key pretty quickly.
Games and other online services are defined by their interfaces and procedures.
It is unfortunate, but good human-machine interface (HMI) design does not seem
to be part of the security discipline. This is regrettable, as psychology and ergonomics probably have a huge impact on the actual secure operation of systems. There
are two equally important interfaces that need to be considered to operate a game
securely: that of the game company’s operational staff (live team, system administrators, customer support staff, security staff, and so on) and, of course, the players.
One of the benefits of using a physical security token is that people are used to
protecting hardware keys. Blizzard’s authentication token will provide most of its security benefits just because it is a physical key—the details of its cryptography and any
anti-tamper or other design features probably hardly matter. Similarly, because people protect their cell phones as valued items, the Asian games that use a cell phone
challenge-response system are likely to be quite effective and secure (see Chapter 29).
Successful, secure operations are usually invisible. Often, so are unsuccessful
ones. One of the rare instances of a game having problems with its internal security
operations has been a series of account thefts at Xbox Live. Hackers have been able
to use “social engineering” to access other player accounts. First, there is a basic
weakness in the Xbox Live system—player’s publicly known Gamertags are also
their account names. This aids attacks by making it easier to hack accounts directly
(by guessing passwords and so on) and makes it much easier to convince customer
support to disclose or reset a player’s password.
…(W)hen I first heard about the “Xbox Live network hacked” story, I checked
with the people on our end, and then posted about it. As originally posted,
Xbox Live has not been hacked. That is still true. A security researcher, Kevin
Finisterre, discovered not a hack, but the fact that some accounts may have been
compromised as a result of “social engineering,” also known as pre-texting,
through our support center. Kevin gave me a call directly and once I realized
what he was talking about (he sent me some painful-to-listen-to audio files),
I confirmed that the team is fully aware of this issue. They are examining the
Chapter 34 Operations, Incidents, and Incident Response
353
policies, and have already begun re-training the support staff and partners to
help make sure we reduce this type of social engineering attack.
—Major Nelson (Larry Hryb, Xbox Live Director of Programming)2
From an operational security perspective, the statement “Xbox Live has not
been hacked. That is still true.” may be true, but it is also is fairly meaningless. It is
clear that the security of the system was compromised whether through technical
measures or procedural gaffes. Even worse, it appears that the problem was not
resolved. Although the first incident was made public in March 2007, in September
2008 these incidents seem to be continuing—in the latest case, a senior employee of
Bungie from the Halo 3 team’s Xbox Live account was among those compromised3.
What is frustrating is that the system’s security could probably be improved
fairly easily (although there certainly may be internal constraints on the system
that I am unaware of):
Xbox Live accounts are, at least partially, tied to a specific console. Microsoft
could use that console’s ID number to authenticate the user by having the user
tell the customer service rep the number.
Microsoft could also use any credit card information associated with the account
owner to authenticate users. This could be done through the console so that the
customer service rep is not told the card number. Depending on the account
details, authenticating another credit card to confirm the player’s address could
work as well.
Microsoft could send an email to another email account owned by the user that
had been established previously as the “emergency notification account” (or a
phone number or an SMS message or even regular mail).
Microsoft could use the official Xbox console to send a challenge message to a
user (similar to the phone systems used by Korean game companies discussed
previously).
Of course, the best solution would be to break the link between the Gamertag
and the user ID. The fact that everyone knows your user ID on Xbox Live
makes the attack much easier.
As to the customer service system, it really shouldn’t “unlock” the account,
even for the customer service rep, until the user has passed an official, authenticating challenge.
The Xbox Live scenario is only an example. The essential key is to design operational procedures and user interfaces, not just technology and systems, to help
players and company staff operate in a secure manner. There is no security without
people.
354
Protecting Games: A Security Handbook for Game Developers and Publishers
A CTIVE M EASURES
Some companies have gone beyond simply defending themselves; they are attacking their foes. Although “information warfare” may sound exciting and tempting,
anyone who is not in government is likely putting themselves and their business in
legal peril. Any time a game or other application has an effect beyond the application itself, there are opportunities for trouble. The Starforce DRM tool was controversial because it affected the use of DVD drives for other applications than just the
game it was intended to protect (see Chapter 5). The Sony BMG Rootkit could be
used for other purposes besides defending a specific song from copying and had the
potential to open the computer up to external attack.
Online applications are even more risky. Customers have legitimate concerns
about their personal privacy and integrity of their computers. Blizzard’s Warden
anti-cheating tool, and some other similar products, captures information about
the player’s computer’s processes and even some screen data from the player’s
computer. From a user perspective, there is little difference between a key-logger
installed by a hacker and one provided as part of the latest game. The potential for
serious abuse by these applications is a real concern from a public relations and
marketing perspective, if nothing else.
The Motion Picture Association of America (MPAA) and Recording Industry
Association of America (RIAA) have adopted active measures against media piracy
(see Chapter 9). It is unclear whether these activities have been effective in fighting
piracy. What is clear is that some of these techniques have backfired. MediaDefender
launched a denial of service attack against a legitimate firm that uses peer-to-peer
distribution services. This action resulted in an FBI investigation as a potential
violation of computer security laws4. More broadly, the RIAA and MPAA have
been getting less sympathy in court and no sympathy from the general public for
their strong-arm tactics.
The potential for civil and criminal actions (not to mention terrible public
relations) from active security measures should make them a tactic of last resort, if
active measures are even to be considered at all. If you would ever be concerned
that there was a newspaper story describing your active measures, you probably
should choose an alternative strategy.
I NCIDENTS
AND
I NCIDENT R ESPONSE
Earthquakes, fires, theft, data loss, hackers, or other disasters or security incidents
happen regularly to companies everywhere. It is impossible to plan for every
variation, but it is more than prudent to have an overall plan for the major types
Chapter 34 Operations, Incidents, and Incident Response
355
of incidents that you may face. Level Up, an MMO operator in the Philippines,
uncovered currency duplication cheating in the game RF Online that caused massive, 500 percent inflation in the game’s economy5. The company had hoped to
identify the cheaters and remove them and their ill-gotten gains from the game.
However, they found that the entire game economy had been corrupted because of
the massive influx of illegally created game currency. Instead, the Level Up team
rolled back the server and gave bonuses to all players to compensate for their losses
(and worked with the game’s developer to fix the game’s software).
The key is to have well-established procedures. After running EVE Online for
several years, CCP Games had a mature process for dealing with potential security
incidents. In October 2007, employees identified an anomaly in the game’s database that indicated a potential exploit6. Standard procedures were followed and an
assessment was made by an internal team. They decided to take the game offline
within two hours of initially identifying the exploit because of the potential risk.
CCP had expected to be offline for two hours, but it took ten hours to fully reconstitute the game’s security and safely restore service. Because CCP Games had an
orderly process for handling general security incidents, they were able to rapidly
contain the problem, repair the service, and keep their customers informed.
The following activities should be included in an incident response and recovery process:
Alert—Online services need to include sufficient internal telemetry and monitoring systems so that it is possible to know if something is going awry. In addition to technical systems, skilled operators are essential. A good operator
should be able to “sense” an anomaly and be able to clearly communicate the
problem to management.
Escalate and Act—Once a human or technical system has identified that an incident has occurred or is in process, management needs to be notified so that
they can bring together the resources necessary to respond. This should include
appropriate technical staff, but also business, public relations, customer support, marketing, legal, operations, and any other group that may be necessary
to actually handle the incident, work with customers, and address impacts to
the business.
Identify and Assess—The designated team needs to determine the actual nature of the underlying problem that triggered the incident as well as assess the
severity and scope of the problem. The team needs to develop strategies to
address the problem itself as well as limit the impact of the incident on the
company’s operations. In addition, the team will form a communications strategy to protect the company’s relationship with its customers and handle any
media inquiries.
356
Protecting Games: A Security Handbook for Game Developers and Publishers
Contain—Once the underlying problem has been identified, the team will implement a containment strategy. This can include doing nothing and accepting
the (limited) impact of the compromise; disabling certain functions, features,
or servers; restricting access by certain users; or shutting down all or a portion
of a service.
Communicate—Some level of customer communications is critical to managing an incident. There needs to be a solid communication strategy operating in
parallel with all of the other incident response activities. This may extend beyond the actual problem to deal with rumors and speculation by customers and
the media. The goal is to keep customers and the public informed and confident in the company. One important communications element is not to lie.
Most likely, any lie will be found out and it will undermine all future communications by the company during this incident or any that occur in the future.
Repair and Recover—Once the problem has been contained, the incident response team should fully analyze the situation and develop an actual repair or
work-around. There is a balance between rapidly reestablishing service and repairing the problem. This may not be a single-step process. It is also possible
that service may not be fully restored to the state prior to the incident if the
problem is severe enough.
Review and Revise—After the system has been fully restored, the company
should review its incident response procedures as well as its overall operations
to determine whether there are related weaknesses that could lead to additional
incidents. Operations, technical systems, and the incident response process
should be updated based on this close-out review. The company may also issue
compensation, incentives, or freebies to players in accordance with the impact
of the incident.
There is something to the notion that one’s true character is revealed through
adversity. How we respond to security incidents and other crises can have an important effect on how we are perceived by our customers, partners, and employees.
Although it is best to be able to avoid such incidents, a modest level of planning can
be the difference between humiliation and increased respect.
P UBLIC R ELATIONS
AND THE
P ERCEPTION
OF
S ECURITY
Perfect security is not possible. One of the keys to effective security is trust. It is important that customers, partners, and employees believe that your system is secure,
that you care about hackers, that there is no cheating or abuse, or, if there is, you are
actively doing something about it. Because of this, good public relations is important to your security.
Chapter 34 Operations, Incidents, and Incident Response
357
Balancing public relations and security is not necessarily easy or obvious. For a
long time, Blizzard provided regular reports on the number of players that had been
banned for cheating or gold farming. This was done to give players confidence that
the company cared about the problem and was doing something about it. Square
Enix provides regular, monthly reports on the state of security in the game7 and
other companies make periodic announcements about exploiters caught, gold
seized, and other security news8. Interestingly, however, Blizzard has stopped providing nearly as many announcements about gold farming due, in part I believe, to
a concern that the announcements were acting as an advertisement for the potential lucrative opportunity from gold farming instead of working as a deterrent9.
The worst thing for a game company, or any other business for that matter, is
for security to overshadow the business. Electronic Arts launched the game Spore to
much fanfare. However, the game’s digital rights management system became almost more of a story in the media than the game itself10. Although the game appears to be a substantial hit, the large number of negative stories about its security
system probably cost the game many sales. One has to wonder if there were more
sales lost due to bad public relations from the security tool than sales added by the
anti-piracy product.
A good PR campaign can actually solve some security problems. CCP Games
faced a huge trust issue in the wake of a scandal where company employees were
cheating in the game for their teammates’ benefit11. The company’s initial response
created a serious perception problem in the player community. When CCP realized
that players’ trust in the game was being undermined, they took action. They created a Director of Internal Affairs12, but, more significantly, began a move towards
creating a process for incorporating players into the process of running the game13.
The Council of Stellar Management has become a story in and of itself, including
getting positive coverage for EVE Online in The New York Times14 and elsewhere.
Completely false stories can also be damaging. ArenaNet was falsely charged, by
a disgruntled former employee, with aiding gold farmers and other abuses15. It took
a year for the miscreant to confess, but ArenaNet still had to deal with the incident.
The challenge for any consumer business is to avoid even the appearance of impropriety and be as transparent as possible to protect your players’ trust and your company’s reputation.
From a security perspective, public relations is important for maintaining the
trust and reputation of the game or online service. It is the very last part of the mesh
of technical measures, operational procedures, and good customer care. Security
and public communications is a balancing act. It is important to instill trust in current and potential customers, but it is foolish to unnecessarily provoke hackers and
criminals.
358
Protecting Games: A Security Handbook for Game Developers and Publishers
R EFERENCES
1. E. Bangeman (2007), “Study: PEBKAC Still a Serious Problem When it Comes to PC Security,”
http://arstechnica.com/news.ars/post/20071001-study-pebkac-still-a-serious-problem-when-it-comes-topc-security.html
2. M. Nelson (2007), “Xbox Live Security Update,”
http://majornelson.com/archive/2007/03/23/xbox-live-security-update.aspx
3. P. Klepek (2008), “Reports of Hacked Xbox Live Accounts Stir Concerns Over Gamers’ Security,”
http://www.mtv.com/news/articles/1593637/20080827/id_0.jhtml
4. D. Kravetz (2008), “MediaDefender Defends Revision3 SYN Attack,”
http://blog.wired.com/27bstroke6/2008/05/mediadefender-d.html?cid=117123750
5. GM T (2008), “RF Online Philippines Rollback,” http://gmtristan.com/rf-online-philippines-rollback/
6. CCP Games (2007), “EVE Online Service Restored after Unexpected Downtime,”
http://www.eve-online.com/news/newsOfEve.asp?newsID=464
7. Square Enix (2008), “Accounts Banned (Mar. 25),”
http://www.playonline.com/ff11us/polnews/news12898.shtml
8. J. Wood (2006), “Cheaters Never Prosper!,”
http://www.mmorpg.com/gamelist.cfm?loadnews=4798&fp=1280%2C800%2C2041228203%2C2006031
4180812&bhcp=1
9. S. Davis (2007), “World of Warcraft Bans 100,000 Accounts in March, And Doesn’t Tell Me!,”
http://www.playnoevil.com/serendipity/index.php?/archives/1237-World-of-Warcraft-bans-100,000accounts-in-March-And-doesnt-tell-me!.html
10. A. Greenberg, M. Irwin (2008), “Spore’s Piracy Problem,”
http://www.forbes.com/2008/09/12/spore-drm-piracy-tech-security-cx_ag_mji_0912spore.html
11. J. Blancato (2007), “Jumpgate: EVE’s Devs and the Friends They Keep,”
http://www.escapistmagazine.com/articles/view/editorials/op-ed/847-Jumpgate-EVE-s-Devs-and-theFriends-They-Keep
12. CCP Games (2007), “CCP’s Director of Internal Affairs: An Introduction,”
http://myeve.eve-online.com/devblog.asp?a=blog&bid=429
13. S. Schiesel (2008), “In a Virtual Universe, the Politics Turn Real,”
http://www.nytimes.com/2007/06/07/arts/07eve.html?_r=2&adxnnl=1&oref=slogin&adxnnlx=11812321
01-fdpr4iZw9pveXa3MfyOw5A&oref=slogin
14. S. Schiesel (2008), “Face to Face: A Council of Online Gamers,”
http://www.nytimes.com/2008/06/28/arts/television/28eve.html
15. S. Schuster (2008) “Disgruntled ArenaNet Employee Blogger Finally Admits it Was a Hoax,”
http://www.massively.com/2008/09/12/disgruntled-arenanet-employee-blogger-finally-admits-it-was-a/
35
Terrorists
t was inevitable. Take terrorism, the bête noire of early 21st century Western society, and virtual worlds, where science fiction and reality are allegedly colliding,
and put them together for a buzzword or a headline. When I first saw stories
about “virtual worlds” and “terrorists,” I laughed1. The idea has somehow gained
traction, however, most recently with a Pentagon analyst proposing that terrorists
could use World of Warcraft to plot attacks on the US2. I realized we have entered
the Theater of the Absurd.
I
V IRTUAL T ERRORISM
Could terrorists use virtual worlds to hatch their nefarious plots? Of course. They
could also meet in Starbucks, talk on the phone, use Skype or other VoIP technologies, or any one of the vast number of communications services that help and
bedevil us all today.
Would they? Who knows. Comparatively speaking, there doesn’t seem to be
much advantage in doing so. Because most virtual worlds require some sort of payment and registration, they seem less appealing than the many social networks,
blogs, IRC channels, or simple web forums that are available for free with the only
registration being some sort of email address, if that.
There have been four main “attack vectors” associated with terrorists and virtual
worlds:
Propaganda—Using virtual worlds to disseminate propaganda. It certainly
would be possible for a terrorist to do something in many virtual worlds to
press their agenda. However, the audience for virtual worlds is quite small. It
would seem much easier to create a YouTube video or story that would be
more likely to catch the public’s attention. One of the arguments within the
online game development community is about the use of downloadable clients
versus “no-download” tools like Flash. In general, the easier it is for an audience to see your story, the better, and requiring downloads definitely reduces
your potential audience.
359
360
Protecting Games: A Security Handbook for Game Developers and Publishers
Training—3D environments are used by many organizations for training purposes, including the military. Some have argued that open virtual worlds could
be used by terrorists to prepare an attack. The low fidelity of most commercial,
for-fun, virtual worlds tends to make them not very suitable for this purpose.
Also, because most of these environments are public, terrorist plotters could
face their plans being uncovered by wandering players or a nosy system administrator. Standalone first person shooters could potentially be more useful.
They support private servers, are optimized for combat simulation, and have a
wide range of map editors and tools available for free or low cost that can accurately duplicate most potential “targets.” Ironically, the Chinese Military is
apparently using one such game, Counter Strike, for training3. If one worries
about such matters, the simulation tools are not really the problem. Detailed
maps, floor plans, and other such information are much more dangerous and
widely available online.
Attacking a Virtual World—Why? It is unclear why anyone would consider a
virtual world a particularly interesting target. Today’s largest online game,
World of Warcraft, does have more than 10 million subscribers; however, these
people are spread over many servers in many countries. Any “attack” would
have limited impact, probably even to Blizzard. By comparison, the NASDAQ
stock exchange handles 2 billion messages per day4 and average daily dollar
volume traded was $85 billion5… a much more significant target.
Attacking the Real World via a Virtual World—The wildest proposed scenario is that cyberterrorists could use an attack on a virtual world to somehow
attack the real world. At this point in time, there is nothing to attack. Perhaps
a hacker could take down the server that the game is operating on, but that is
the end of it. Increasingly, utilities, banks, and other institutions are linking
their actual business operations with online services. If you can order phone
service online, there is then some sort of actual connection between the frontend website and the actual control system for the telecommunications network.
This connection is a real target. Whether it is accessed through a simple web
page, or an immersive, 3D environment, live business applications are the real
objective for any attacker.
O NLINE T OOLS
FOR THE
M ODERN T ERRORIST
The other proposed opportunities for terrorists come from using virtual worlds or
online games as means to support their operations. Like the rest of us, terrorists
need to plan and fund their activities:
Chapter 35 Terrorists
361
Communication—It is certainly possible to use online games as a communications service. All support text and some are now supporting voice communications. There are a multitude of other communications services available,
however. The larger concern is that government may require monitoring (or at
least the capabilities for monitoring) of all online communication services in an
attempt to be able to find terrorists. Voice services would probably be a bit
more effective for terrorists, because they are more difficult to monitor and it’s
harder to extract useful information from them. Of course wise terrorists, just
like the military, know that the best way to avoid interception is to avoid communicating.
Money Laundering—Moving money around and turning illicit funds into real
dollars are difficult challenges. The fact that some online games and virtual
worlds have convertible currencies makes them candidates for money laundering, as discussed in Chapter 28. The significance of online games is a bit overstated in this area, and I am afraid I am a bit at fault, as I was quoted on the
subject in one of the early articles on terrorism and virtual worlds. The most
likely candidates for online money laundering are peer-to-peer financial
services, such as micro-loans, peer-to-peer gambling, skill games, online sports
wagering, and gift cards. Prohibition in the US in the 1920s helped give rise to
organized crime; it appears that one of the unintended side effects of the
UIGEA law that restricts online gambling is the rise of anonymous covert
payment systems, which may be used for terrorism as well as other forms of
cybercrime.
Game Crime (Funding)—Gold farming is estimated to be a $1 billion per year
industry. It doesn’t take a huge amount of effort to do profitably and the risks
of any sort of meaningful investigation or prosecution are virtually nil. The
work is naturally fairly anonymous and its practitioners sometimes need links
to ID thieves for stolen credit cards and identities. Fake hacks and other gamerelated scams could also be lucrative and have low legal risk. As such, game
crime makes for a natural funding source for terrorists (and other criminals, of
course).
Criminal Game—There is no reason that a criminal or terrorist group could not
set up and operate its own online game. The costs are modest and the project
could generate reasonable potential revenues. In addition, a criminal game
operation would be very useful for collecting identity information and installing
malware that could be used for other types of criminal activities.
Terrorists are no longer the bomb-throwing anarchists of the late 19th century.
However, they are not really any more advanced technologically than the rest of us.
362
Protecting Games: A Security Handbook for Game Developers and Publishers
It is somewhat remarkable that we consider the ability of terrorists to set off bombs
at the same time in multiple locations a sign of an amazing malevolent intelligence
when many of us routinely set up teleconferences and meetings with our cell
phones and PDAs with people from all over the world. We are terrified that terrorists use websites, social networks, online chat, and VoIP, yet tens of millions of us
do the same every day. There is nothing amazing about the technologies that terrorists have used or notable about how they have used technology.
If anything, the more serious potential problem will come from actions by
countries or organized criminals. Terrorism is essentially theater. Its goal is to provoke a dramatic overreaction leading to political or economic chaos. A criminal or
state actor is more willing to invest in a financial or strategic payoff.
In early 2008, hackers allegedly caused a number of serious power outages in
order to extort money from utilities6. This rather alarming story went almost unnoticed while wild speculation that terrorists might use World of Warcraft for planning purposes received wide publicity.
We do believe what we see and read. I’ve included hundreds of footnotes in this
book to lend credence to my argument that game security is an important issue
(how many have you checked, by the way?). Virtual worlds and online games are
fantasies. They are one of the few places where we know that what we are seeing is
not real. As such, we do not take them seriously. This would seem to make them
particularly uninteresting for terrorists, but quite interesting for criminals.
Attacks on Wikipedia7 and propagating a story through numerous online
sources can build a powerful, virtual truth for lies. A six-year old story about the
2002 United Airlines bankruptcy filing was accidentally republished in 2008 and the
company’s stock plummeted 75 percent in less than a day8. The hoary story of the
tribesmen who refused to be photographed because they are afraid that the image
will steal their soul has a grain of truth. If we are shown enough images and told
enough stories about someone, that becomes the truth; real-world reality does not
matter.
The biggest danger for online games and virtual worlds and terrorists does not
come from the terrorists, but from governments’ fear of terrorists. The collapse of
a virtual world will anger its customers and annoy its investors. It is not a national
security threat. The democratization of information is a huge benefit for society as
a whole, but terrorists and criminals will have access to this data as well. The risks
for online games come from regulation and law enforcement requirements including extensive monitoring of individual communications. It behooves game companies to preempt and avoid these threats.
Chapter 35 Terrorists
363
R EFERENCES
1. The Economist (2007), “Jihad on the Internet,”
http://www.economist.com/world/displaystory.cfm?story_id=9472498
2. N. Shachtman (2008), “Pentagon Researcher Conjures Warcraft Terror Plot,”
http://blog.wired.com/defense/2008/09/world-of-warcra.html
3. B. Crecente (2005), “China Trains Army with Counter Strike,”
http://kotaku.com/gaming/oddities/china-trains-army-with-counter-strike-30782.php
4. NASDAQ (2008), “NASDAQ Performance Statistics,”
http://www.nasdaqtrader.com/Trader.aspx?id=MarketShare
5. NASDAQ OMX Group, Inc. (2008), “NASDAQ OMX Announces August 2008 Market Performance
Statistics for U.S. and Nordic Exchanges,” http://ir.nasdaq.com/releasedetail.cfm?ReleaseID=333405
6. N. Shachtman (2008), “CIA: Hackers Shook Up Power Grids (Updated),”
http://blog.wired.com/defense/2008/01/hackers-take-do.html
7. P. Boutin (2008), “Sarah Palin’s Wikipedia Page Scrubbed,”
http://valleywag.com/5043886/sarah-palins-wikipedia-page-scrubbed
8. K. Zetter (2008), “Six-Year-Old News Story Causes United Airlines Stock to Plummet: UPDATE
Google Placed Wrong Date on Story,” http://blog.wired.com/27bstroke6/2008/09/six-year-old-st.html
36
Practical Protection
y goal has been to show that protecting games is possible and that there
are many paths to solving game security problems. That security does
not require cryptography or iris scans; it just requires a bit of thought and
consideration. That security is, first and foremost, a business issue, not solely a
technical one. That games and the business of games are deeply entwined with
security. Arguably some of the oldest “security problems” were people cheating at
ancient dice games. Fortunately, or unfortunately, it is no longer practical to stick
a spear in the back of cheaters or make pirates walk the plank.
M
How much is security worth? I read a press release recently about an antipiracy product. They cited the oft-repeated statistic that for every legitimate game
sale, there were 10 to 15 pirated downloads and that if just one of those pirates
converted, sales would double.
If anyone really believed that there were 100 percent or more sales to be earned
from better anti-piracy and that there was any anti-piracy solution that could give
those sales to you, there would be hardly any negotiation or concern about purchasing anti-piracy products.
“W E H AVE M ET
THE
E NEMY
AND
HE IS US”
This quote by the comic book character Pogo (copyright of the Walt Kelly Estate)
pretty much sums it up. Games are a major hacker target. Some of the most common
forms of malware—Trojans and account phishing scams—target online games. On
one hand, this is a tribute to the huge growth in the game industry. One the other
hand, it is an indicator that both the game industry and law enforcement do not
take these attacks very seriously:
Real Money + Low Risk = Juicy Target
364
Chapter 36 Practical Protection
365
This is likely to get worse. In 2007, the rate of attacks targeted against specific
businesses was almost 20 percent1. These attacks are much less likely to be detected
by standard, commercial security products, so companies need to harden themselves against all attacks. Denial of service attacks can be launched for as little as
$100 per day from an outsourced botnet. The cost of cyberattacks on businesses
grew from $168,000 per incident in 2006 to $350,424 in 2007. As game companies
move their business online, they are increasingly vulnerable to these hackers.
Today, the game industry seems wracked with security fatalism: PC gaming is
doomed because of piracy. Gold farmers are ruining MMOs. Cheaters and bots are
destroying online poker.
The sky is not falling.
Security problems are big enough to be taken seriously, but, as has been shown
throughout this book, there are ways to bring these challenges under control. The
first step is for both security personnel and their colleagues to consider security as
an important and integral part of game development and game operations.
There seem to be six kinds of security insanity that afflict both security professionals and their coworkers:
Zealots—The radical “true believers” of security. They believe in security at the
expense of everything else. If something is not perfectly secure, there is no reason to do it. This is most often found in very young (or inexperienced) and very
old security professionals.
Product Pushers—These individuals have been totally seduced by one brand
or type of security product and believe it is the magic bullet for whatever security problem you face. This may occur in the wake of an article, a security
course, an industry conference, or an encounter with a particularly charming
and/or attractive sales person from the offending company. This is a moderately annoying problem in security staff. It is utterly depressing and frustrating
when an executive has caught the bug.
Guards and Fences—These individuals view security solely through the lens of
physical security: guards, fences, security clearances, and such. Very often, these
people have no appreciation for intellectual property as a valuable commodity.
This is not found too often in the game industry, but there are definitely folks
in the security industry who continue to have this view.
Blissfully Ignorant—There is no security problem, there is nothing to worry
about, time to move on. “These problems would never affect my product or
our business.” In severe cases, they are the willfully ignorant who refuse to consider anything that differs from their world view.
366
Protecting Games: A Security Handbook for Game Developers and Publishers
Pearl Harbors—“I’ll worry about security when some large enough security
event occurs.” “Whatever it is, it’s going to have to be big, a <insert your industry
or company or product here > Pearl Harbor.” If nothing else, I hope that this
book has provided enough specific incidents to answer this question for both
the Pearl Harbors and blissfully ignorant in the game industry.
Security Apocalypse Believers—There is nothing that can be done. We’ll just
have to abandon this market. Maybe the government can save us. The entertainment industry seems to be veering into this direction. For the games industry, PC gaming is routinely pronounced “doomed” due to piracy.
Real protection goes with a real understanding of the business and its environment. My discussions of price, multi-player gaming, and rich interaction systems as
strategies to fight piracy are based on the recognition that piracy exists, but the goal
is to maximize revenues, not become a surrogate for government and mete out
“justice.” Second-hand game sales may, in fact, be a more costly problem than
piracy (in terms of lost sales). Real customers willing to spend real money on real
games are increasingly choosing to buy used rather than new games. Hoping for
some sort of revenue share from retailers or individuals is naïve, at best.
Cheating and social subversion are direct threats to any game service. Any
breach of trust or confidence will cost you customers. In the largest available survey, cheating was the number one reason for leaving online games2. There is nothing that ruins fun like perceived injustice. Although piracy may be the largest threat
to games as products, cheating and social subversion are the leading threats to game
services.
Games may be an escape from the real world but game businesses are real businesses. They face numerous challenges, some of which stem from the explosive
growth and changes in the industry. Although it may suit the game industry’s
purposes to consider virtual items as worthless and owned by the company, it is
dangerous to ignore the fact that your players place great value on these mere
entries in a database. This view devalues your customers and facilitates problems
like gold farming. Games are a major industry and can earn many millions of
dollars from their players. In return, developers and game operators should value
their customers and their customers’ trust seriously. Protecting identity, providing
a safe environment, and securing payments should not be afterthoughts; they are
central to the success of a game service.
Chapter 36 Practical Protection
T HE B USINESS
OF
367
G AME P ROTECTION
When games can earn more than $300 million in a week3 and there are lawsuits for
millions of dollars over security breaches4, it is time to realize that the game industry has grown up and that protecting these games is serious business. There are a lot
of multi-million dollar security incidents mentioned in this book: Sony Online
Entertainment faced millions of dollars in chargeback fees due to gold frauders; K2
Networks lost a million dollars in one year due to phishing, identity theft, and
credit card fraud; and Shanda offered $1 million in rewards to find private servers,
malicious code, and cheats.
One has to wonder if the potential costs of a security breach were even considered when these games were developed. How carefully do game publishers review
the security procedures of their developers or production contractors, given the
number of times games have been compromised before they were released? How
much thought was put into various online games’ economic systems to consider the
operational and fraud related costs from gold farming? How early in the development
process was the threat of piracy considered during a game’s design and business
strategy?
Yet, it seems security investments are very lean.
The game industry is not alone in this. The game industry has an advantage
over many other industries in that it can clearly measure return on security investment. Piracy can be tracked; customer complaints and security incidents can be
counted. Security investments can be tied straight to the bottom line.
It is certainly the responsibility of security staff to propose security solutions as
well as identify security vulnerabilities and fairly cost them over the lifecycle of the
game, but it is also the responsibility of management and designers to take heed.
Security is truly an engineering discipline and an art. It is all about leverage. The
goal is to make an investment in security tools, implement appropriate changes to
the game design or business model, or even alter operational procedures that, taken
together, will produce substantially larger revenues or avoid large costs. It is reasonable for management to expect these margins to be fairly large because so are the
unknowns. If game protection is started early, the cost may consist of altering a
PowerPoint design presentation or a Word requirements document.
GLOBAL INDUSTRY CHALLENGES
The game industry is in the midst of a fundamental change. It is moving from
a shrink-wrapped software business dominated by a few major publishers serving a
few large developed countries, to a much more diverse online industry with a wide
range of business models and a huge number of players spread all over the world.
368
Protecting Games: A Security Handbook for Game Developers and Publishers
Industry leaders need to think globally instead of focusing on individual markets or
regions.
The debate in the United Kingdom between industry-sponsored Pan-European
Game Information (PEGI) age-rating system and the British Board of Film
Classification (BBFC) over game-rating authority is not really about which approach is better, but whether companies will need to get their games approved in
each national market or be able to use a standard, global certification.
The challenges extend far beyond game ratings. The game industry has a strong
interest in standardizing and strengthening online identity, developing standards
for parental controls and usage limitations to address game addiction concerns, improving online payments and fighting fraud (including pushing liability back onto
payment processors and credit card firms), fighting online crime, and clarifying
jurisdictional issues for online services.
Many of these issues are not unique to the game industry, but their resolution,
or lack thereof, will have a notable impact on the shape and growth of the industry
in the future.
At the same time, the very way the game industry operates is in flux. Game developers increasingly outsource portions of their projects and operate as virtual
teams spread around the globe. Licensing games has changed from simple localization for each country and local marketing to supporting extensive online services.
These partnerships reduce the costs of development and can help expand business
opportunities, but at the same time they expose companies to threats that they
hadn’t previously considered. Maintaining management control, much less effective security, is a serious challenge.
SECURITY BEYOND TECHNOLOGY
One of the most important themes throughout this book is that security is not
solely a technology problem nor does it always have a technological solution. The
role of the security team is to look at everything about the game—its business
model, design, distribution, payments, implementation, tools, and so on—and help
navigate a path to success in the face of adversity. Although security is not paramount, its impact needs to be considered seriously along with business and art to
achieve success.
The joke among my NSA friends when we were adding a piece of security gear
to a project was that we were expected to be a heat sink, add power, and add lift.
The development team as a whole often did not see any reason to value security.
Why should they?
Chapter 36 Practical Protection
369
Military development projects have many of the same characteristics as game
projects. The development team is successful when the project “goes live.” After
that, someone else gets to take care of maintenance, operations, and security.
Without rewards and accountability, security will fail. Like everything else,
people respond to incentives. If security can serve as an impetus to better address
operational issues during development, security should certainly be a resounding
success.
One of the great things about games and security is that there is a lot of freedom
to innovate. Games are unique and creative enterprises. Battle.Net started with a
free online service and ended up extending the life of its games for years and being
pretty effective in battling piracy. Richard Garfield revolutionized the tabletop
game industry by combining sports trading cards with a fantasy game to create
Magic: The Gathering. The free-to-play business model has shown that you don’t
need to charge a subscription to make money from an online game. The Wii
showed that game play, not graphics, can be successful on consoles. Puzzle Quest
showed that you could make a “hardcore” casual game. Solving business, game
design, and security problems can truly be an opportunity to build something
wonderful and new.
WHO’S THE BOSS?
A perpetual problem in the security field is the question of who “owns” security. No
matter what we all claim, the adage “where you stand depends on where you sit”
has a lot of validity. If security is owned by the Information Technology (IT)
department, security is an IT problem. If it is placed within Quality Assurance,
quality is security.
The bottom line answer is that the “boss” owns security. The owners of a business are the only ones who have enough visibility into development and operations
to balance both. Some large companies have created a Chief Information Security
Officer (CISO) position, usually underneath the Chief Information Officer (CIO).
The main problem with this choice is that it makes security part of IT and often
CIOs are a lot less strategic to the business than they should be.
My conversations with game developers lead me to a slightly different conclusion for the game industry. The security lead should probably directly report to the
Project Manager or an Operations Manager, if one is appointed early. Bringing in
an Operations Manager early on is highly valuable. They are the ones who are going
to care for, feed, operate, and support the game from the day it is launched until it
is shut down, and so are more like a “real” game player than anyone. Operations
Managers care about how many customer support staff they are going to need, as
well as how many servers, and how many phone lines for complaints. Operations
370
Protecting Games: A Security Handbook for Game Developers and Publishers
Managers also are going to bear the brunt of any security failures and will therefore
be strong advocates for security. They will appreciate that good security can affect
the variable costs of operations. Best of all, the Operations Manager has a substantial budget—something that security folks almost always lack.
I N C LOSING
I almost always open my presentations on game security by stating that “If security
doesn’t save you money or make you money, don’t spend a dime on it.” I hope that
I have shown that there are real security problems that affect almost everyone in the
game industry and that there are practical ways to protect your games.
When I started studying game security, the problems were pretty straightforward: piracy for shrink-wrapped games and cheating and griefing for online games.
The explosion of games into advergames, social networks, virtual worlds, skill games,
and children’s games has been exciting to watch even as the security challenges have
multiplied.
These are early days for security in the games industry. Companies who take
the lead in security will have a competitive edge, while others may lag behind.
R EFERENCES
1. T. Espiner (2007), “Cracking Open the Cybercrime Economy,”
http://resources.zdnet.co.uk/articles/features/0,1000002000,39291463-1,00.htm
2. PlayNoEvil (2006), “Game Security Major Issue for Online Gamers in China,”
http://playnoevil.com/serendipity/index.php?/archives/719-Game-Security-Major-Issue-for-OnlineGamers-in-China.html
3. P. McDougall (2007), “Halo 3 Sales Top $300 Million in First Week,”
http://www.informationweek.com/news/personal_tech/showArticle.jhtml?articleID=202201135
4. B. Sinclair (2008), “Ubisoft Sues Over Assassin’s Creed Leak,”
http://www.gamespot.com/news/6195570.html?om_act=convert&om_clk=newstop&tag=newstop;title;2
Appendix
A
Selected Game Security
Incidents
began tracking game security incidents fairly seriously after we filed the patents
for what became our SecurePlay product back in 1997. Every so often, a news
story would break about some problem with a game somewhere and I would
file the information away. The pace of these incidents steadily increased and when
I started seriously writing my blog, PlayNoEvil, in the later part of 2005, I went back
and filled in a number of the earlier cases to build an informal chronology of game
security. These cases come from stories in the press or announcements from companies. I have rarely used forums or gamer communities as a reference. When I do
use these sources, it is usually because the attack itself is interesting, rather than just
noting the disclosure of the incident.
I
T HE G ATHERING S TORM
The growth in the number of game security incidents has been impressive. Before
2004, there were several incidents per year. By 2004, the pace had reached one per
month. In 2005, there were several each month. In 2006, there was usually at least
one incident a week and by 2007 there were more incidents than I could easily keep
up with. Part of this is certainly due to the growth of online sites that track the game
industry, but the number of incidents seems to have been growing at a remarkable
pace.
Over this same period, companies have changed how they respond to security
incidents. There has been a long-standing habit of simply deleting discussions of
cheats or exploits from official game sites. Sometimes game companies will provide
information on security incidents only to later remove them from their sites.
Blizzard used to provide quarterly updates on bans for Battle.Net and World of
Warcraft, but ceased doing so in the fall of 2006. Other companies, like Square
Enix, have taken a very different approach and provide regular updates on security
for their online game Final Fantasy XI.
371
372
Protecting Games: A Security Handbook for Game Developers and Publishers
On a personal note, when problems have occurred over, and over, and over
again, there seems to be less value in writing about them, and less interest in reading the same stories by my readers. The rapid changes in the game industry have
given me opportunities to expand my horizons to address issues such as security for
kids’ games, problems with contests and advergames, and other topics.
This is a long-winded way of saying this list is not complete. It covers many
incidents from 2001 to mid-2007 and gives a good sense of the range of the problems. I do refer you to my blog, PlayNoEvil (http://www.playnoevil.com/), which
I’ve continued to update. You may also find Luigi Auriemma’s site (http://aluigi.
altervista.org/) of interest. There have been a couple of other game security sites
launched over the years, but they rarely stay active for long.
Incidents in 2007 (though May):
In-game griefing turns into real-world violence in World of Warcraft in Mexico
Regional licensing issues in Xbox Live and PS3
Nintendo faces media piracy in Korea
Lineage III code compromised—$1 billion in potential damage claimed
Nintendo Europe fights modchips
Sony PSP firmware updated against download security flaw
HD DVD and Blu-ray anti-piracy systems hacked after being patched within
one week
HD DVD and Blu-ray anti-piracy system hacked
Xbox 360 privilege escalation exploit
Fake cheating scams: Habbo Hotel and elsewhere
Cheating in Insomniac’s Fall of Man for PS3
3,900 Final Fantasy XI accounts banned or suspended
Teleport hacking in World of Warcraft
Xbox 360 exploit found and patched
Griefing article in PCGamer
Malicious shills in online casinos
100,000 World of Warcraft accounts banned
Swedish lottery game shut down for cheating
Entropia Universe performance enhancement exploit
MMORPG editorial on cheating
Blood donations to get “unbanned” in Cabel Online
Appendix A Selected Game Security Incidents
373
Casual game attacks article
Hacking kids games—Club Penguin and Whyville
Final Fantasy XI bans 5,000 accounts
Pirate server earned $200,000 in China shut down
UK invests 5 million pounds to fight piracy
Lineage 2 pirate server shut down by FBI
Hacking games with Cheat Engine article
Nintendo DS strengthens media security
Game industry article on evolution of game piracy
Real robot used for Xbox 360 achievement exploit
Epic Software’s Gears of War for Xbox 360 attacked
Employee game abuse issue in CCP Games’ EVE Online
Nintendo Wii hardware hack
Knight Online institutes “double damages” instead of banning
Flash high-score system hack demonstrated
Sony PSP firmware hacked again
Controller hack against Rainbow 6 on Xbox Live
Indian gold farming and botting allowed and supported by publisher
Chess tournament cheating via Bluetooth
Legend of Mir 3 piracy operation in China cost nearly $1.3 million per month
in revenues
Incidents in 2006:
Penis griefing in Second Life
Square Enix bans 7,450 from Final Fantasy XI
Another pirate server in China shut down—over 260,000 accounts
Cheating described in online Backgammon
Gold duplication exploit in World of Warcraft (non-US)
Sony PSP firmware hacked
Electronic Arts’ Battlefield 2142 faces numerous security issues
Bungie institutes anti-leader board abuse system for Halo 2 (1,106)
374
Protecting Games: A Security Handbook for Game Developers and Publishers
Square Enix bans 11,500 in Final Fantasy XI
FBI shuts down Lineage 2 pirate server
Blizzard sues World of Warcraft Glider tool developer
Hackers commercialize game save cheats for Xbox 360
Denial of service attack against Second Life
Saint’s Row for Xbox 360 gets security patch against exploits
Australia challenges piracy damage report
Square Enix creates Final Fantasy security task force
Yendang Entertainment cracks down on cheaters and hackers
iTunes DRM allegedly broken
World of Warcraft movement cheat hits YouTube
Guild banned in World of Warcraft for using exploit
Final Fantasy XII English language code compromised
Student essay on Metroid Prime Hunters cheating
Game Licensor K2 uses policy instead of patching for Webzen’s Legend of MU
exploit
Pine tar hack in baseball
Gamerscore cheating on Xbox Live
Electronic Arts’ Battlefield 2142 ships with spyware
Lobby attacks in Gears of War for Xbox 360
Four to five denial of service attacks in less than one month against Second Life
Cheating in chess—Kasparov editorial
Microsoft sues to fight DRM circumvention tool
Microsoft adds security to DVD drive
Gears of War code compromised
Ubisoft compromised 2GB of art assets
Personal data compromised in Second Life
K2 Networks loses $1 million in a single year due to account compromises,
phishing, and identity theft
Baidu sued for publicizing alleged cheater’s name
Roulette cheating legalized in UK
Gold farming business article in China
Appendix A Selected Game Security Incidents
375
Final Fantasy XI bans 3,000 for third-party software
Video and audio griefing on Xbox Live in Uno
Payment card spoofing and identity spoofing on Xbox Live
Sony PSP patched again
Korean organized crime group hacked arcade chips to cheat
Apple and Microsoft DRM defeated again
Shanda offers $1 million reward to fight cheats and private servers
Casino Times covers cheating in Online Poker
Executive at Shanda duplicates items in Legend of Mir 2—arrested
Three Guild Wars guilds banned for ladder abuse
Both Microsoft DRM and Apple FairPlay systems broken (again)
EA’s Battlefield 2142 hacked in beta
Sony PSP hacked, all versions, via memory stick
Xbox 360 piracy reported in Philippines
Introversion claims successful use of spoofing against P2P network piracy
Final Fantasy XI bans over 1,400 for cheating and third-party software
Bank scam revealed in EVE Online
VP of Chinese anti-virus firm arrested for selling game hack plug-in for Legend
of Mir 3 (earned over US $350,000)
“Stat baby” griefing in Netamin’s Ultimate Online Baseball
Xbox 360 piracy problems reported in Korea
Sony PSP introduces anti-piracy and homebrew features in latest firmware
Datal releases trainer for DS
World of Warcraft bans nearly 60,000 accounts
SiN Episode 1 piracy reported, distributed via Valve’s Steam
Xbox 360 piracy problems reported in China
Final Fantasy XI bans over 2,000 for third-party software
Conquer Online increases penalties for cheating and botting
Guild Wars bans over 4,000 for botting
$21 million in U.S. dollars seized from botters and gold farmers in Ultima Online
New PSP downgrader released
Hellgate: London source code potentially compromised
376
Protecting Games: A Security Handbook for Game Developers and Publishers
Cheat tools for Metroid Prime Hunters—WiFi
300,000 players data-compromised in Japanese MMO Xenepic Online
Korean gold farming ring earns U.S. $15 million, NCsoft under investigation
for inaction
Nintendo DS piracy problems
Star Wars MMO doppelganger server enters alpha testing
PSP dual boot hardware hack released
Korea moves to stop wagering in online games
Shadowbane MMO announces fix for exploits
Final Fantasy XI MMO bans 250 accounts for gold farming with U.S. $4 million
in game currency
RF Online bans over 2,000 for cheating with bots in May
Bethesda Oblivion RPG patch fails to stop duping
Blizzard bans 30,000 accounts for gold farming and cheating, with U.S. $3 million
in game currency
In-game denial of service attack against Second Life
Bethesda Oblivion RPG patch to stop duping; because of the Xbox Live service
and incentive system this problem has real impact
ArenaNet’s Guild Wars bans 1,000 accounts for bots
NCsoft to spend U.S. $10 million on anti-cheating and farming, including
hiring 150 analysts for Lineage
Korean bot makers busted for U.S. $10,000 and two years in prison
Xbox 360 DVD drive hack weaponized cheat and piracy product for Nintendo
DS
Trojan used to loot World of Warcraft accounts
Second Life denial of service attack—third in one month
NCsoft bans 500,000 accounts in 18 months for Lineage
Second Life denial of service attack
5,400 banned from World of Warcraft for cheating
Virtual crucifixion to punish griefing in Roma Victor
Xbox 360 DVD drive hack disclosed
Mythic bans cheaters from Dark Age of Camelot MMO
Massive identity theft ring targeted NCsoft’s Lineage—200,000+ compromised
accounts
Appendix A Selected Game Security Incidents
Online “lynching” of suspected Chinese gold farmers
Mythic bans 450+ cheaters for use of “radar” exploit
PSP hacked via GTA game
Shadowbane institutes “zero tolerance policy” for cheating
Second Life adds virtual prison for griefing or annoying behavior
Incidents in 2005:
Blizzard closes 18,000+ accounts for cheating in past three months
Linden Lab turns to FBI in Second Life denial of service case
City of Heroes/City of Villains servers hacked, code compromised
Age of Empires III patched to address multi-player exploit
Call of Duty 2 fans lobby for better anti-cheating, threaten strike
Denial of service attack against Second Life
Xbox 360 Live tracking security concerns
AhnLabs brings anti-cheating service to US, starting at $30K/year
Two denial of service attacks in November against Second Life
World of Warcraft hackers using Sony BMG rootkit to hide from Warden
Halo 2 ends leader board due to cheating and hacking problems
Japan Lineage II fraud/virtual mugging results in arrest
Duplicate server problem for Lineage II
Major duping incident for EverQuest II
Privacy concerns due to security monitoring by Blizzard
Far Cry patched for cheating
World of Warcraft bans over 1,500 for cheating
Bungie (Halo 2) bans thousands for cheating
Bungie fights mod cheats
Battlefield 2 security flaws allow cheating
Major duping problems in World of Warcraft
China imposes content and time limits on gaming
Battlefield 2 servers delisted for cheating
50,000+ accounts banned from Battle.Net
377
378
Protecting Games: A Security Handbook for Game Developers and Publishers
Shanghai player stabbed over virtual sword theft
Spurned woman charged over deleting game data
Tecmo settles nude “skinning” lawsuit
Gold farming and duping problems in World of Warcraft—thousands banned
(several articles)
Rise of pokerbots in various online poker games (several articles)
Final Fantasy XI bans over 800 players
America’s Army hacked
Halo 2 service boots several thousand users for cheating at $50/subscriber/year
Sims 2 hacked (malicious data attack)
Fujistu-Siemens told to pay $16/PC as tax for piracy in Germany
Earlier incidents (2001 to 2004):
World of Warcraft has major game hack within three weeks of release (timing
attack)
Blizzard knocks over 500,000 accounts from Starcraft and tens of thousands of
accounts from Warcraft III at Battle.Net
Valve boots 50,000+ players within three months of releasing Half-Life 2
Blizzard wins suit against BnetD (competitive open source game server)
Code theft for Grand Theft Auto – San Andreas
Code theft for Halo 2
ASF Texas Hold’em hacked
SOCOM online virtually shut down due to cheating
EverQuest removes hundreds for cheating
Battle.Net boots over 500,000 accounts (out of 10 million)
Half-Life 2 code theft
China’s online gaming market admits $12,000 lost each day to cheating and
piracy
McDonald’s Monopoly sweepstakes scandal
Cryptologic’s software was hacked and lost $1.9 million in a day
Appendix
B
Glossary
Action Overrun—This type of attack on a game works when games do not explicitly
validate the intervals between allowable game actions. The game’s state does not retain
information about when previous actions have occurred. Common examples are players
who can move far too fast or fire extraordinarily quickly compared to other players.
Advergame—A game that promotes a product, service, or brand that is typically provided
for free.
Asymmetric Cryptography—See Public Key Cryptography.
Blind Authentication—A cryptographic authentication process whereby one entity queries
another to determine whether the second entity possesses certain information without disclosing the information directly. Blind authentication can be used to verify software or
other data.
Blu-Ray—A successor to the DVD that can store 50GB of data and includes several digital
rights management systems.
Bot/Botting—The use of automated programs to play on a player’s behalf.
Bridging—The insertion of a hardware or software proxy between two networked game
applications in order to facilitate cheating by manipulating the data exchanged between the
game players.
CAPTCHA—Stands for a “completely automated public turing test to tell computers and humans apart.” A program that tries to distinguish between people and computers quickly and
reasonably easily.
Chargeback—When a consumer reverses an existing credit card purchase and the vendor
is responsible for returning the funds to the credit card company and, ultimately, to the
consumer, unless the vendor can successfully dispute the chargeback.
Cheating—Active measures that abuse game play or game systems.
Checksum—A fixed sized block of data that’s derived from a larger data stream or block. A
checksum can be as simple as a parity bit (a count of the number of 1s in the data stream)
or as complicated as a cryptographic checksum (where the checksum is built using a secret
key and a cryptographic function).
379
380
Protecting Games: A Security Handbook for Game Developers and Publishers
Children’s Online Privacy Protection Act of 1998—A U.S. law that protects the privacy of
children under 13, particularly against marketing. It is sometimes confused with COPA or
other laws with very similar acronyms that are related to protecting children from obscenity and have been successfully challenged in court.
Ciphertext—An encrypted stream or block of data.
CKL—See Compromised Key List.
Compromised Key List (CKL)—One of the limitations of public key cryptography is that
keys have a long life, sometimes a year or more, and there is no easy way to get rid of keys
when they are compromised. The CKL is a digitally signed list of compromised keys periodically distributed by a central authority. These lists are used by participants of the service
to ignore messages from holders of the compromised keys.
COPPA—See Children’s Online Privacy Protection Act of 1998.
Digital Millennium Copyright Act (DMCA)—A U.S. law passed in 1998 that places serious
restrictions on attempts to reverse-engineer or circumvent copyright protection technology
such as DRM. The European Union passed an analogous act in 2001, called the EU
Copyright Directive.
Digital Rights Management (DRM)—Software tools that attempt to control the usage and
distribution of digital media.
Digital Signature—By combining a hash function with public key cryptography, digital
signatures are used to ensure the source and integrity of the signed data. The hash function
detects data alteration and the public key function ensures that the data came from a source
that knows the corresponding private key.
DMCA—See Digital Millennium Copyright Act.
DRM—See Digital Rights Management.
Emulators—Software programs that emulate a different computing platform or microprocessor, and are sometimes used for piracy.
Encryption/Decryption Function—A mathematical function that operates on some input
data (plaintext) and a key to produce an output. If you have access to the output of the encryption function (ciphertext), it is computationally infeasible to recover the input data
without the key.
End User License Agreement (EULA)—The contract between a software buyer and a seller.
These contracts have come under scrutiny in the US recently because consumers cannot
meaningfully negotiate with the licensor. Additionally, software companies have been imposing draconian restrictions in the contracts that may not hold up in court.
Escorting—A (paid) service in an online game where the escort plays along with the client.
EULA—See End User License Agreement.
Exploit—A weakness in the implementation of a game system or flaw in the game’s rules
that allows a player to have an inappropriate advantage.
F2P—See Free-to-Play.
Appendix B Glossary
381
Feelies—Physical items included with a game. Feelies were an anti-piracy technique pioneered by Infocom.
Free-to-Play (F2P)—The name for games whose business model is based on the purchase of
virtual goods. It is typically contrasted with subscription games, where players purchase
game play based on time (per minute or per month).
Gold Farming—The practice of using a game’s economic system to earn real money by selling virtual assets or currency to other players. Most games typically allow, in fact encourage,
the accumulation of items and virtual currency and support their trading as a part of the
game play experience. The abuse of this legitimate system can cause a number of problems,
including spam.
Gold Frauding—The use of actual criminal techniques such as phishing, account theft,
identity theft, and credit card fraud, to buy and sell virtual currencies and items for games.
Griefing—Activities that are not technically cheating, but are disruptive to the game experience of other players. At best, these behaviors can only be documented in a game’s terms
of service. Most often, they are enforced by game company staff.
Hash Function—A mathematical function that takes an arbitrary amount of data and
“hashes” it down to a fixed-size hash word. A good hash function will have the characteristic that small changes to the input data will result in large, unpredictable changes in the
resulting hash word.
Honeypot—A program or online service that is designed to trap criminals or other targets.
Key—A small amount of data (the key) used to protect a large amount of data. Typically
used with a cryptographic function.
Key-logger—A program that captures the keystrokes from a computer and sends them to
a remote location, often for malicious purposes such as capturing user passwords (usually
done by a hacker, but sometimes companies monitor their own employees). There are also
programs that capture screenshots and mouse inputs.
Key Management—The set of operational services are necessary to operate a cryptographic
system securely. Typically, a key management system includes key distribution, key
exchange, registration or initialization, key update, and recovery.
Keygen—An unauthorized program that can generate a game license key that cannot be
detected as fraudulent.
Macros—Programs that automate sequences of keystrokes as a game aid. See also Bot.
Machinima—A video or movie built from a 3D graphics engine (typically a game).
Massively Multi-Player Online Game (MMO, MMOG)—A generic name for games that
can support large numbers of players, typically in shared, persistent environments.
Massively Multi-Player Online Role Playing Game (MMORPG)—A special category of
MMO that has a player take on the role of a person or creature, typically represented by a
graphical avatar. The role-playing-game aspect of the game is that the characteristics and
assets of the avatar can change over time.
MMO/MMOG—See Massively Multi-Player Online Game.
382
Protecting Games: A Security Handbook for Game Developers and Publishers
MMORPG—See Massively Multi-Player Online Role Playing Game.
Modchips—Additional memory chips, processors, and even circuit boards used to support
hardware hacking of game consoles.
MUD—See Multi-User Dungeon.
Multi-User Dungeon (MUD)—The textual predecessors to the modern graphical MMO
games. Players typically use a simple telnet terminal client to access the game (although
more elaborate client applications are often available). Interaction is often done with very
elaborate textual commands. One advantage that MUDs have is that developing and modifying text is quick and easy. There continue to be several text MUDs that operate commercially.
Nintendo DS—Nintendo’s handheld game console that was released in 2004. It is distinguished by the use of a dual screen and is backwards compatible with Nintendo’s previous
GameBoy Advance handhelds. It also supports Wi-Fi networking.
Nintendo Wii—Nintendo’s game console that was released in 2006. It is distinguished by
its use of the Wiimote handheld controller that recognizes gestures and movement in three
dimensions. It is also backwards compatible with Nintendo’s previous console, the
GameCube, and includes Internet access via Wi-Fi. Unlike its competitors, the Wii does not
have a standard hard drive, only Flash memory.
Obfuscation—The process of making it difficult to reverse-engineer the design of a program (code obfuscation) or the value of data (data obfuscation), even if the adversary has
the obfuscated code or data in her possession.
Phishing—The process of attempting to fraudulently convince individuals to disclose
credit card numbers, personal data, passwords, or other sensitive data.
PlayStation (PS, PS1, PS2, and PS3)—Sony’s video game console series. The latest, the
PlayStation 3 (PS3), was launched in 2006 and includes the Blu-ray disk technology and
Internet access.
PlayStation Portable (PSP)—Sony’s handheld game console first released in Japan in 2004.
It is most notable for the use of the UMD miniature disk technology. It also supports
Wi-Fi networking.
Pokerbot—An automated program that plays poker (see also Bot/Botting).
Power-Leveling—A commercial service whereby a third party plays on behalf of a player to
accelerate her status in a game. The service may also simply sell pre-built game characters
or accounts.
Private Key Cryptography (Symmetric Cryptography)—A type of cryptography where all
parties to the system use the same (secret) key. The same key is used to encrypt and decrypt
data.
PS, PS1, PS2, and PS3—See PlayStation.
PSP—See PlayStation Portable.
Appendix B Glossary
383
Public Key Cryptography (Asymmetric Cryptography)—A type of cryptography in which
it is computationally infeasible to determine the private key if you know the associated
public key. This means that if you can decrypt a message with the public key, you cannot
encrypt the message because you do not posses the private key. Public key cryptography
is mainly used for key management because it is typically much slower than symmetric
cryptography.
R4 Data Cartridge—An unauthorized product that allows standard SD flash memory storage to be used instead of official Nintendo game cartridges for the Nintendo DS handheld
game console. SD cards are routinely used for digital cameras and media players. The R4
product also includes a PC application that allows users to download pirated Nintendo
games and use them. The R4 allows multiple games to be stored on a single cartridge and
provides its own graphical user interface (GUI) to select games.
Race Condition—A situation where multiple systems (often computer programs) that ordinarily work together get into an undefined condition (that often causes strange failures)
because of poor handling of temporal updates.
Real Money Transactions (RMT)—Inter-player commerce, almost always in online games,
where players use the trading system or gift-giving system provided by the game to support
real money sales of items.
Rich Interaction System (RIS)—An online service that provides a number of types of
services designed to be used to enmesh players so that they will be less likely to cheat and
pirate games.
RMT—See Real Money Transactions.
Rootkit—A program that hides itself from the standard utilities provided with an operating system. Many computer hacks try to “escalate privileges” to get root privileges that typically give the hacker total control the computer.
Spam—The abusive distribution of marketing information via a legitimate communication
service.
Standbying—A method of cheating in networked computer games where communications
are interrupted to disrupt the synchronization of game state or actions between players.
Steganography—A mechanism for hiding important information inside of other data, such
as a message concealed inside of a picture or a sound file. For game applications, the most
common use of steganography is for concealing digital fingerprints or watermarks.
Subletting—Sharing an online game account with another user who is engaged in an activity
such as gold farming. In addition to being a violation of the game’s terms of service, subletting is often a fraudulent way to steal a player’s account.
Subscription Game—A game that includes periodic payments (typically monthly) for service.
Symmetric Cryptography—See Private Key Cryptography.
Terms of Service (TOS)—The extension to a game’s contract that defines acceptable and
unacceptable behaviors. TOS are not typically enforced by the software.
384
Protecting Games: A Security Handbook for Game Developers and Publishers
Trusted Platform Module (TPM)—A cryptographic coprocessor that stores and generates
cryptographic keys and implements cryptographic functions. Each TPM has one or more
unique cryptographic keys. TPM is also a specification published by the Trusted Computing
Group.
Wallhack—The replacement or alteration of game graphic assets to give an advantage to
the game hacker. In many games, the graphics engine has sole responsibility for determining whether one player can see another. A simple wallhack will make a wall in a game invisible and, at a minimum, allow a player to see where others are located. Others can be used
to allow players to shoot at players that they should not be able to see or fire at.
Xbox 360—Microsoft’s game console that was released in 2005 as a successor to the Xbox.
It includes Internet access. One notable change from the Xbox is that there is a version that
does not include a hard drive (the Xbox 360 Arcade).
Xbox Live—Microsoft’s online service for its Xbox and Xbox 360 game consoles.
Index
Note: Security principles are abbreviated.
See individual entries for complete text.
Numbers
2001 to 2004, game security incidents in, 378
2005, game security incidents in, 377–378
2006, game security incidents in, 373–377
2007, game security incidents in, 372–373
A
A1 installation option, explained, 95
abandonment, occurrence of, 199–200
abstraction, using, 172
account compromise, overview of, 306–308
Achaea (Iron Realms), 228
ACID, applying to dupe attacks, 156
action-based networking, 117–120
versus state-based networking, 119
synchronizing between players, 119–120
action hands, explained, 202
Action, role in CAARDS reference model, 110
activation, considering in license policies, 53
activation key, vulnerability to pirates, 39
active measures, adoption of, 354
Adams, Tarn, and Zach (Dwarf Fortress), 175
advergames, tracking, 181
ADV Films, trusted brand security of, 28–29
Age of Conan, 109, 166
age verification
overview of, 302–304
problems with, 294
algorithmic games, 170–173
ambushes, turning into mini-games, 174
amusement park economics, 226–227
analysis, availability in cheat detection systems, 153
analytic aids, comparing to cheating, 146–149
anonymity, state of, 296
anonymous systems, using, 301–302
anti-cheating techniques
focus of, 120
N-1 Secure, 124
See also cheating
anti-fraud, overview of, 282–286. See also fraud
anti-piracy
approach for PC games, 35
benefits from proprietary media, 32
determining goals of policies for, 97–99
evaluating, 30
innovators, 29
nagware systems used in, 42
price as strategy, 62
public relation problems with, 92
of servers, 70
strategies for used games, 61
techniques, 32–33
worth of, 26–27
See also piracy; RIS (rich interaction systems)
anti-piracy Bill of Rights
connection options, 95
fair use principles, 93–94
installation options, 95
registration options, 94
anti-tamper software, use of, 135, 139–140
ArenaNet (Guild Wars), 24
Asia, console piracy in, 25
Asian malware, statistic related to, 4
Assassin’s Creed, 257
asymmetric information, significance of, 115
asymmetric warfare, choosing defensive methods for,
16
Atomicity in ACID, explained, 156
attack vectors, association with terrorists, 359–360
Audition dancing MMO, 173–174
Australia, impact of piracy on, 23
authenticating servers, 70–72
authentication, blind, 144
authentication token, use with World of Warcraft, 4
authorization, 37–38
automation, integration for, 286
385
386
Protecting Games: A Security Handbook for Game Developers and Publishers
Avatar’s Bill of Rights, 229
average synchronization model, explained, 113
avoid security strategy, explained, 14
AW (authentication word), creating, 143
Ax installation option, explained, 95
B
Bartle, Richard, 224
Battlefield 2, 111, 198
Battle.Net service (Blizzard), advantage of, 24
“Beat the Dealer” (Dr. Edward Thorp), 170
Bethke, Erik, 229
better EULA, proposal of, 229
bias of game operators, explained, 201
billing options, considering for payments, 279–280
Bill of Rights for anti-piracy, 93–94
biometrics, use of, 299
Black, leaking of, 257
blacklist chat services, using for children, 317
blacklists versus whitelists, 151
blind authentication, using, 144
blind security functions, use of, 139
blind service architecture, 123, 125
Blizzard
Battle.Net service, 24
free online game play service offered by, 24
World of Warcraft, 4, 69
BMG Rootkit (Sony)
use with World of Warcraft, 151
unpopularity of, 25
board games, pattern used in, 176
bootstrapping systems, securing, 58
bots
and cheat tools, 148
problems with, 329
sophistication of, 147–148
and syndicates, 197
Brain Age, 169
brand security, Nintendo and ADV Films, 28–29
break-even analysis, performing, 26–27
bridge style rankings, explained, 204
bridging, defined, 161
broker model, explained, 228
BSA (Business Software Alliance), 23
buddy high scores, explained, 185
Burning Crusade, licensing, 270
business models, security problems related to, 129–130
business risk and liability, overview of, 218–221
byte-code, attack on, 137
C
CAARDS reference model, 110
CALEA (Communications Assistance for Law
Enforcement Act), 349
Call of Duty 2, security failures of, 130
Call of Duty, “kill cam” feature in, 148
CAPTCHAs (Completely Automated Turing Test To
Tell Computers and Humans Apart), 149–150
card games, pattern used in, 176
Caribbean, success of online gambling in, 68
casinos, accidental, 326–327
cataloging problem, fighting in trivia games, 168
CCP Games (EVE Online), 137
CD key, problems with, 34–35
CDS (cheat detection systems), 150–154
challenge/response
card, 299
login protocol, modifying, 71–72
score posting, 185
Champions, 109
chargeback fees, considering, 276
cheapness, security problems caused by, 10–11
cheat codes, use of, 106–107
cheaters, attacks by, 190
cheating
boundaries of, 146–149
costliness of, 105
demonstrating, 148
detecting, 121
versus fair play, 105–106
“for fun,” 120–121
versus hacking and exploits, 108
in high-score games, 181–182
importance of, 104
interpreting, 103
overview of, 102
seduction of, 102–103
by server, 111
in single-player games, 103
threat of, 366
tools used in, 149
using cheat-detection tool with, 16
See also anti-cheating techniques
cheating setup, bridger in, 159
checksums
benefits of, 73–74
and ID license key system, 35–36
using with game data, 136–137
chess, solvers for, 147
Index
Chief Information Security Officer (CISO), problem
with, 369
child pornography, overview of, 318–319, 321–322
children
capabilities for online services, 318–319
and identity, 320–321
protecting communications of, 316–317
sexual solicitation of, 313–314
targeting games to, 303
Children’s Online Privacy Protection Act of 1998
(COPPA), 319–320
China
anti-piracy innovations of, 29
GDP related to software, 23
server piracy in, 67
chips, attacking information in, 58
CISO (Chief Information Security Officer),problem
with, 369
City of Heroes (Cryptic Studios), 269
Clemson University study of cyberbullying, 315–316
client/authoritative server networking, 116–117
client ID, creating with security client, 150–151
client-server option, using, 184
client-side security, end of, 120–121
clocks, considering in license policies, 53
cloning online game services, 68
CO: Connection Optional, explained, 95
code
as data, 137
vulnerability of, 137
code losses, occurrence of, 257
code obfuscation, explained, 40–41, 139
code theft, overview of, 255–257
collaborative game security architecture, 124, 126
collection, availability in cheat detection systems, 152
collusion
in ladder game play, 197
player, 127–129, 167
in tournaments, 197
in tournaments and ladder games, 197
communications
abuse of, 190
griefing and spam, 210–215
Communications Assistance for Law Enforcement Act
(CALEA), 349
community sites, overview of, 273
community systems, limitations of, 211
competition, levels of, 204
387
Completely Automated Turing Test To TellComputers
and Humans Apart (CAPTCHAs), 149–150
“conduit” model, adopting in lawsuits, 272
configuration data, vulnerability of, 137
connections, options for, 95
Consistency in ACID, explained, 156
console attacks
considering emulators in, 56
duplicating game storage media, 55
hardware hacking, 57
manipulating media players, 56
secure bootstrapping, 58
on software, 57
console games
anti-piracy strategy for, 25
attacking save game files in, 141
experimenting with pricing of, 62–63
functionality of, 58–59
memory used in, 141
console processors, targeting directly, 56
consumers, concerns about game security, 4
content, considering in license policies, 54
content distribution
detecting, 33–34
preventing, 32–33
contingency planning, overview of, 342–343
contracts
comparing to software, 266
content of, 266
indemnification section of, 350
security considerations, 266–267
Control, role in CAARDS reference model, 110
coordinated action collusion, explained, 129
COPPA (Children’s Online Privacy Protection Act of
1998), 303–304, 315, 319–320
copyright infringement, occurrence of, 220–221
counters, considering in license policies, 53
covert fingerprinting DRM system, using, 46–47
CR: Connection Required option, explained, 95
credit card fraud, impact of, 287, 289
crimes, punishing, 243–244
Cryptic Studios (City of Heroes), 269
cryptographic checksums, benefits of, 73–74
cryptography
effectiveness of, 71
in secure digital distribution, 89
use in DRM, 46
use of, 182
388
Protecting Games: A Security Handbook for Game Developers and Publishers
Cryptologic Inc., attack on online casino, 4–5
The Cuckoo’s Egg (Clifford Stoll), 7
currencies (convertible), risks associated with, 291
CV: Connection Value option, explained, 95
Cx (D or T) connection option, explained, 95
cyberbullies, dealing with, 315–316
D
DAC security policy model, explained, 51–52
Dance Dance Revolution, 173
Dark Age of Camelot (EA Mythic), 134
DAS (Digital Affiliate System)
DMA player, 86
Media Asset, 86
overview of, 84–86
data
obfuscating, 40–41
splitting, 40–41
storing, 41
data disclosures
low standard fine for, 306–307
overview of, 255–257
data hash, explained, 136
data integrity, importance in encryption, 72–73
data obfuscation
basis of, 139
use of, 134–137
data-protection techniques, 136–137
data storage, cost of, 32
Dead or Alive, 221
defensive proxies, overview of, 157–158
delegate security strategy, explained, 14
Delfino v. Agilent Technologies, Inc., 272
Demaio, Harry (Information Protection and Other
Unnatural Acts), 6
denial of service (DoS) attacks, overview of, 336–339
design exploits, overview of, 166
designing for medium, 179
detect security strategy, explained, 15
deterministic games, 186
deter security strategy, explained, 15
development process, including protection in, 18
development, running in parallel to, 17
Diablo (Blizzard)
attack on, 120
Cheaters’ Tournament, 102
storage of data for, 135
differential data/data chaining, explained, 137
differential storage, use with obfuscators, 135
Digital Affiliate System (DAS)
DMA player, 86
Media Asset, 86
overview of, 84–86
digital distribution, security of, 87–91
Digital Rights Management (DRM)
ineffectiveness of, 45
overview of, 44
problems with, 45
problem with, 183
use of cryptography in, 45–46
digital signatures
benefits of, 73
problem with, 183–184
using, 45–46, 182–184
using in DRM (Digital Rights Management), 49
disasters and disaster recovery, overview of, 342
Disney, anti-piracy innovations of, 29
Display, role in CAARDS reference model, 110
distribute and update, availability in cheat
detection systems, 153
distributed development, risks associated with, 256
distributed state systems, synchronization models
used by, 112–114
distribution, security of, 87–91
distribution piracy
detecting, 33–34
preventing, 32–33
DLL injection, 138
DMA player in DAS, features of, 86
DMA Registry in DAS, features of, 87
dominant strategies, use of, 175
DoS (denial of service) attacks, overview of, 336–339
downgraders, problems with Sony’s PSP, 58
DRM (Digital Rights Management)
ineffectiveness of, 45–46
overview of, 44
problems with, 45
problem with, 183
use of cryptography in, 45–46
DRM systems
digital signatures, 49
encryption, 49–50
fingerprinting and covert fingerprinting, 46–48
license policies in, 51–54
obfuscation, 50–51
proprietary encoding, 50
security labels and tags, 49
Index
split delivery, 51
watermarking, 47–48
DS handheld console (Nintendo)
piracy problems with, 25
popularity of, 28
dupe attacks
occurrence of, 156
solution to, 156
dupe exploit, example of, 109
duplication
detecting, 33–34
preventing, 32–33
Durability in ACID, explained, 156
DVD players versus video game consoles, 62
DVDs
console attacks related to, 56
regional encoding system used for, 33
Dwarf Fortress (Tarn and Zach Adams), 175
E
EA (Electronic Arts), release of Spore, 217
EAM Mythic (Dark Age of Camelot), 134
economic system, fighting server piracy with, 70
emulators, problems with, 56
encryption
benefit of, 73
bypassing, 72–74
data integrity of, 72–73
limitations of, 39
popularity of, 17, 41
problems with, 45
problem with, 183
with static key, 136
using, 182–184
using in DRM (Digital Rights Management), 49–50
engines. See game engines; graphics engines
entertainment publishers, power of, 98
Entertainment Software Association (ESA), 23, 26
Entropia Universe (MindArk), 130
entry spreading, 196
Epic Software (Unreal), popularity of, 50
episodic gaming
considering, 98
pricing of, 63
errors, extending in secure digital distribution, 90
ESA (Entertainment Software Association), 23, 26
escorting, defined, 223
389
escort services, explained, 240
EU, legal requirements for privacy protection,
309–310
EVE Online (CCP Games), 137, 217
EverQuest MMO
gold-buying associated with, 225
handling griefing for, 210–211
exception game, Magic: The Gathering, 175
exploits
versus cheating and hacking, 108–109
of game design, 166
of shared saves, 141
External Affiliation collusion, explained, 128
External Authoritative synchronization model,
explained, 114
F
F2P (free-to-play) model
challenges of, 129–130
popularity of, 227–228
Fable 2 pub games, problem with, 108
Facebook, targeting for spam, 210
facilities requirements, 349–350
fair play versus cheating, 105–106
Family-Safe Gaming Initiative (Microsoft), 314
fan sites, overview of, 273
faux multi-player gaming, explained, 185
FBI investigation of payment fraud, 290–291
feature versioning, considering in license policies, 53
“feelies” (Infocom), 34
financial database, inclusion in game services, 340
fingerprinting DRM system
attacks on, 48
using, 46–47
firmware, updating for duplication, 33–34
Flooz, fraud associated with, 290
fraud, safeguarding against, 288. See also gold frauder;
insider fraud
friend codes, using for children, 317
G
gambling
defining, 325–326
versus gaming, 326
Wire Act related to, 331
game accounts, security of, 289–290
game addiction, overview of, 304–306
390
Protecting Games: A Security Handbook for Game Developers and Publishers
game cheating
boundaries of, 146–149
costliness of, 105
demonstrating, 148
detecting, 121
versus fair play, 105–106
“for fun,” 120–121
versus hacking and exploits, 108
in high-score games, 181–182
importance of, 104
interpreting, 103
overview of, 102
seduction of, 102–103
by server, 111
in single-player games, 103
threat of, 366
tools used in, 149
using “cheat detection” tool with, 16
See also anti-cheating techniques
game clients, vulnerability of, 152
game commerce
alternative models for, 227–228
problems associated with, 223, 226
game consoles
anti-piracy strategy for, 25
attacking save game files in, 141
experimenting with pricing of, 62–63
functionality of, 58–59
memory used in, 141
game demographics, change in, 24–25
game engines
versus graphics engines, 142
keeping data on, 138
game industry
alternative models for, 227–228
competition with movies, 62
game injection, explained, 161
game integrity, importance of, 260
game operations architecture, 341
game operators
versus gold farmers, 236
problems with, 201–202
sample architecture, 340–342
“Game Over” game, 199
game pirates, values of, 13
game play
automating portions of, 147–148
griefing, 215–217
patterns, 176–178
game players, categories of, 224–225
game-play patterns, 176–178
game protection
basis of, 366
challenge of, 16
global industry challenges, 367–368
including in development process, 18
security beyond technology, 368–369
Game Save problems, occurrence with Sony’s PSP, 59
game save sharing, explained, 203
game scams, categories of, 347
game security
accountability in third-party development, 267–268
accountability in third-party licensing, 268–270
balancing with ease of use, 55–56
being concerned about, 3–5
beyond technology, 368–369
business of, 367–370
challenge of, 5
versus complexity, 19
contract considerations, 266–267
contracting, 266–267
of digital distribution, 87–91
effectiveness of, 7
elements of, 3
fatalistic attitudes toward, 6
importance of, 3
importance to consumers, 4
linguistic trap associated with, 6
as means of managing uncertainty, 15–17
of online games, 43
for online games, 71
of operations, 352–353
ownership of, 369
PCI-DSS, 289
perception of, 356–357
simplicity of, 19–20
subjective definitions of, 9
game security architectures
Blind Service model, 123, 125
collaborative model, 124, 126
Trusted Third Party model, 122–123
game security incidents
in 2001 to 2004, 378
in 2005, 377–378
in 2006, 373–377
in 2007, 372–373
and incident response, 354–356
Index
game servers
putting mathematical models on, 171
using public keys with, 71
game services
ensuring integrity of, 185
scams related to, 328–329
security-related components of, 340–341
systems included in, 340
using proxy servers with, 338–339
game state, attacking, 142, 183. See also state-based
networking
game usage, restricting, 304
gamers, stereotypes of, 24
games
attacking via local applications, 132
high price of, 63
operating as services, 26
partial information in, 115
performing break-even analysis of, 26–27
physical security of, 63–64
retrospective verification of, 115
scams in, 345–347
GamesFirst! (Shawn Rider), 159
GameShark and R4 hardware hacks, 108
GameStop 2007 Annual Report, on used games
market, 60–61
gaming versus gambling, 326
Gears of War, 143
ghosting in tournaments and ladder games, 198–199
Glider tool, using with World of Warcraft, 147–148
Gödel, Escher, Bach: an Eternal Golden Braid
(Hofstadter), 19
Gödel’s Theorem, 19
gold farmers
versus game operators, 236
motivations of, 17
gold farming
countermeasures for, 232–236
defined, 223
impact on customer service, 231
objectives of, 13
overview of, 230–236
solutions for, 238–239
gold frauders, problem with, 241. See also fraud
Grand Theft Auto: Liberty City Stories, 59
graphics engines
versus game engines, 142
vulnerability of, 138, 142
graphics, exploit associated with, 109
391
grief, inflicting, 209–210
griefing
behaviors associated with, 190
countermeasure for, 211
deterring, 213
game play, 215–217
high-score or player-name, 215
managing, 211
methods of, 209
solutions for, 212–215
Guangzhou Optisp (Legend of Mir 3), 67
Guild Wars (ArenaNet), 24
Guitar Hero, 98, 173–174
H
Habbo Hotel, problems with virtual prostitution, 240
hacker proxies, overview of, 158–163
hackers, attacks by, 190
hacking
versus exploits and cheating, 108
servers, 122
hacks, fake examples of, 148
Half-Life, 255
Halo 2
French version of, 271
insider fraud related to, 259
proxy problems with, 159
Halo 3, Save Films feature in, 179
harassment, dealing with, 220
hardware hacking
difficulty of, 57
R4 and GameShark, 108
hash functions, using, 143, 182–184
Havok, physics engine from, 255
hidden state and partial information, 115
high-score games, cheating in, 181–182
high-score strategies, alternatives for, 185–186
high-speed games, problems with, 174
HMI (human-machine interface) design,
importance of, 352
Hofstadter, Douglas (Gödel, Escher, Bach: an
Eternal Golden Braid), 19
honeytrap memory, explained, 137
I
I1 installation option, explained, 95
ID and checksum license key system, 35–36
392
Protecting Games: A Security Handbook for Game Developers and Publishers
identify theft, overview of, 306–308
identity
establishing, 253
importance of, 296
problems with, 202–203, 294–295
state of, 295–296
identity cards, counterfeiting, 290
identity systems
components of, 296–297
registration problem with, 296–302
types of, 298–300
Id Software, pricing of Rage, 62–63
ignore security strategy, explained, 14
Illegal Gambling Business Act of 1970, 331
illegal payments, overview of, 290–291
implicit features, including in games, 186
IMVU, 217–218
Incompleteness Theorem, proof of, 19
indemnification
defined, 268
section in contracts, 350
independence, achieving goals of, 8
indirect data stores, explained, 136
Infocom (”feelies”), 34
Information Protection and Other Unnatural Acts
(Harry Demaio), 6
inside players, problem with, 201
insider fraud
countermeasure for, 262–264
occurrence of, 259–260
See also fraud
installation
considering in license policies, 53
options for, 95
insure security strategy, explained, 14
internal authoritative synchronization model,
explained, 113–114
Internet use, security risk associated with, 258
Iron Realms (Achaea), 228
isolation and privileging, overview of, 262–264
Isolation in ACID, explained, 156
Ix installation option, explained, 95
J
Jagex (RuneScape), popularity of, 62, 228
judgment proof, defined, 257
K
keygens, explained, 36
key-loggers, use of, 4
keys. See license keys; public key
kid-friendly services, securing, 316–317
kids communications, overview of, 316–319
Kim, Min, 104, 288
King, Stephen (The Plant), anti-piracy innovation of,
29
Knight Online, punishment related to, 248
Korea
commercial game hack tools in, 149
outsourcing security in, 269
Koster, Raph, 229
Kowalski, Robin, 316
Kreb, B. (”Web Fraud 2.0”), 149–150
L
ladder games
collusion in, 197
game configuration, 198
ghosting, 198–199
ladders, use of, 193–194
law enforcement, overview of, 348–349
Lawrence Berkeley National Lab, investigation at, 7–8
lawsuits, dealing with, 272
layered security, significance of, 7
laziness, security problems caused by, 10
legal considerations
federal laws and regulations, 331–332
overview of, 329–333
state laws and regulations, 332–333
Legend of Mir 3 (Guangzhou Optisp)
fraud associated with, 259
server piracy of, 67, 122
The Legend of Zelda: Twilight Princess, 59
LGK (license generation key), sharing, 38
liability and business risk, overview of, 218–221
licensees
and licensors, 271
replacing, 270
license keys
ID and checksum, 35–36
online authorization, 37–38
protecting, 39
public key encryption, 36–37
splitting data for, 40–41
using, 39
Index
license policies
controlling, 52–54
use in DRM systems, 51–54
licensing games, due diligence process of, 269
Limbo (Svenska Spel), 127–129, 197
Lineage II (NCsoft)
bots for, 148
server piracy of, 67
Lineage III, 257
live connection, considering in license policies, 53
live play, overview of, 329
lobby attacks, 195–196
logging systems, inclusion in game services, 341
Lumines, 59
M
MAC (Message Authentication Code)
security policy model, explained, 51–52
using, 143
Magic: The Gathering exception game, 175
malicious code, targeted, 121
malware from Asia, statistic related to, 4
MapleStory (Nexon), popularity of, 62, 129
markets and regions, considering in license policies, 52
mathematical models, putting on game servers, 171
MD5 hash function, using, 143
Media Asset in DAS, features of, 86
MediaDefender service, 18
media piracy, fighting, 29
memory
attacking, 132–134
in console games, 141
memory editors, use of, 133–134
merchant accounts, using, 277
Metaplace, 217–218
Metroid Prime Hunter, 141
MGame (Yulgang), 269
Microsoft’s Xbox 360 console, attack on, 33–34
MindArk (Entropia Universe), 130
MMOs
movement to P2P (peer-to-peer) architecture, 70
simple game mechanics of, 67
vulnerability to server piracy, 66
moneybookers, using, 279
money, conversion of virtual currency into, 130
money laundering
legal issues related to, 291–293
use by terrorists, 361
393
monitoring
online services for children, 317
overview of, 316–319
Moore’s Law, relating to emulators, 56
Morris Trap, 300
movies, competition with game industry, 62
multi-player gaming, 79
paper by Matt Pritchard, 111
N
N-1 Secure, goal of anti-cheating, 124–125
nagware, activation by anti-piracy systems, 42
NCsoft (Lineage II)
bots for, 148
server piracy of, 67
Nelson, Major, 352–353
network games
action based, 117–120
implementation of, 111
problems with, 159
state-based, 111–116
synchronization challenges, 115
network time, considering, 163–165
newest wins synchronization model, explained,
112–113
Nexon (MapleStory), popularity of, 62
Nine Inch Nails, anti-piracy innovation of, 29
ninja looting problem, explained, 216
Nintendo
DS handheld console, 25, 28
trusted brand security of, 28–29
“NO DISK” hacks, popularity of, 35
“no download” games, 66
non-repudiation, explained, 213
NOOP instructions, replacing verification functions
with, 140
number games, 169–170
O
obfuscating data, 40–41
obfuscators
DRM system, 50–51
use of, 134–137
obscenity, dealing with, 219–220
Office IT, infrastructure of, 258–259
online authorization license key system, 37–38
online gambling, success in Caribbean, 68
394
Protecting Games: A Security Handbook for Game Developers and Publishers
online game services
ensuring integrity of, 185
scams related to, 328–329
security-related components of, 340–341
systems included in, 340
using proxy servers with, 338–339
online games
alternative models for, 227–228
ease of building, 69
globalization of, 68
movement to P2P (peer-to-peer) architecture, 70–71
original reason for development of, 66
security focus for, 71
storage of, 43
online identity. See identity
online payments, growth of, 70
online poker, solvers for, 146
operating systems, targeting directly, 56
operations, security of, 352–353
“The Orange Book,” security grades in, 51
outsourcing
explained, 203
risks associated with, 256
OutWar, 197
P
P2P (peer-to-peer) architecture
movement of MMOs to, 70
movement of online games to, 70–71
packet hacks, types of, 161
parental controls, overview of, 316–319
partner security issues, 270–273
passwords, protecting with Morris Trap, 300
patterns, types of, 176
payment abuse, explained, 201–202
payments
fraud, 287, 290–291
illegal, 290–291
processing, 276–280
PayPal, using, 277–282
PC games
anti-piracy approach for, 35
pricing of, 62
PCI-DSS standard
compliance with, 288
overview of, 289
pedophiles, dealing with, 315–316
penetration testing, weaknesses of, 17
phased distribution
explained, 214–215
pacing, 215
physical security tokens, benefits of, 352
piracy
cost of, 26
determining scope of, 24–28
estimated annual costs of, 4
insider, 69
international impact of, 23
measuring, 75–76
online game appliances, 69
owning problem of, 38
of PlayStation 2, 60
rate of, 23
reconsidering approach toward, 99
strategies toward, 25
as theft, 22
troubled partnerships, 69
See also anti-piracy; server piracy
pirate networks, fighting, 76–78
pirates
converting to resellers, 87
handling after catching, 42
pricing out of business, 62–63
Pirates of the Caribbean MMO game, 137
The Plant (Stephen King), anti-piracy innovation of,
29
platforms, considering in license policies, 53
player collusion, 127–129, 167
player handles, inappropriate, 187
players
banning, 245
distinguishing from programs, 149–150
player systems, inclusion in game services, 341
PlayStation 2, piracy of, 60
poker, automation of, 147
pornography, child, 321–322
power-leveling
defined, 223
overview of, 239–240
pre-paid cards, using, 279
Prince of Persia, replay system in, 179
Pritchard, Matt, 111
privacy, overview of, 306–308
privacy protection, legal requirements for, 308–310
private keys, signing messages with, 213
privileging and isolation, overview of, 262–264
programs, distinguishing from players, 149–150
Index
Project Entropia, 129
proprietary encoding DRM system, using, 50
protect, detect, react, 13
protection
basis of, 366
challenge of, 16
global industry challenges, 367–368
including in development process, 18
security beyond technology, 368–369
protect security strategy, explained, 15
proxies
defensive, 157–158
hacker, 158–163
proxy design, advantage of, 158
proxy servers, using with game services, 338–339
PR (public relations), perception of security in, 356–357
public key
credentials, 299
encryption, 36–37
fighting replacement of, 72
using with game servers, 71
punishments
cost of, 244–245
credibility of, 243–244
and credible deterrence, 245–248
goals of, 243–244
possibilities for, 245–248
puzzle games, 169–170, 186
Puzzle Pirates (Three Rings), 129
Python byte-code, attack on, 137
Q
QuickTime, vulnerability of, 130
R
R4 and GameShark hardware hacks, 108
race conditions
and “dupe” exploits, 109
explained, 108
occurrence of, 155–156
in World of Warcraft, 156
Radiohead, anti-piracy innovation of, 29
Rage (Id Software), pricing of, 62–63
Ragnarok Online (Shanda Interactive), 67, 156
rake abuse, explained, 201–202
randomized features, using, 172
randomly seeded client solution, implementing, 184
random number systems, 125–127
395
Random, role in CAARDS reference model, 110
rank boosting and busting, 196
ranking systems
countermeasures for, 204
overview of, 192–195
purposes for, 194
types of, 193–194
react security strategy, explained, 15
real world
attacking via virtual world, 360
establishing strong identity in, 253
money in, 252
the insider problem in, 252
recover strategy, explained, 13
regions and markets, considering in license policies, 52
registration
considering in license policies, 53
options for, 94
problems with, 296–300
Reign of Revolution, 326
the remote data problem
action-based networking, 117–120
client/authoritative server networking, 116–117
state-based networking, 111–116
replayable game logs, explained, 186
resync attack, explained, 161
reward security strategy, explained, 14
rewriteable DVDs, manipulating in console
attacks, 56
RF Online, cheating in, 355
Rider, Shawn (GamesFirst!), 159
risk, impact on protection, 12–13
RIS (rich interaction systems), 79–84, 102.
See also anti-piracy
RMT (real-money transactions), fairness of, 105
Rock Band, 98
rock-paper-scissors game, 162–163
Roma Victor, punishment related to, 248
RO: Registration Optional option, explained, 94
round robin method, using with merchant accounts,
277
Royal Canadian Mounted Police, impact of piracy on,
23
RR registration option, explained, 94
rules processing, types of, 119
Rules, role in CAARDS reference model, 110
RuneScape (Jagex), popularity of, 62, 228
RunUO Products Page, 67
Rxx (D or T) registration option, explained, 94
396
Protecting Games: A Security Handbook for Game Developers and Publishers
S
save game files, attacking in console games, 141
scalability and availability, overview of, 339–340
scams in games, overview of, 344–347
score table constants, altering, 183
Scrabble Word Finder, 169
Second Life, 129–130, 217–218
secure bootstrapping, 58, 143
secure loading, process for, 143
secure operations, 352–353
security
accountability in third-party development, 267–268
accountability in third-party licensing, 268–270
balancing with ease of use, 55–56
being concerned about, 3–5
beyond technology, 368–369
business of, 367–370
challenge of, 5
versus complexity, 19
contract considerations, 266–267
contracting, 266–267
of digital distribution, 87–91
effectiveness of, 7
elements of, 3
fatalistic attitudes toward, 6
importance of, 3
importance to consumers, 4
linguistic trap associated with, 6
as means of managing uncertainty, 15–17
of online games, 43, 71
of operations, 352–353
ownership of, 369
PCI-DSS, 289
perception of, 356–357
simplicity of, 19–20
subjective definitions of, 9
security by obscurity, 19
security client, using in cheat detection systems, 150
security insanities, types of, 365–366
security issues
game service scams, 328–329
live play, 329
poker, contest, and skill game bots, 329
security label DRM system, using, 49
security principles
Anything easy, 7
Effective security, 7
Make adversary work, 16
Simplicity, 19
security problems
causes of, 10–12
impact on business, 129–130
occurrence of, 9
security software, bundling with game security tools, 154
security strategies
avoid, 14
delegate, 14
detect, 15
deter, 15
ignore, 14
insure, 14
protect, 15
react, 15
recover, 13
reward, 14
security testing tools, using, 18
security tokens, use of, 299
self-improvement game, Brain Age as, 169
server code
reverse engineering of, 68
stealing, 68
server networking, client/authoritative, 116–117
server piracy
combating, 70
versus service piracy, 68
trends in, 66–70
See also piracy
servers
authenticating, 70–72
cheating by, 111
hacking, 122
service providers, partner security issues related to,
270–273
sexual favors (virtual), problems with, 240
Shanda Interactive (Ragnarok Online), pirate server
for, 67, 156
shared knowledge collusion, explained, 128
shills, problem with, 201
signatures, attempts at stabilization of, 16
silent filter services, using for children, 317
The Sims Online, problem with virtual sexual favors, 240
SiN Episode 1 (Valve’s Steam service), 24
single-player games
cheating in, 103, 106
pattern used in, 176
Index
skill games
overview of, 186, 327–328
retrofitting, 206
smart USB tokens, use of, 149
Smedley, John, 236–237
social subversion
overview of, 190–191
threat of, 366
Söderström, Hampus (Toribash), 175
soft failures, explained, 137
SoftICE tool, use in Diablo attack, 120–121
software attacks
goal of, 57
tracking progress of, 59
Sony’s BMG Rootkit, 18
unpopularity of, 25
use with World of Warcraft, 151
Sony’s PSP
Game Save problems associated with, 59
problems with downgraders, 58
problems with image viewer, 59
source authentication, achieving, 73
spam and griefing, 190, 209–215
speed hacks, types of, 160–161
Spel, Svenska (Limbo), 197
split data stores, explained, 137
split delivery DRM system, using, 51
splitting data, 40–41
Spore (Electronic Arts), 217
sporting events, legal wages based on, 331
SQL injection attacks, vulnerability to, 157
SSL, problem with, 183
stalkers, dealing with, 315–316
standbying, explained, 161
Stardock (Brad Wardell), 24–25
StarForce anti-piracy product
anti-piracy saga, 18
duplication strategy of, 33
unpopularity of, 25
Star Wars: Galaxies, vulnerability to server piracy, 66
state, attacking, 142, 183
state-based networking
versus action based networking, 119
problem with, 116
synchronization models, 112–114
state information, reading, 134
State, role in CAARDS reference model, 110
stat guarding, defined, 199
397
statistical independence, achieving goals of, 8
steganography, using in secure digital distribution,
88–89
Stoll, Clifford (The Cuckoo’s Egg), 7
strategy versus cheating, 146–149
strong play tool, Scrabble Word Finder as, 169
strong strategies, use of, 175
stupidity, security problems caused by, 10–11
subletting, explained, 240
Sudoku, solvers for, 146
surveillance, availability in cheat detection systems, 152
Svenska Spell (Limbo), 127–129
synchronization models, using with distributed state
systems, 112–114
syndicates and bots, 197
system memory, attacking, 132–134
T
tag DRM system, using, 49
A Tale in the Desert, 194, 204
terrorism (virtual), overview of, 359–360
terrorists, online tools for, 360–362
the insider problem, perception of, 252
Thorp, Edward (”Beat the Dealer”), 170
threats, impact on protection, 12–13
Three Rings (Puzzle Pirates), 129
tiered distribution, considering in license policies, 53
till fraud, explained, 201–202
time policy, creating, 163–165
timers, considering in license policies, 53
time, securing, 165
“time to penis,” 217
Titan Quest, 42
Toontown Online, griefing solution for, 212
Toribash (Hampus Söderström), 175
tournaments
collusion in, 197
countermeasures for, 204
game configuration, 198
ghosting, 198–199
growth of, 190
and lobby spiking, 195
overview of, 192–195
retrofitting games for, 206
TPM (Trusted Platform Module), 58, 90
trademark infringement, occurrence of, 220–221
Travel Act, 331
398
Protecting Games: A Security Handbook for Game Developers and Publishers
trivia games, 167–169
trusted brand security, Nintendo and ADV Films, 28–29
trusted client problem, 111
trusted platforms, problems with, 9
trusted third party model, 122–123
Turbo Squid, 220–221
Turing, Alan, 19
turn-based physics games, skill games based on, 171
U
Ubisoft lawsuit, 257
Ultima Online, vulnerability to server piracy, 66
UltimateBet.com online poker site, 122, 126
Ultimate Online Baseball MMO, 199
ultra-violence, explained, 202
uncertainty, managing, 15–17
Unreal (Epic Software), popularity of, 50
usage controls, overview of, 304–306
USB tokens, use of, 149
used games market
anti-piracy strategies for, 61
revenue generated by, 60
user account system, inclusion in game services, 341
user-created content, overview of, 217–218
user types, categorizing for license policies, 52
U.S., legal requirements for privacy protection, 309
W
wallhack, explained, 142
Wardell, Brad (Stardock), 24–25
watermarking DRM system
attacks on, 48
using, 47
“Web Fraud 2.0,” (B. Kreb), 149–150
web of trust, problem with, 301
whitelist authorization service, supporting, 338–339
whitelist chat services, using for children, 317
whitelists versus blacklists, 151
Wikipedia, attacks on, 362
Wire Act, 331
word games, 169–170
WOW (World of Warcraft), 217
attack by Sony BMG’s Rootkit, 18
authentication token for, 4
licensing of, 69
player collusion in, 128–129
race condition in, 156
Sony BMG Rootkit used with, 151
using Glider tool with, 147–148
X
Xbox 360 console (Microsoft), attack on, 33–34, 56
Xbox Live, internal security problems with, 352–353
V
Y
validation
considering in license policies, 53
importance of, 41
Valve’s Steam service (SiN Episode 1), 24
verification functions, replacing with NOOP
instructions, 140
video game consoles versus DVD players, 62
virtual currency, conversion into money, 130
virtual items, ownership of, 228–229
virtualization tools, use of, 120–121
virtual prostitution
explained, 240
problem with Habbo Hotel, 240
virtual terrorism, 359–360
virtual worlds, attacks on, 359–360
Vote synchronization model, explained, 113
V: Registration Value option, explained, 94
vulnerabilities, impact on protection, 12–13
Yee, Nick, 225
YouTube threat, 148
Yulgang (MGame), 130, 269
Z
zero-sum scoring, 200
Download more eBooks here: http://avaxhome.ws/blogs/ChrisRedfield