[Am-info] MS Security flaw
Eric M. Hopper
hopper@omnifarious.org
08 Aug 2002 10:29:21 -0500
On Thu, 2002-08-08 at 08:56, John J. Urbaniak wrote:
> Well, his description of WM_TIMER, where if you pass a second parameter
> which translates into a memory address and the system jumps to that address
> and executes code, is most interesting to me.
I actually consider this a horrible example of coding. It completely
breaks the abstraction layer between the application and the OS. It's
totally wrong.
Sadly, it's very typical of how things are done in a Microsoft
environment. After learning this about the API in Windows 3.1, I was
sure that they're OSes would always be horribly buggy and crash prone.
By extension, that means they're also full of security holes.
> I suspect this kind of coding lies at the heart of Microsoft's ability to
> arbitrarily break non-MS apps, and to make MS apps perform better.
>
> I suspect Microsoft makes extensive use of this capability in its own
> apps. I suspect they have secret files of code which perform better than
> the APIs they document for other developers. They obtain the addresses of
> this code and pass the address using variables like this second parameter.
>
> One of the greatest features of Java, IMO, was the elimination of
> pointers. But Microsoft includes pointers in C#. I had wondered why they
> were so insistent on including pointers.
>
> I suspect this is the reason.
Perhaps it is. I actually am quite fond of pointers myself. But, they
don't really belong in C# or Java.
Have fun (if at all possible),
--
The best we can hope for concerning the people at large is that they
be properly armed. -- Alexander Hamilton
-- Eric Hopper (hopper@omnifarious.org
http://www.omnifarious.org/~hopper) --