Multi-threaded detection of a game software debugger
First Claim
Patent Images
1. A method comprising:
- executing a game application on a first game thread of a system;
implementing a debugger detector on a second thread of the system, wherein the second thread differs from the first game thread and is separated from the first game thread by a thread boundary;
determining if a debugger is attached to the game application;
if it is determined that a debugger is attached to the game application;
hindering performance of the detected debugger, the hindering comprising halting a third thread that is randomly selected from a simulated thread pool of the system.
2 Assignments
0 Petitions
Accused Products
Abstract
An anti-debugging mechanism is implemented into a game application, such that the anti-debugging mechanism is difficult to detect, difficult to bypass, and difficult to remove. The anti-debugging mechanism is implemented in a simulated thread pool. The anti-debugging mechanism executes on a different thread than the thread on which the game application executes and is randomly activated. When a debugger is detected, the performance of the debugger is hindered by halting the game application on a different thread than the game thread. Further, a period of time is allowed to elapse before the game application is halted.
25 Citations
18 Claims
-
1. A method comprising:
-
executing a game application on a first game thread of a system; implementing a debugger detector on a second thread of the system, wherein the second thread differs from the first game thread and is separated from the first game thread by a thread boundary; determining if a debugger is attached to the game application; if it is determined that a debugger is attached to the game application;
hindering performance of the detected debugger, the hindering comprising halting a third thread that is randomly selected from a simulated thread pool of the system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A device comprising:
-
memory comprising executable instructions; a game application implemented on a first thread of the device, a debugger detector implemented on a second thread of the device, the second thread separated from the first thread by a thread boundary; and a processor coupled to the memory, the processor configured to execute the executable instructions to; determine if a debugger is attached to the game application; and if it is determined that a debugger is attached to the game application, obfuscate execution of the game application by shutting down a third thread that is randomly selected from a simulated thread pool of the system. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable storage medium that is not a signal, the computer-readable storage medium having stored thereon computer-executable instructions for performing the steps of:
-
utilizing a debugger detector to determine if a debugger is attached to a game application executed on a first thread of a system, the debugger detector implemented on a simulated thread that differs from the first thread; and if it is determined that a debugger is attached to the game application;
hindering performance of the detected debugger, the hindering comprising halting a third thread that is randomly selected from a simulated thread pool of the system. - View Dependent Claims (18)
-
Specification