IPIECZĘĆ 01
Spis królewskiego klienta
Do czego służy? Podpisany manifest wyznacza wszystko, co wolno wnieść przez bramę klienta: binaria, biblioteki, paczki oraz zasoby.
- Sprawdza
- ścieżkę, rozmiar i SHA-256
- Wykrywa
- brak, podmianę oraz dodatkowy plik
- Reakcja
- bramy gry pozostają zamknięte
anticheat.manifest + .sig
IIWARSTWA 02
Runtime scanner
Do czego służy? Sprawdza to, czego sam manifest nie widzi: aktualny obraz procesu po załadowaniu gry do pamięci.
- Sprawdza
- DLL, PE, IAT/EAT, sekcje i wątki
- Wykrywa
- hook, manual-map, obcy kod
- Reakcja
- raport + fail-closed dla silnego sygnału
AntiCheatRuntime.cpp
IIIPIECZĘĆ 03
Strażnik klienta
Do czego służy? AsteriaWatchdog jest drugim procesem obserwującym klienta. Pilnuje, by ochrony nie dało się zgasić przez zatrzymanie lub spatchowanie samej gry.
- Sprawdza
- tożsamość, wydawcę i heartbeat
- Wykrywa
- zamrożenie lub zabicie monitora
- Reakcja
- zamyka klienta i emituje zdarzenie
AsteriaWatchdog.exe
IVPIECZĘĆ 04
Tarcza jądra
Do czego służy? AsteriaGuard.sys przenosi straż do jądra Windows, gdzie zwykły proces nie może swobodnie podmieniać callbacków ani otwierać klienta z niebezpiecznymi prawami.
- Sprawdza
- uchwyty i ładowane obrazy
- Wykrywa
- VM_WRITE, CREATE_THREAD, inject
- Reakcja
- odbiera prawa i zapisuje event
ObRegisterCallbacks
VWARSTWA 05
Challenge sesji
Do czego służy? Serwer tworzy nowy identyfikator, nonce i losowy klucz dla każdego połączenia. Raport z poprzedniej sesji staje się bezużyteczny.
- Sprawdza
- sessionId + serverNonce
- Wykrywa
- wstrzyknięty lub stary raport
- Reakcja
- protocol violation
StartSession(DESC*)
VIWARSTWA 06
HMAC raportu
Do czego służy? Wiąże wszystkie pola pakietu z kluczem bieżącej sesji. Po drodze nie można zmienić eventu, czasu ani skrótu dowodu.
- Sprawdza
- MAC w stałym czasie
- Wykrywa
- modyfikację lub fałszywy pakiet
- Reakcja
- raport zostaje odrzucony
HMAC-SHA-256
VIIWARSTWA 07
Heartbeat serwerowy
Do czego służy? Potwierdza, że klient nadal wykonuje kod raportujący. Brak raportów nie może być sposobem na „zniknięcie” antycheata.
- Sprawdza
- czas ostatniego poprawnego raportu
- Wykrywa
- ciszę dłuższą niż grace period
- Reakcja
- disconnect, nigdy sam ban
CheckHeartbeat(DESC*)
VIIIWARSTWA 08
Korelacja serwera
Do czego służy? Oddziela wykrycie od wyroku. Zestawia kilka świeżych sygnałów klienta z anomalią widzianą niezależnie przez logikę gry.
- Sprawdza
- liczbę, typy, score i świeżość
- Wykrywa
- zgodny wzorzec oszustwa
- Reakcja
- observe, kick albo tempban
EvaluateEnforcement()
IXPIECZĘĆ 09
Kronika dowodów
Do czego służy? Evidence log zapisuje audytowalny ślad: co, kiedy i w której sesji wykryto oraz jaki był stan serwerowej korelacji.
- Sprawdza
- event, seq, SID, digest, score
- Chroni
- przed banem bez uzasadnienia
- Reakcja
- materiał do review i odwołania
AC:event;seq;sid;sha256