Slashdot Log In
Image Handling Flaw Puts Windows At Risk
Posted by
Zonk
on Tue Nov 08, 2005 06:12 PM
from the don't-click-there dept.
from the don't-click-there dept.
An anonymous reader writes "Microsoft has released word that several image handling flaws may open Windows PCs to Spyware or viruses. From the article: 'We will continue to see this type of vulnerabilities in every major application for the foreseeable future ... It is not just images, but any type of complex file format. This is something that security researchers and hackers have realized to be a weak point in many applications.'"
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Huh? (Score:5, Funny)
Re:Time to switch to Macintosh (Score:5, Informative)
List of security updates for Mac OS X [apple.com]
Take for example Security Update 2005-008 [apple.com]
This update includes the following components:
ImageIO
LibSystem
Mail
QuickDraw
Ruby
SecurityAgent
securityd
Hmm. A security update that touches the ImageIO library?
p.s. before you flame/mod me into oblivion, I'm a happy Mac OS X user. Yes, Windows has way more bugs and a much worse security record. Is OS X invulnerable? No.
Parent
Re:Time to switch to Macintosh (Score:4, Interesting)
As an aside, this is where the the comment about "Macs have no viruses because they have low marketshare" holds some sway with me. I agree with everyone who says Macs are more secure than Windows, don't get me wrong. Once your code is running, it's much tougher to do anything to spread a virus in the same way that viruses spread in Windows. But part of it is that nobody really does the immense amount of reverse engineering necessary to write a virus or worm based upon an a published vulnerability. While, with Windows, an entire cottage industry has been built to figure that stuff out because there's money in it.
These things, as with many things in life, do not stem from one reason. Windows has viruses because of poor security. Windows has lots of viruses because of marketshare. Macs have fewer viruses because of better security. Macs have no viruses because of marketshare.
Parent
No. No. No. (Score:3, Insightful)
Apache hosts vastly outnumber everything else combined. Postfix/Sendmail/Qmail/Exim probably have 90% of the email server market. There are many more installations of MySQL than MSSQL. And yet, how many worms have you seen roaring through the Internet unstopped that affect those applications? By any count, relatively very few.
And yet the bad guys, who even have the full s
Re:Time to switch to Macintosh (Score:4, Informative)
Parent
DUPE (Score:4, Funny)
Windows has already had an image handling flaw!
Oh, it's Windows. False alarm.
Re:DUPE (Score:3, Informative)
If only there was some place that you could configure how posting dates are displayed. Perhaps in your user preferences [slashdot.org] somewhere...
Critical Bug? (Score:5, Insightful)
What is the likelihood that users won't patch their machines? (cough!)
From TFA:
Mehta doesn't expect the latest Windows flaws to be exploited in a widespread attack. "We're not bracing for any major worm or malware outbreak, but we do expect them to be used in targeted attacks," Mehta said. "There is user interaction required, there has to be someone sitting at the other end in order to be compromised."
Yeah, like viewing an image from usenet. No one ever does that.
Re:Critical Bug? (Score:3, Informative)
Re:Critical Bug? (Score:5, Funny)
Well, it went up on the slashdot mainpage, so that likelihood for a great number of users is a lot lower than it would have been.
The 35 users I'm responsible for just got an email instructing them on how to to do the patch, with links to the patch execs that now live on our local file server.
This model -- (1) Microsoft announces it; (2) I hear about it on /. or security focus (usually both); (3) my users hear about it from me -- works well.
Sure, that's a drop in the bucket for windows PCs, but the point is that the communication chanels are open, and as long as people have the oportunity to hear about these things, we can reasonably expect them to be responsible for implementing them
Of course, that's not an excuse for making vulnerable software in the first place...
Parent
Re:Critical Bug? (Score:3, Interesting)
Re:Critical Bug? (Score:4, Informative)
Parent
Re:Critical Bug? (Score:3, Informative)
The volume is different, to be sure. That is probably an artifact of the number of users running the OS.
But your point is well taken; no operating system is immune to attack. Unfortunately, Windows users generally lack the discipline to patch their machines regularly. I don't know many *nix system users who do not perform regular updates.
That probably accounts for the low infection rates of *nix-related system.
Re:Critical Bug? (Score:3, Funny)
Netcraft confirms it!
Re:Critical Bug? (Score:4, Funny)
alt.binaries.necrophilia has been very quiet lately.
Parent
Re:Critical Bug? (Score:3, Funny)
Then why would you try to install the patch in the first place ? Heck, why would you even be running Windows ?
Managed code (Score:2, Funny)
An interesting question (Score:5, Insightful)
Writing managed applications won't protect you (completely) if the underlying framework isn't also managed.
Parent
Re:An interesting question (Score:3, Interesting)
No, it isn't. There are plenty of ways to fix programming languages so that they don't have a risk of buffer overflow exploits without the performance hit of some bloated vitual machine. All that is really required is for there to be a lot stricter checking when doing operations involving pointers.
Change the following:
Re:An interesting question (Score:5, Insightful)
The biggest excuse I hear from programmers for why they've violated strict logic flow is always,"Well, I was coding for speed and efficiency". With 3.0+GHz machines, what does it matter anymore? It's all a lot of hooey, too. The person learned that excuse from someone in 8th grade and they've latched onto it. When pressed they rarely even know what logical structure they've violated. They only know the excuse.
I think the biggest problem facing us is the inundation of object oriented programming languages. There's very little need to learn the strict mathematics of programming anymore. It is this laziness, and not any particular language, which is the root cause of the problem. Programming environments with sandboxes (ie. Java) are band-aids to a bigger problem.
The problem is with lazy programmers.
Parent
Re:An interesting question (Score:3, Interesting)
The problem is with lazy programmers.
I've posted this before on Slashdot, so apologies for the dupe, but...
My first technical question in an interview is "what is wrong with this C code?"
void echo(void) { char *s; gets(s); puts(s); }
Over 50% of the "experienced C coders" I interview fail to get the answer right, and this has been a constant for about the last five years. Scary, isn't it? What's even scarier is when an employer hires them after I've flagged this in the post-interview chat.
what is wrong with that code (Score:3, Informative)
Fixed code:
void echo(void) { char S; char *s= gets(s); puts(s); putchar('\n'); }
Note that the fixed code neatly avoids many stack protection mechanisms by not using a normal array. An improvement would be to use a more interesting struct to hold the data, with enough room to h
Re:what is wrong with that code (Score:5, Funny)
The code was different when I posted it. As usual, Slashdot eats my punctuation
Yeah, yeah, "the dog ate my homework". Heard it before ... ;-)
Parent
Re:An interesting question (Score:5, Funny)
Then I went and typed that spelling into Google, and found out that enough people have spelled it incorrectly on the web that Google doesn't know how to correct it, and suggests another incorrect spelling.
Correct spelling is "unnecessary".
Now, mod me down as a pedantic twit.
Parent
Re:Managed code (Score:3, Interesting)
Re:Managed code (Score:3, Insightful)
Lets face it, except for corner cases managed code is usually within a few % of the same speed as unmanaged code, and that few % isn't always on the slow side either.
Of course its possible to write crap manag
Practice safe image viewing folks! (Score:5, Funny)
Re:Practice safe image viewing folks! (Score:5, Funny)
Parent
Ack! (Score:5, Funny)
Will the horrors ever stop?!!
MSN Messenger felled by this months ago (Score:5, Interesting)
In a Messenger program that is always accepting new input in the form of pictures and messages, it's especially dangerous because anyone who's online will instantly become a zombie spewing out infection to their friends on their contact list. You really will get viruses through your personal contacts more than spamming-strangers in the future.
Re:MSN Messenger felled by this months ago (Score:5, Informative)
Parent
Ironic. 9x not affected. (Score:4, Informative)
Ironic.
The usual MS obfuscation for "because we don't support 9x anymore, by definition there are no critical updates for 9x" is to state that 9x is "Not Critically Affected", with a URL to a page that defines "critically affected" in such a way as to exclude 9x.
"Not Affected", as claimed in MS05-053, is a stronger claim. That's not to say there aren't similar bugs in image-handling in 9x; only that the hole in this notice probably doesn't affect 9x.
Parent
Of Course (Score:3, Interesting)
When writing a parser, length checking is a must (Score:5, Interesting)
Consider ASN.1 data (used, for instance, for digital certificates, certificate revocation lists, certificate requests and so on).
Each and every ASN.1 data element and each and every sub-element contains a length field. The ASN.1 parser should check whether the length field of a sub-element goes beyond the length of the enclosing data element, and so on ad infinitum.
If the parser detects a violation, parsing stops.
phishy... phishy... (Score:3, Insightful)
In a later interview:"Only one known product suite on the market can protect you from these ongoing threats. MS-AntiVirus and MS-AntiSpyware. Only these two programs are equipt with the proper image handling algorithims to detect these known flaws inherent in all programs."
This seems like a big scheme to get people on their proprietary AV and AntiSpyware programs. Lets see... Find hole, fix hole, release press release about hole, plug product, patch hole for product users.
eesh.we will see.
typical case of code-based formats (Score:4, Interesting)
Re:typical case of code-based formats (Score:5, Insightful)
If you want detailed control over layout, especially with low overhead for rendering, an instruction based approach is quite good. The point is that no GDI call, in itself, should be able to mess things up and simple parameter validation of the WMF input should be enough when spooling the calls.
(Hey, Postscript is even Turing complete. There's nothing wrong with describing a picture as instructions to a state machine with some rendering primitives.)
Besides, WMF is 15+ years old now. The availability of formats for vector graphics that matched the features of GDI (while not being expensive, money-wise or performance-wise, to render by GDI) back then was a bit different. The format has never been used much for real files, but quite a lot for clipboard transfer of vector data (Excel graphs and whatnot).
Parent
Re:typical case of code-based formats (Score:3, Interesting)
I'm sorry, but how does this differ from any other vector-based graphics file format? Of course it's the instructions for how to draw the item. Of course they are executed. What else would you want them to do?
This is also how Postscript and PDF work. Actually post script is more than simple instructions, it is actually a programming language. This is part of why Apple/NeXT cho
Sorta like this quicktime one (Score:5, Insightful)
I like this line of Grade-A bullshit.... (Score:5, Insightful)
If a programmer is taking the time and effort to interpret a complex file format, why can't he also take the time to validate it.
Re:I like this line of Grade-A bullshit.... (Score:5, Insightful)
Parent
The real threat (Score:4, Funny)
That is the real threat, my friend.
This is probably going to get modded as funny, but (Score:3, Interesting)
Oh, and before you ask... twice a week virus scans, two noted spyware blockers, and a reliable firewall. How reliable? Shit,
Okay, now go on and say it... all together now... "Serves... YOU...
I've got the solution! (Score:4, Funny)
Not only will this stop the spread of viruses, it will drive hundreds of thousands of noobs off the internet. Usenet will be stored to it's former glory and AOL will go out of business. Marketshare of Linux and MacOSX will skyrocket and peace and balance will be restored to the Force!
Adblock filters (Score:4, Interesting)
Re:Another brownie point for the cause of DRM? (Score:5, Insightful)
Besides, if you're passing "unprotected" content around you'll still have these issues. Not every JPG is going to suddenly be digitally signed and encrypted. Assuming the same "media viewer" application, you'll have the same bugs.
If anything, the DRM code just adds another layer of interpretation that's open to attack, making your system "less safe" rather than "more safe." More code == more potential for bugs.
Parent
Guy is from Internet Security Systems (Score:4, Informative)
This has nothing really to do with IE. IE here just happens to be a vector. If FF on windows was depending on those libraries to display those image formats they would be vulnerable as well.
Parent
Re:To Finish Microsoft's Quote..... (Score:3, Interesting)
Let me guess, you're one of these dimwits who think "integrating IE directly into the OS" means it's part of the kernel ?
Re:complex file formats? (Score:3, Insightful)
Binary == Little compact files.
Plus add the parser, schema, etc. and you got yourself a big chunk of bloat. A simple RIFF style binary file with GOOD coding practices will be much smaller and more efficient.
Good example: At a past employer, we wrote software that would generate output data files. They used to be binary, and were roughly 25 to 30 KB in size. Then the whole XML hype set in and our customers just had to have it all in XML. Now output files are between 1 and 2 MB, plus roug
Re:What the hell is it about buffer overflows? (Score:4, Informative)
int getsn(char *cp, int size);
This has been a huge effort executed using automated search methods and hand coding, to vet enormous amounts of Free code. Consequently the quality of GNU systems have improved dramatically, while the same cannot be said for MS code.
The problem is that if you overflow a buffer defined on the processor stack, then you can force a new return address into the Program Counter when a routine exits, thus giving the attacker control over the next piece of code to execute. This pice of code is typically part of the string that was used to overflow the buffer.
Parent