1. Process the data detected by HackShield. Define each case in compliance with the game rules. For more information on each case, refer to "AhnLab HackShield 2.0 Programming Guid: 2.4.Application Programming Interface".
2. This is when a hacking program or potentially harmful program is detected. Notify the name of the detected program to the user. Show a message and terminate the game client.
3. this is when HackShield has detected hacking tools related to AutoMacro. Terminate the game Client.
4. It is recommended not to show a message box or error message.. If necessary, record logs. In case of AHNHS_ACTAPC_DETECT_ALREADYHOOKED, some APIs are already hooked, and hooking may be maed in some normal programs including security programs. In case of AHNHS_ACTAPC_DETECT_AUTOMOUSE, callback will not be called because it is a protection function, not a detection function.
5. This is when a speed hack is suspected. It is highly likely that it is a speed hack. Show a message, and judge whether to terminate the game client depending on the game developer's policies.
6. This is when there is debugger trace. It is highly likely that debugging is currently being made for the game program. Show a message and terminate the game client.
7. This is when an error occurred in the message hooking or module change feature. Show a message and terminate the game client.
6 Test and Distribution
Compile the project and create a game client.
Create HShield folder under the game client folder.
ex) …[Game Directory]HShield
Copy files under BinHShield folder to HShield folder.
Verify whether HackShield functions normally by running the game client and conducting some tests:
Case 1. Execute Process Explorer and check whether dll information is displayed.
Case 2. Rename EhSvc.dll file in HShield, and check whether it is detected.
Case 3. Start a hacking tool and check whether it is detected.
If no error is found, pack executable files.
Prevent easy debugging of the executable file using a packer.
HackShield provides a basic upx packer.
ex) upx.exe –f Source.exe –o Output.exe
It is recommended to apply server-side detection as well. (Refer to Quick Guide for Server-side
Detection.)