Why are you not running Apache? New IIS holes should make you rethink your web server
It has been a while since I have played with Apache, I will admit that. The last time I used it, version 2.0 was the norm, and version 2.2 was just coming out of beta. Today of version 2.2.11 is the current version. What got me thinking about Apache was partially nostalgia and partially head banging and continued frustration with government use of IIS, especially given the exciting events this week.
First, we have reports of the theft and corruption of the Commonwealth of Virginia’s Prescription Monitoring Program web site. The story is that the site had been hacked, the data encrypted or deleted or being held hostage, according to a variety of sites, and the FBI is investigating. As discussed on the latest Search Engine, almost no one is really taking the ransom demand seriously for a variety of reasons. The second topic that got me annoyed was a ComputerWorld article yesterday about new, serious bugs in IIS and Microsoft’s prevailing attitude about the risk. Finally I had to set up an IIS server and kept lamenting that it should not be this hard.
Now, in all fairness, IIS 7 is supposed to be a much better product with text file configuration capability (just like Apache) and it is supposed to be more secure. My question is this. Why, would anyone voluntarily run their web site on IIS? Especially if it was a forward-facing site, connected to the Internet and subjected to attacks every minute of every day?
One of the most outstanding products from the Open Source community is Apache. It is robust, reliable, secure and easily configurable on so many levels. It runs on almost every platform out there, although personally I would only run forward-facing sites with Apache on a stripped and hardened Linux kernel, and it supports a wide variety of plugins for content management, application management and document presentation.
According to Netcraft, the hacked Virginia site is running IIS 5.0 and 6.0 on Windows 2000 and 2003. This violates a number of basic security tenants, patch management being only one of them, but I am continually amazed that government organizations continue to put their citizen’s data at risk this way. More and more, the United States government is collecting your personal data. TSA is about to start collecting your full name, birth date and other personally identifiable information (PII). The current administration is pushing for electronic medical records. Already many government services are only available on-line, and require large amounts of PII to be inputed to get everything from veteran’s benefits to government grants, yet it seems that each of the owners of these sites seems to be less concerned about the security of their customer’s data rather than the perceived ease of operation and cost of ownership by running IIS. There are more stringent security requirements on government laptops than there is on website security.
The Internet, and its interconnection of data, is a good thing. However the front door to these repositories should be as secure and as impenetrable as they can be. Gone are the days of gentlemen hackers who, when finding an unlocked door, would politely tell the site admin about it. This is full scale guerilla warfare, and as administrators and architects, it is our responsibility to make sure the crackers cannot get access to the data that they are not supposed have access to, while the customers can do what they need to do.
Next time we will talk about the data itself, and the databases that it resides on.