tgnb - care to provide some evidence to back up your implied claim? Any data that shows that open source software has a history of fewer vulnerabilities?
In fact, all the available data suggests that neither closed nor open source provides any benefit, security wise, over the other.
Anyway, that is kind of beside the point. This design flaw in Windows has been known both by those inside and those outside of Microsoft for several years. I first realized it in 1997, when I first started doing Win32 programming for the first time.
I guess this can be considered Microsoft's "dirty little secret", but it's not really a secret, and this author isn't even close to the first one to discover it.
What the author kind of glosses over is that this exploit requires an application to swallow all access exceptions, and continue running. This isn't the case with most applications in my experience, although there certainly are some.
Not to mention the fact they must be written incredibly poorly to begin with. One of the first things Win32 programmers learn is to NOT display windows to a unprivledged user from a process with higher privledges. In other words, your GUI should NOT run in the same process space as your service, which may run as system.
The author of this article is almost sneaky in the way he cites Virus Scanner, since that's a very common program that just so happens has a very uncommon design flaw.
As administrators discover vulnerable applications, they will demand patches. In addition, as time goes by, Windows will become 100% managed.
In the near future, all but a few legacy apps will be 100% managed code, and thanks to this managed code, access violations will be caught and dealt with not by the application, but by the CLR. The CLR can they have a policy that will prohibit this kind of attack fairly easily.
What is more, no sane administrator allows guest access on their machines. This flaw can *not* be exploited via HTTP (therefore IIS is safe), nor can it be exploited via COM+, or any other remote service for that matter. You must have access to the desktop; that is rare.
So, in summary, this is bad. But it's not a flaw that cannot be fixed. A combination of diligent administration and the migration to near 100% managed code, will solve this worrisome problem.
This post was edited by RMD on Tuesday, August 06, 2002 at 23:08.
|