Muutke küpsiste eelistusi

E-raamat: Game Hacking

  • Formaat: EPUB+DRM
  • Ilmumisaeg: 01-Jul-2016
  • Kirjastus: No Starch Press,US
  • Keel: eng
  • ISBN-13: 9781593277819
  • Formaat - EPUB+DRM
  • Hind: 32,03 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 01-Jul-2016
  • Kirjastus: No Starch Press,US
  • Keel: eng
  • ISBN-13: 9781593277819

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Wish your favorite PC game had a more informative heads up display? What if you could instantly collect all that loot from your latest epic battle? You don't need to be a sorcerer to transform a game you like into a game you love. Just make a bot to do the grunt work for you!

If you're familiar with Windows-based development and memory management, then Game Hacking, provides all the tools and knowledge you need to become a true game hacker. Let veteran game hacker Nick Cano teach you the basics, including reverse engineering, assembly code analysis, programmatic memory manipulation, and code injection. Throughout the book, you'll hone your new skills with hands-on labs, dig into practice binaries, and learn to write your own bot.

Level up your toolbox with hacking techniques:

  • Scan and modify memory with Cheat Engine
  • Explore program structure and execution flow with OllyDBG
  • Log processes and pinpoint useful data files with Process Monitor
  • Manipulate control flow through NOPing, hooking, and more
  • Locate and dissect common game memory structures

Discover the secrets behind common game bots, including:

  • Persistent hacks, such as a heads up display
  • Responsive hacks, such as auto healers and combo bots
  • Bots with artificial intelligence, such as cave walkers and automatic looters

Game hacking might seem like black magic, but that doesn't mean it's evil. When you know how bot makers create bots and why they do it, you'll be empowered to discourage and defend against bots in your own games!

Journey through the inner workings of PC games, and come away with a deeper understanding of both game design and computer security.

Arvustused

Game Hacking contains more than just interesting material; it contains an education. Budding programmers and game designers will gain critical insights. Perhaps, for someone with the predisposition and the will to develop their skills, this book could even kick-start a new career. Josh Townsend, IT Security

"Game Hacking makes for both a great read straight through or as a desk reference when reversing games or abusing Windows process memory. I give the book 9 out of 10 stars, as probably one of the best technical computer security books I have read in a while." Dan Borges, LockBoxx

