From: Eivind Eklund Date: 2008-05-08T18:41:58+09:00 Subject: Re: In order to cross platform, Ruby is designed to be interpreted in runtime, so Ruby code is exposed on the server. This brings a security danger which is not acceptable. On Wed, May 7, 2008 at 9:11 AM, Phillip Gawlowski wrote: > There's security, and then there's security theater. > > Ah production server should only run what's needed, anyway. That is the > main reason not to have dev tools running on them (though, have fun > trying to remove all text editors on a *NIX machine, and the Shell which > probably is Turing complete): Reducing the exposed surface area. I agree with reducing exposed attack surface. I have a different way of thinking about what constitute attack surface, though: I think in terms of available security capabilities. In terms of this, a compiler is equivalent to a file write to a file where you can set the x (execute) bit, plus a few megabytes of diskspace. Unless you restrict these, compiler access is a VERY minor hurdle. So - consider it against convenience. I'd rather have my production machines easy to deal with for me (which makes it more likely that I maintain them in a way that block attacks) than adding such a minor hurdle for attackers. I'll add other, major hurdles instead, like putting a non-breakable chroot around processes that are network-accessible and could likely contain flaws. Eivind.