Hi! What would you guys think about dropping support for multiuser installs? By multiuser I don't mean DGL or system-wide installs, it's solely about traditional Unix systems where multiple people share bones and scores.
Rationale: * shared servers are almost dead, people at most have /home mounted over NFS/SMB/... from a remote server on multiple computers rather than logging on remotely to a single system * it's a gaping security hole. You can alter a number of files in /var/game/crawl/ (or wherever the maintainer put them) which can be used to either subvert someone's game or to make a more serious attack. And with Crawl being setgid, any issue in our large codebase means you get access to the "games" gid, which means it is easy to corrupt Crawl or any other game using this scheme, likely being able to execute arbitrary code as another user who dares to run Crawl. There's about no validation of files being read, too. Thus, there are two ways we can go: * a thorough security audit * dropping anything that can potentially break security Note that 0.7 allows placing saves and the db cache in ~/.crawl/, which wastes some disk space but stops trivial attacks -- you could just plant some lua and have it do everything you want. With that change you'd need some overflow or the like, which is harder to do. This feature was quite experimental but at least Debian packaging uses it. I'd suggest moving all such data (bones, scores, logfile, morgues) there as well. Bones could be shared with some sort of local Hearse, they are easy to validate and we could add some capping to limit malicious forged bones somehow (no Firestorm on D:4 ghosts, etc). Scores would be a lost cause altogether, though. Do we care about such shared systems at all anymore? -- 1KB // Microsoft corollary to Hanlon's razor: // Never attribute to stupidity what can be // adequately explained by malice. ------------------------------------------------------------------------------ Centralized Desktop Delivery: Dell and VMware Reference Architecture Simplifying enterprise desktop deployment and management using Dell EqualLogic storage and VMware View: A highly scalable, end-to-end client virtualization framework. Read more! http://p.sf.net/sfu/dell-eql-dev2dev _______________________________________________ Crawl-ref-discuss mailing list Crawl-ref-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/crawl-ref-discuss