Skip to content

Security: intqwq/mcsvr

Security

docs/security.md

Security model

mcsvr assumes the local OS account is trusted to administer every configured instance. It is not a multi-tenant control plane and exposes no remote API.

  • RPC binds to loopback and authenticates with a random token.
  • Commands are newline-validated before process stdin.
  • Non-local actors are denied unless a rule explicitly allows them.
  • Downloads reject HTTP; published or user-supplied checksums are verified.
  • Mod/plugin discovery is loader- and game-version-scoped; Modrinth-published hashes are checked, and required dependencies are resolved recursively.
  • ZIP/TAR extraction rejects traversal and archive links.
  • Instance/runtime names cannot become arbitrary paths.
  • Anti-cheat templates interpolate only a Minecraft-format player capture.

Run one daemon per OS account. Do not share its token, database, or data directory over a writable network share. For remote administration, use SSH or another authenticated host-management channel instead of exposing the daemon.

Start new detection rules in alert mode and inspect events before enabling automatic kick or ban actions. Keep an appeal process; false positives are possible.

Curated anti-cheat choices are convenience presets, not endorsements. Review the publisher and release notes, stage updates, and keep known-good backups.

There aren't any published security advisories