Thanks to visit codestin.com
Credit goes to github.com

Skip to content

williammuji/AntiCheat

Repository files navigation

AntiCheat System

Anti-cheat system for MMORPG games with multi-layered detection and sensor-based architecture.

Sensors

Weight Execution Time Sensors Purpose
LIGHT 0-10ms AdvancedAntiDebugSensor, SystemCodeIntegritySensor, IatHookSensor, VehHookSensor Quick system integrity checks and API hook detection
HEAVY 100-1000ms ThreadAndModuleActivitySensor, MemorySecuritySensor Deep system analysis with time-budgeted scanning
CRITICAL 1000-10000ms ProcessHandleSensor, ModuleIntegritySensor, ProcessAndWindowMonitorSensor Intensive segmented scanning with cursor-based approach

AdvancedAntiDebugSensor

  • PEB Debug Flags: Detects debugger presence via Process Environment Block
  • Debug Registers: Monitors hardware debug registers (DR0-DR7)
  • Kernel Debugger: Detects kernel-level debugging tools
  • Remote Debugging: Identifies remote debugging connections

SystemCodeIntegritySensor

  • System File Integrity: Verifies critical system files haven't been modified
  • Driver Signing: Checks for unsigned or malicious drivers
  • System Call Hooks: Detects kernel-level API hooking
  • Boot Configuration: Validates secure boot and system configuration

IatHookSensor

  • Import Address Table Analysis: Scans for API function redirections
  • DLL Injection Detection: Identifies malicious DLL loading
  • API Hooking: Detects function interception techniques
  • Module Tampering: Verifies legitimate module loading

ProcessAndWindowMonitorSensor

  • Process Enumeration: Monitors running processes for suspicious activity
  • Window Title Analysis: Scans for cheat-related window titles
  • Process Tree Analysis: Tracks parent-child process relationships
  • Suspicious Launch Detection: Identifies cheat tool startup patterns

ModuleIntegritySensor

  • Code-Section Baseline: Computes and compares baseline hash of executable code sections to detect tampering
  • Self/Third-Party Tampering: Reports integrity violations for both anti-cheat and other loaded modules

ProcessHandleSensor

  • Handle Enumeration: Scans process handles for suspicious access
  • Handle Duplication: Detects handle duplication techniques
  • Cross-Process Access: Monitors inter-process communication
  • Privilege Escalation: Identifies privilege escalation attempts

ThreadAndModuleActivitySensor

  • Thread Start Address Validation: Reports threads whose start address resides outside legitimate modules
  • New Module Verification: Verifies signatures of newly observed modules and records results
  • Time-Budgeted Scanning: Enumerates threads/modules with rotating cursors and budget checks

MemorySecuritySensor

  • Private Exec (Non-Module): Flags non-module exec regions with configurable size bounds
  • Hidden Exec Heuristic: Lightweight MZ/access probe for PE-like regions

VehHookSensor

  • Vector Exception Handling: Monitors exception handling mechanisms
  • Exception Filtering: Detects exception-based hooking techniques
  • Debug Exception Handling: Monitors debug-related exceptions
  • Advanced Hooking: Identifies sophisticated hooking methods

Build

Prerequisites

  • Visual Studio 2017 or later (with C++ development tools)
  • CMake 3.15 or later
  • Git (for vcpkg dependency management)
  • PowerShell 5.1 or later (for build scripts)
  • Protocol Buffers (automatically managed by vcpkg)

Quick Start (Recommended)

# build with vcpkg (recommended)
.\scripts\build.ps1 -BuildType Release -Arch x64 -UseVcpkg

# build without vcpkg (requires manual protobuf installation)
.\scripts\build.ps1 -BuildType Release -Arch x64 -ProtobufRoot "C:\path\to\protobuf\install"

Manual Build

mkdir build-x64 && cd build-x64

cmake .. -G "Visual Studio 17 2022" -A x64 -DProtobuf_ROOT="C:\path\to\protobuf\install"

cmake --build . --config Release

Example

#include "CheatMonitor.h"

// Initialize
sCheatMonitor.Initialize();

// Player login
sCheatMonitor.OnPlayerLogin(userId, userName);

// Player logout
sCheatMonitor.OnPlayerLogout();

// Shutdown
sCheatMonitor.Shutdown();

About

Anti-cheat for MMORPG games

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published