Does IIS Have a Future?
By Tim Mullen
As the cashier at my local Safeway handed over the receipt for my groceries, she smiled and said "Thank you! You saved six dollars with your card!" Though I said "Thank you" back, I was really thinking "Yeah... Saved six bucks, and it only cost me $175."
Gartner Research, in their recommendation for corporations to dump IIS, is using the same flawed logic.
In a recent press release, the generally well-respected research and advisory firm is advising that companies hit by Nimda and Code Red "immediately seek alternatives" to Microsoft's IIS Web Server product due to its history of security vulnerabilities.
It is a bad idea.
Not that IIS hasn't had its share of issues; it certainly has. But so has everything else out there. Every operating system and every web server application has had security holes, and they will have them in the future.
But switching from vendor to vendor when problems arise is no solution. The solution is to learn how to secure what you have.
There is no such thing as a perpetually secure solution. There is no such thing as an "install and forget" web application; not when security is a goal. Auto-updaters and the like may help, but they will not take the place of a policy of management, audit, and continued education.
Commercial drivers must undergo special training and acquire job-specific licenses to operate a vehicle on our highways. I can see the day coming where a government regulatory commission will be formed to enforce the same protocol for companies when they choose to plug in to the Internet. I'm not saying I like it, I just see it coming.
If you got hit by Nimda (the IIS specific segments) and Code Red, you had people who either did not know how to secure IIS, or they simply chose not to. That is the bottom line, as crass as it may sound.
PATCH EARLY, PATCH OFTEN. I have heard all the arguments regarding the level of difficulty in rolling out patches to hundreds, or even thousands of IIS systems, but the same thing would have to be done no matter what solution your company chose when it came time to apply a patch. I'm not discounting the chore of applying fixes to large installations-- in some companies the task can be Herculean. But nobody said this would be easy.
You cannot compare the security of Apache running on a Linux box to IIS on Win2k. You can only compare the knowledge of the people who are implementing the different systems.
While there are aspects of the *nix architecture that do make applications on those platforms inherit a certain type of security, there are options available in the Win32 world that perform similar functions.
You can't just yank IIS and stick in iPlanet as if you are buying a new pair of shoes. The idea that you can is quixotically naove. The level of direct integration of IIS with other Microsoft technologies is so deeply fused into corporate infrastructures that a move from it would start the dominos of application monoliths falling until they smacked right into your bank account. Data driven web applications, certificate services, Exchange and Outlook Web Access, authorization structures, server clustering, load balancing, and integrated vendor solutions would only be a few of the many technologies you would have to modify or replace altogether.
IIS is not hard to secure. In fact, if you know how, it is actually pretty easy. The configuration recommendations that would have saved you from Code RGB, the IIS vectors of Nimda, as well as other general purpose worms and attacks have been readily available for years... Not days or months, but years. And they are not locked away in some dank cell, scratched cryptically on the wall for viewing by an elite few after passing some ceremonial test of technical prowess. they are readily available on a plethora of sites sprawled all about the world.
THE GRASS ISN'T GREENER. I think the Gartner recommendation also trivializes the complexities of the open system architectures. Being a Microsoft person, this is a bit hard to say, but I've always felt that the *nix, Solaris, and *BSD gurus have had a technical leg-up on us Windows guys. These systems take you far closer to the real action, and can be far more difficult to work with. I'm not saying *nix administrators are necessarily smarter than the rest of us, but I do think they are more "robust."
While their hand-to-hand combat experience and depth of knowledge will most likely help *nix guys when interacting with MS systems, I'm not so confident that it will work the other way around. One thing is for sure: If you've got an admin that can't secure a Microsoft web server, then your chances of having them secure a Solaris installation will be slim.
None of this is meant to minimize Microsoft's responsibility to manufacture secure products. But this "grass is greener" mentality has got to change. All it does is obviate the administrators from their due diligence when configuring a system. No matter what solution gets deployed, when your company connects a box to the Internet, you must become part of the security community.
You must subscribe to notification lists, and you must participate (or at least lurk) in security newsgroups and mail lists specific to your applications. Your investment in joining the global marketplace cannot stop at a server, a circuit, and some web pages; you must invest in the education of your sys-admins, or invest in a professionally deployed solution with maintained support and monitoring.
There have been enough knee-jerk reactions to security issues of late. Let's not make this another one.
Timothy M. Mullen is CIO and Chief Software Architect for AnchorIS.Com, a developer of secure, enterprise-based accounting software.