Skip to content

feat: add baseline anti-cheat guards - #31

Open
jianmosier wants to merge 1 commit into
javelin-anticheat:mainfrom
jianmosier:codex/baseline-anticheat-2
Open

feat: add baseline anti-cheat guards#31
jianmosier wants to merge 1 commit into
javelin-anticheat:mainfrom
jianmosier:codex/baseline-anticheat-2

Conversation

@jianmosier

Copy link
Copy Markdown

Issue

Closes #2

Summary

  • replaces the native client with buildable baseline anti-cheat guards for debugger detection and suspicious process detection
  • keeps Windows native checks through IsDebuggerPresent, CheckRemoteDebuggerPresent, and ToolHelp process enumeration, with POSIX fallbacks so CI can compile and smoke-test the client
  • adds a dependency-free Python monitor with the same debugger/process checks
  • adds regression tests for suspicious-process matching, debugger detection, detection priority, and exit-code behavior
  • documents exact run/test commands

Acceptance criteria

  • Application exits when a debugger is detected.
  • Application exits when a suspicious process is found.
  • Works for both C++ client (AntiCheat.cpp) and Python monitor (anti_cheat.py).

Demo / verification

Native client smoke run:

[Javelin AntiCheat] starting checks...
[Javelin AntiCheat] All clear. Continue.

Python monitor smoke run:

[Javelin AntiCheat] All clear

Validation

  • python3 -m unittest discover -s tests
  • python3 -m py_compile anti_cheat.py tests/test_anti_cheat.py
  • c++ -std=c++17 -Wall -Wextra -pedantic AntiCheat.cpp -o /tmp/javelin-anticheat-check
  • /tmp/javelin-anticheat-check
  • git diff --check

/claim #2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Implement Basic Anti-Cheat Protection

1 participant