Saros Mod Checker ist ein technisches Server-Utility, das entwickelt wurde, um Konsistenz und Sicherheit zu gewährleisten, indem es die Mod- und Ressourcenpaket-Listen verbundener Clients inspiziert. Es arbeitet über einen dedizierten Netzwerk-Kanal-Handshake und ein Laufzeit-Verifizierungssystem.
Verifizierungs-Logik
- Handshake: Bei der Verbindung validiert der Server, dass der Client die Mod installiert hat.
- Daten-Anfrage: Der Server sendet ein Paket und fordert die Liste der aktuell geladenen Mods und aktiven Ressourcenpakete des Clients an.
- Validierung:
- Timeout: Antwortet der Client nicht innerhalb von 10 Sekunden, wird die Verbindung getrennt.
- Blacklist-Prüfung: Der Server gleicht die empfangenen Daten mit der serverseitigen Konfiguration ab. Jedes Element wird nach Dateinamen (Teilübereinstimmung) und SHA-256 Hash (exakte Übereinstimmung) geprüft.
- Durchsetzung: Die Verwendung eines gelisteten Elements führt zu einer sofortigen Trennung der Verbindung mit einer spezifischen Begründung.
Server Konfiguration
Die Blacklist wird über eine JSON-Datei unter config/sarosmodchecker-blacklist.json verwaltet.
{
"blacklistedNames": [
"xray",
"cheat-client"
],
"blacklistedHashes": [
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
]
}
blacklistedNames: Eine Liste von Strings. Wenn ein Mod- oder Ressourcenpaket-Dateiname einen dieser Strings enthält (Groß-/Kleinschreibung ignoriert), wird er markiert.blacklistedHashes: Eine Liste von SHA-256 Hashes. Ermöglicht das präzise Blockieren spezifischer Datei-Versionen, unabhängig vom Dateinamen.
Mod-Listen Export
Bei jedem Serverstart generiert die Mod automatisch einen vollständigen Bericht aller geladenen Server-Mods.
- Pfad:
[ServerRoot]/modlist.md - Inhalt: Eine Markdown-Tabelle mit Mod-Name, ID, Version und dem SHA-256 Hash der JAR-Datei.
Administration
/checkclientmods <player>- Berechtigung: OP Level 2
- Funktion: Fragt die Verifizierungsdaten für einen spezifischen Online-Spieler ab.
- Ausgabe: Listet alle installierten Mods und aktiven Ressourcenpakete samt ihren SHA-256 Hashes im Chat auf. Dies ist nützlich für die manuelle Überprüfung verdächtiger Spieler oder das Debuggen von Hash-Konflikten.
Hinweis: Dieses Wiki dient als Dokumentation. Für aktive Diskussionen tritt bitte dem Discord-Server bei.