AntiCheating Mechanisms for Computer Games - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

AntiCheating Mechanisms for Computer Games

Description:

Cheats have been around about as long as video games have, but early on these ... Hard coded hacks earliest form of hacks, uses modified game files to cheat. ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 13
Provided by: csU75
Learn more at: http://cs.uccs.edu
Category:

less

Transcript and Presenter's Notes

Title: AntiCheating Mechanisms for Computer Games


1
Anti-Cheating Mechanisms for Computer Games
  • Michael Rudolph
  • Jason Cook

2
Brief history of cheating
  • Cheats have been around about as long as video
    games have, but early on these were inserted by
    the developer to aid in debugging
  • Only become a problem when games were starting to
    be played over Internet around early to mid-90s
  • Developer released patches to fix these cheats
    along with other bugs that may have been in the
    game
  • Anti-cheating mechanism a major concern for
    developers after Counter-strike created and
    released in 2000

3
Techniques for cheating
  • Hard coded hacks earliest form of hacks, uses
    modified game files to cheat. Used in games as
    early as Doom because of the monolithic
    architecture of the game. Easily defeated by
    checking file sizes and config files for known
    cheats before joining game server
  • OpenGL driver hacks modifies OpenGL graphics
    driver on client machine. Allows for wallhacks by
    altering driver so that they are drawn
    transparently, disabled smoke/flashbang effects,
    also disables fog of war in RTS games.
  • Client DLL hooks most popular form of gaming
    hack now, due to its relative difficulty to
    detect. The game is loaded through an external
    client loading program, which injects or hooks
    DLL cheat instructions into game code at
    execution time. This is the type of cheat that
    will be covered in detail.

4
Why do games use .DLLs?
  • A dynamic link library (.DLL) is a collection of
    small programs, any of which can be called when
    needed by a larger program.
  • Saves space in memory because .DLLs don't get
    loaded into RAM with the main program. A .DLL
    file is loaded and run if and when needed. .DLL
    files are dynamically linked with the program
    that uses them during program execution rather
    than being compiled with the main program.
  • When the functions in a .DLL change, the
    applications that use them do not need to be
    recompiled or relinked as long as the function
    arguments, calling conventions, and return values
    do not change.
  • .DLLs provide a way to modularize applications so
    they can be loaded, updated, and reused more
    easily.
  • APIs such as OpenGL and DirectX implemented
    through .DLLs.

5
How are client hooks developed?
  • Required knowledge of C/C programming and
    assembly new would-be hackers often told to
    start learning C and ask again in a year
  • Knowledge of OpenGL and DirectX APIs also very
    useful
  • Some game develop SDKs for the purpose of
    fostering a mod community helps in finding
    out information for developing hacks
  • Not releasing SDKs for games not necessarily a
    preventative measure for cheating games have
    been hacked since original DOOM, when only
    relatively sparse user creation tools were
    created (custom skins, level builder, but no way
    to develop total conversions)
  • Tutorials available for creating DLL hacks
  • Client loading executables for injecting cheat
    code at runtime also available on Internet

6
How a Client Hook Works
  • Client Hook detours execution to do what the
    hacker wants to do then trampolines execution
    back to the program
  • Picture from http//wiki.counter-hack.net/howhacks
    work

7
Solutions to cheats?
  • Obfuscate .dll files Q3 based games have done
    this by changing them to .qvm files hooks still
    available for games that use .qvm
  • PunkBuster third-party utility used by many
    recent titles. Acts kind of like an anti-virus
    program in that it scans the games memory space
    for known hacks, and kicks players upon finding
    cheats
  • Early attempts to defeat PunkBuster attacked PB
    itself EvenBalance responds by issuing a
    global ban on hard drives that have used PB
    attacks
  • Current hacks simply try to spoof PB to avoid
    this risk

8
End Result
9
End Result
10
End Result
11
End Result
12
Conclusion
  • Constant back and forth battle between hackers
    and developers hackers develop cheat,
    eventually is discovered and fixed by developers,
    hackers develop more sophisticated hack, etc.
  • Recent development Quake III source code
    released under GPL August 2005. End of security
    through obscurity for Q3 engine?
  • Hacks still being developed for Q3 engine based
    games new WET hacks released as recent as one
    week ago
  • Hacks for recent id games (Doom 3, Quake 4) few
    and far between only OpenGL hacks available as
    of now.
Write a Comment
User Comments (0)
About PowerShow.com