On Mon, Nov 16, 2009 at 5:11 PM, Sander Temme <scte...@apache.org> wrote:
> Hi Kevin,
>
> Definitely not the right list: this is where we discuss development of the 
> Apache HTTP Server code.  us...@httpd.apache.org may be a better forum within 
> apache.org.  Outside Apache, several initiatives exist to look into hardening 
> web servers.  The Center for Internet Security <http://www.cisecurity.org/> 
> is one of them.
>
> On Nov 16, 2009, at 8:42 AM, Sweere, Kevin E CTR USAF AFRL/RYT wrote:
>
>> I work for the US Air Force.  We have a prototype that dramatically,
>> fundamentally increases a web server's security.
>>
>> We run an Apache server within a minimized, user-level-only, Linux variant
>> only within RAM and from only a DVD (no harddrive).  With no shells, hackers
>> have nowhere to go.  With no persistent memory, malware has no place to
>> reside.  A simple reboot restores the website to a pristine state within
>> minutes.
>
> I agree.  Putting the entire OS and content on a read-only device (whether 
> DVD or otherwise) significantly reduces your exposure to attacks for all 
> these reasons.  The OS will need *some* writable space (like /tmp and 
> /var/run), but I assume you made like Knoppix and Ubuntu Live and their ilk, 
> and use RAM disks for that.
>
>> Because a LiveDVD holds the OS, apps and content, its best for static,
>> non-interactive, low-volume, high-value, highly-targeted websites.  Any
>> change means burning a new DVD, but this also makes testing easier and less
>> noisy.  Logs are tricky to extract.
>
> You could write logs to a RAM disk, with obvious implications on retention.  
> Or you could spool them to another server either through a network mount or 
> mod_log_spread.  The httpd configuration language allows you to put log files 
> in any place you like, and there are several approaches to rotating log files 
> if space is an issue.  Or you can use a third party module to write logs like 
> the aforementioned mod_log_spread, which is not part of httpd itself.
>
>> While it has worked well, some of us believe its usability drawbacks (e.g.
>> limited ability to receive input from users, every change needs a new DVD)
>> outweigh its great security benefits making it unmarketable (in govt or
>> industry) and thus just another prototype to leave on the shelf.
>
> You are in for a perpetual war between Operations (whose pager goes off when 
> things break) and dev (whose time-to-market is implicated by the fixed 
> environment).  You could mitigate that problem by reading site content from a 
> remote machine, either continuously over a network mount or by copying it 
> into a RAM disk on boot.  The former might be slower, but would allow for 
> more frequent site updates.  It's a trade-off, as usual.
>
> Keeping the remote mount read-only (even for root) will allow you achieve 
> your goal of a read-only environment.
>
> More comprehensive upgrades that would involve adding modules or changing 
> configuration parameters should trigger a change management process that 
> would lead to an update of the boot image.
>

You could just mount everything ro from a remote host then, even the
config for example, could be mounted from a remote host.

I guess a rw usb key with OS + config would work too if you can
somehow force it ro only when booting from it.

>> I'm curious what your group thinks.  Thanks in advance -- I don't quite know
>> with whom to discuss this idea.
>
> As Mark points out, this would be very secure but very hard to manage, and my 
> impression is that time-to-market pressure and available expertise frequently 
> cause ideas like this to fall by the wayside.
>
> Fundamentally, booting web heads from a read-only medium like an optical 
> drive or PXE is a sound idea.  Any initiative, installation method or 
> distribution that makes this easier to manage might increase adoption.
>
> S. <bikeshed>I'd base it on BSD though</bikeshed>
>
> --
> Sander Temme
> scte...@apache.org
> PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF
>
>
>
>

Thats all that comes to mind atm.

Jorge

Reply via email to