Foreword xv
Dr. Jared Demott
Acknowledgments xvii
Introduction xix
Prerequisites for the Reader
xx
A Brief Game Hacking History
xx
Why Hack Games?
xxi
How This Book Is Organized
xxii
About the Online Resources
xxiv
How to Use This Book
xxiv
Part 1 Tools Of The Trade
1 Scanning Memory Using Cheat Engine
3(20)
Why Memory Scanners Are Important
4(1)
Basic Memory Scanning
4(1)
Cheat Engine's Memory Scanner
5(3)
Scan Types
6(1)
Running Your First Scan
6(1)
Next Scans
7(1)
When You Can't Get a Single Result
7(1)
Cheat Tables
7(1)
Memory Modification in Games
8(3)
Manual Modification with Cheat Engine
8(1)
Trainer Generator
9(2)
Pointer Scanning
11(7)
Pointer Chains
11(1)
Pointer Scanning Basics
12(2)
Pointer Scanning with Cheat Engine
14(3)
Pointer Rescanning
17(1)
Lua Scripting Environment
18(4)
Searching for Assembly Patterns
19(2)
Searching for Strings
21(1)
Closing Thoughts
22(1)
2 Debugging Games With Ollydbg
23(26)
A Brief Look at OllyDbg's User Interface
24(2)
OllyDbg's CPU Window
26(5)
Viewing and Navigating a Game's Assembly Code
27(2)
Viewing and Editing Register Contents
29(1)
Viewing and Searching a Game's Memory
29(1)
Viewing a Game's Call Stack
30(1)
Creating Code Patches
31(1)
Tracing Through Assembly Code
32(1)
OllyDbg's Expression Engine
33(3)
Using Expressions in Breakpoints
34(1)
Using Operators in the Expression Engine
34(1)
Working with Basic Expression Elements
35(1)
Accessing Memory Contents with Expressions
36(1)
OllyDbg Expressions in Action
36(6)
Pausing Execution When a Specific Player's Name Is Printed
37(2)
Pausing Execution When Your Character's Health Drops
39(3)
OllyDbg Plug-ins for Game Hackers
42(5)
Copying Assembly Code with Asm2Clipboard
42(1)
Adding Cheat Engine to OllyDbg with Cheat Utility
42(1)
Controlling OllyDbg Through the Command Line
43(2)
Visualizing Control Flow with OllyFlow
45(2)
Closing Thoughts
47(2)
3 Reconnaissance With Process Monitor And Process Explorer
49(16)
Process Monitor
50(5)
Logging In-Game Events
50(2)
Inspecting Events in the Process Monitor Log
52(1)
Debugging a Game to Collect More Data
53(2)
Process Explorer
55(6)
Process Explorer's User Interface and Controls
56(1)
Examining Process Properties
57(2)
Handle Manipulation Options
59(2)
Closing Thoughts
61(4)
Part 2 Game Dissection
4 From Code To Memory: A General Primer
65(32)
How Variables and Other Data Manifest in Memory
66(12)
Numeric Data
67(2)
String Data
69(2)
Data Structures
71(2)
Unions
73(1)
Classes and VF Tables
74(4)
x86 Assembly Crash Course
78(18)
Command Syntax
79(2)
Processor Registers
81(5)
The Call Stack
86(3)
Important x86 Instructions for Game Hacking
89(7)
Closing Thoughts
96(1)
5 Advanced Memory Forensics
97(22)
Advanced Memory Scanning
98(7)
Deducing Purpose
98(1)
Finding the Player's Health with OllyDbg
99(2)
Determining New Addresses After Game Updates
101(4)
Identifying Complex Structures in Game Data
105(13)
The std::string Class
105(3)
The std::vector Class
108(2)
The std::list Class
110(4)
The std::map Class
114(4)
Closing Thoughts
118(1)
6 Reading From And Writing To Game Memory
119(14)
Obtaining the Game's Process Identifier
120(2)
Obtaining Process Handles
121(1)
Working with OpenProcess()
121(1)
Accessing Memory
122(2)
Working with ReadProcessMemory() and WriteProcessMemory()
122(1)
Accessing a Value in Memory with ReadProcessMemory() and WriteProcessMemory()
123(1)
Writing Templated Memory Access Functions
123(1)
Memory Protection
124(4)
Differentiating x86 Windows Memory Protection Attributes
125(1)
Changing Memory Protection
126(2)
Address Space Layout Randomization
128(2)
Disabling ASLR to Simplify Bot Development
128(1)
Bypassing ASLR in Production
128(2)
Closing Thoughts
130(3)
Part 3 Process Puppeteering
7 Code Injection
133(16)
Injecting Code Caves with Thread Injection
134(4)
Creating an Assembly Code Cave
134(1)
Translating the Assembly to Shellcode
135(1)
Writing the Code Cave to Memory
136(1)
Using Thread Injection to Execute the Code Cave
137(1)
Hijacking a Game's Main Thread to Execute Code Caves
138(4)
Building the Assembly Code Cave
138(2)
Generating Skeleton Shellcode and Allocating Memory
140(1)
Finding and Freezing the Main Thread
141(1)
Injecting DLLs for Full Control
142(5)
Tricking a Process into Loading Your DLL
143(2)
Accessing Memory in an Injected DLL
145(1)
Bypassing ASLR in an Injected DLL
146(1)
Closing Thoughts
147(2)
8 Manipulating Control Flow In A Game
149(40)
NOPing to Remove Unwanted Code
150(3)
When to NOP
150(1)
How to NOP
151(2)
Hooking to Redirect Game Execution
153(16)
Call Hooking
153(3)
VF Table Hooking
156(4)
IAT Hooking
160(5)
Jump Hooking
165(4)
Applying Call Hooks to Adobe AIR
169(6)
Accessing the RTMP Goldmine
169(2)
Hooking the RTMPS encode() Function
171(1)
Hooking the RTMPS decode() Function
172(1)
Placing the Hooks
173(2)
Applying Jump Hooks and VF Hooks to Direct3D
175(10)
The Drawing Loop
176(1)
Finding the Direct3D Device
177(5)
Writing a Hook for EndScene()
182(1)
Writing a Hook for Reset()
183(1)
What's Next?
184(1)
Closing Thoughts
185(4)
Part 4 Creating Bots
9 Using Extrasensory Perception To Ward Off Fog Of War
189(14)
Background Knowledge
190(1)
Revealing Hidden Details with Lighthacks
190(2)
Adding a Central Ambient Light Source
190(1)
Increasing the Absolute Ambient Light
191(1)
Creating Other Types of Lighthacks
192(1)
Revealing Sneaky Enemies with Wallhacks
192(5)
Rendering with Z-Buffering
193(1)
Creating a Direct3D Wallhack
194(2)
Fingerprinting the Model You Want to Reveal
196(1)
Getting a Wider Field of Vision with Zoomhacks
197(1)
Using NOPing Zoomhacks
197(1)
Scratching the Surface of Hooking Zoomhacks
198(1)
Displaying Hidden Data with HUDs
198(3)
Creating an Experience HUD
199(1)
Using Hooks to Locate Data
200(1)
An Overview of Other ESP Hacks
201(1)
Closing Thoughts
202(1)
10 Responsive Hacks
203(18)
Observing Game Events
204(7)
Monitoring Memory
204(1)
Detecting Visual Cues
205(1)
Intercepting Network Traffic
206(5)
Performing In-Game Actions
211(7)
Emulating the Keyboard
211(4)
Sending Packets
215(3)
Tying the Pieces Together
218(1)
Making the Perfect Healer
218(1)
Resisting Enemy Crowd-Control Attacks
218(1)
Avoiding Wasted Mana
219(1)
Closing Thoughts
219(2)
11 Putting It All Together: Writing Autonomous Bots
221(24)
Control Theory and Game Hacking
222(1)
State Machines
223(2)
Combining Control Theory and State Machines
225(7)
A Basic Healer State Machine
225(3)
A Complex Hypothetical State Machine
228(2)
Error Correction
230(2)
Pathfinding with Search Algorithms
232(9)
Two Common Search Techniques
233(1)
How Obstacles Disrupt Searches
233(1)
An A* Search Algorithm
234(6)
When A* Searches Are Particularly Useful
240(1)
Common and Cool Automated Hacks
241(3)
Looting with Cavebots
241(2)
Automating Combat with Warbots
243(1)
Closing Thoughts
244(1)
12 Staying Hidden
245(20)
Prominent Anti-Cheat Software
246(1)
The PunkBuster Toolkit
246(1)
Signature-Based Detection
246(1)
Screenshots
247(1)
Hash Validation
247(1)
The ESEA Anti-Cheat Toolkit
247(1)
The VAC Toolkit
247(1)
DNS Cache Scans
248(1)
Binary Validation
248(1)
False Positives
248(1)
The GameGuard Toolkit
248(1)
User-Mode Rootkit
248(1)
Kernel-Mode Rootkit
249(1)
The Warden Toolkit
249(1)
Carefully Managing a Bot's Footprint
250(6)
Minimizing a Bot's Footprint
250(1)
Masking Your Footprint
251(1)
Teaching a Bot to Detect Debuggers
251(4)
Anti-Debugging Techniques
255(1)
Defeating Signature-Based Detection
256(2)
Defeating Screenshots
258(1)
Defeating Binary Validation
259(2)
Defeating an Anti-Cheat Rootkit
261(1)
Defeating Heuristics
262(1)
Closing Thoughts
263(2)
Index 265
Nick Cano is a senior security engineer at Bromium, where he develops software to defend against advanced malware. He wrote his first scripts for open-source game servers when he was 12 years old and has been involved with bot development communities ever since. Cano maintains his own game bot company and advises developers and designers on best practices to discourage and protect their games against bots