Posted
by
timothy
on Thursday August 19, 2010 @01:59PM
from the and-the-other-ones-are-worse dept.

CWmike writes "About 40 different Windows applications contain a critical flaw that can be used by attackers to hijack PCs and infect them with malware, says HD Moore, chief security officer at Rapid7 and creator of the open-source Metasploit penetration-testing toolkit. Gregg Keizer reports that the bug was patched by Apple in its iTunes software for Windows four months ago, but remains in more than three dozen other Windows programs. Moore did not reveal the names of the vulnerable applications or their makers, however. Each affected program will have to be patched separately. Moore first hinted at the widespread bug in a message on Twitter on Wednesday. 'The cat is out of the bag, this issue affects about 40 different apps, including the Windows shell,' he tweeted, then linked to an advisory published by Acros, a Slovenian security firm."

Technically, any GUI app could gain root access, but this doesn't mean a computer running trusted applications (I trust the apps I run to not gain root and mess with my system) could be exploited without another bug.

Still probably doesn't compare, and still very bad, but let's not turn it into a bigger scare than it really is.

If you are really worried about holes in your apps perhaps you should be running Comodo Internet Security [comodo.com] or Comodo AV (same link) which by default sandboxes ALL apps you run unless you tell it otherwise. I've found a good 9 out of 10 apps run just fine in a sandbox, and Comodo makes it easy to sandbox any app and by default will sandbox new apps and new installs to protect your PC. Oh and it is 100% free too, with no nag emails or need to register.

makes sense because the native registry/file virtualization is provided by MICROSOFT, and this being slashdot, the mantra is "anything windows does, a third party app does better, because M$ SUCKS!!!", unless it's "shitty iTunes bloatware for windows".

Because what you are calling "registry/file virtualization" has NOTHING to do with security and is simply a hack to allow x86 apps to run on x64? And time and time again we have seen the bad guys blow through Windows security measures since it is the biggest market and therefor offers the biggest rewards? Plus with the Windows 7 version you have no control whatsoever, and I have noticed it really doesn't seem to care what gets dumped in "Program Files(x86) as long as you click yes that first time, Whereas w

That was my thought. Microsoft issued a hotfix for Visual Studio 2008 last year that corrected a security vulnerability in their ATL libraries. (This is the same hotfix that, if you installed it and VS2008's SP1 in a bad sequence, you'd screw over the install. I was up all night on that one. *sigh*)

The problem? This security vulnerability was in a C++ template, which means that the bug is stuck permanently within any program compiled against it. It's not like the CRT or MFC shared libraries which can be rep

/. is as bad for this as anywhere else on the net as far as I can tell. All bugs are flaws, but flaws are not necessarily bugs. This sounds like a flaw, even a vulnerability, but not a bug.
Sorry, as you were.

So there are forty unknown applications with an unknown flaw that results in code execution. This sounds like it includes web browsers (given the references to 'viewing a web page' in the article), but it doesn't specify which. It also doesn't specify what sort of file(s) (except in the case of iTunes -- a 'media file') are affected.

So what're we supposed to do? There's no detail here, not even cursory detail, on what filetypes or applications to avoid. I'm fine with no details on the innermost workings of this exploit being widely disseminated, but why announce it with such fanfare if there's not even a way to avoid exposing yourself (i.e., listing these supposed '40 applications')?

The article does mention that blocking WebDAV and SMB at your perimeter router will at least prevent the exploit coming from outside your network, though I agree that in general it seems long on FUD and self-congratulation and short on useful content.

Verizon doesn't block SMB on residential connections anyway? I know Comcast does. As far as disabling WebDAV, the article links to a Microsoft security bulletin that - among other things - contains instructions for doing that.

The sad truth is that most people won't even know the security problems exist, even after there are fixes available for them. People who actually care about these things are already a rarefied group among Windows users.

10 years earlier, Kaminsky reported it very polite and decently and obviously he didn't release an exploit. Did it change anything other than being ignored by MS?

Even Apple as far as I know (and don't like) would stay open at weekend if someone found an issue like that on OS X, until they release a fix. MS doesn't even respond to well known technical news sites run by reporters, not some no name bloggers.

Run around like headless chickens predicting the end of Microsoft, and Windows, rant and rave about the virtues of Linux, how there are no Linux viruses and how any year now it will be the year of the desktop, and generally feel smug.

A path searching issue exists in iTunes. iTunes will search for a specific DLL in the current working directory. If someone places a maliciously crafted file with a specific name in a directory, opening another file in that directory in iTunes may lead to arbitrary code execution. This issue is addressed by removing the code that uses the DLL. This issue does not affect Mac OS X systems. Credit to Simon Raner of ACROS Security for reporting this issue.

This was the issue he reported in iTunes. Presumably, the same issue exists in other applications. However, it is only exploitable if a remote attacker is able to write the malicious DLL to the directory. Thus, securing any remotely accessable storage will prevent this attack.

Issue has so big evil potential that, they are afraid to tell the exact details. You can be sure black hats are all over the private forums, google and irc to figure out what this thing could exactly be.

What pisses me off is, it was later "tweeted" to be a 10 year old, reported bug, in official way (Bugtraq) and 3-5 kernels and explorers later, there was nothing done against it.

This is just a case of the l33t h4x0r shouting "look how big my balls are, I can tell vendor X,Y,Z what to do", with the hidden undercurrent of "if they don't then I'll fuck them up good by releasing the data to the world".

Twitter is loved by people who has something to say, in short and hates the idea of "blogging" or facebook.

You mean the kind of people who can't form a coherent sentence, who cannot concentrate on one conversation at a time so they follow 20 or 30, just chipping in with useless non-contributions like "I know" and "Oooo, that happened to me too".

Twitter is the digital equivalent of old ladies standing on their doorsteps exchanging "he said, she said" gossip with their doorstep dwelling neighbours.

Or windows have several orders less apps than i think, or is the safest operating system on earth (ok, or something is missing in that formulation, like being 40: as in millons, or just counting in the included by default apps)

I agree - a remedial patch SHOULDN'T break the existing applications (and if Microsoft applied it, that would just give the vendors pressure to update their apps! What a role reversal, anyways) - but in case you haven't noticed, a lot of Microsoft's "Fixes" actually "break" functioning operations.

Wow, in one post you managed to present both the common sense notion that MS shouldn't care if they break insecure applications, and the most common objection to that notion - that people will blame MS even if it's the other guy's bad application at fault.

Even the safest APIs can be used stupidly. If the library code is correct but people are calling it in an unsafe manner, there's not a lot that can be done about that. Making changes to library code also requires an immense amount of regression testing. Some programs may be using an API unsafely, but in a non-attacker-controllable manner; those programs may technically have bugs but they run correctly (and securely) now, and if the library code were changed to prevent whatever they're doing those programs w

I was under the impression that very few Windows applications were statically compiled... so why can't this just be updated in whatever shared object it uses again?

Because to avoid dependency hell and to compensate for the lack of package management, Windows applications come with private copies of the DLL's they need. If a flaw hits a common library like a JPEG parser you have to go through the file system looking for vulnerable versions and hope all the versions you have installed have fixes available. Or just wait till each application vendor gets around to issuing a patch for their particular application.

If you read the linked description, it says that the problem relates to opening files from remote places. With some Win32 API knowledge, you can derive that the problem is:

- DLL loading [microsoft.com] looks into the process working directory for DLLs (i.e. getcwd())- Some applications change the working directory to the place where the files they attempt to open reside- If the malicious actor places a DLL in the same directory as the file to be opened, they can win the race against the applicat

You can choose to include certain libraries statically (so you include the binary code) or dynamically (so you have a reference to a.dll). You can also use the OS to dynamically load a library on-demand so that it is neither opened nor initialized until it is needed. For example, MFC has its own radio button in MS Visual Studio - do you want it static or dynamic? I believe the C runtime (msvcrt.dll) has the same choice but can't be bothered opening it to check. Plus, if it's only an estimated 40 apps,

to enable by default, remote/network based DLL's to automatically be loaded, and then call this a bug in the applications which do basic DLL loading, me thinks something fishy is going on. Is there a way to watch for any and all DLL's loading from outside of the local machine? I'd like to see who might be feeding their application DLL's over the interweb. Legit or not, this sounds like an OS flaw when just loading a data file allows the application processing the data file to suck in DLL's from the locati

People do run applications from network shares. But if you want to keep people on your machine from running executables from remote locations, I think you can set up a software restriction policy with an appropriate path rule and with the global settings set to check DLLs too.

I would guess that the problem isn't that reading a data file causes a DLL to be automatically "sucked in" from that location, but that the application sets the current working directory to that location, causing subsequent DLL loads t

No, of course not and I wasn't implying such a ridiculous thing either. But to act as if just because there is patch out that the issue is now non-existent is silly. It's no different to back when code red was a big problem. Even after Microsoft pushed out a patch, for many months after there were still people spreading the infection due to not updating their systems.

Sure, maybe Joe Sixpack is dumb enough to install a random 'Naked Chicks Screensaver' that exploits a Linux bug, but the vast majority of people only install software from their Linux distro, which they have little choice but to trust.

Well hopefully that distro didn't download the trojaned version of unrealIRCD that it's own developers didn't realize someone had switched. Or are the developers of that program and anyone who trusted that what they were sharing wasn't trojaned are just "dumb Joe Sixpacks"?

You assume they would be doing it purposefully which isn't necessarily true. In the case of unrealIRCD not even the developers of the program knew that the version they were serving had been switched to a version with a trojan in it until months after they had been serving the files.

In the case of unrealIRCD not even the developers of the program knew that the version they were serving had been switched to a version with a trojan in it until months after they had been serving the files.

Yeah, one tar file on one server had been hacked. If your distro is downloading random unauthenticated tar files (no signature, not even a checksum) and shipping them out to end-users then you have much bigger problems than a random X-server exploit.

Also, where else do you expect a distro developers to download the source code for a program if not from the official upstream developer themselves (which is where the trojaned version was pulled from)?

Just to further elaborate, there is nothing in the case of the Xorg exploit that says that the vulnerability in the program that allows the someone to use the exploit has to have been put in their purposefully. So this whole notion about distros and their package managers is just a big red herring.

I honestly don't see why people can't understand the huge difference between requiring malicious software to be installed on your PC by a software updater that _already runs as root and can change any file on the system_ and requiring you to open a malicious Word document.

I honestly don't see why you seem to think that the XOrg vulnerability has something to do with your software updater, rather than being one where any GUI app run by any user can run anything as root.

The part where an exploit that allows malicious programs to be run without the user's knowledge? Or did you think there were no such exploits?

So in order to exploit this exploit you need to make up another exploit which already allows them to do anything on my PC with my user privileges, which means that they've already installed a keylogger in Firefox and stolen my bank passwords and I no longer give a flying monkey turd about whether they've trashed my OS.

How far down this 'but what if there was another exploit too!' rabbit-hole do you intend to run?

So in order to exploit this exploit you need to make up another exploit which already allows them to do anything on my PC with my user privileges, which means that they've already installed a keylogger in Firefox and stolen my bank passwords and I no longer give a flying monkey turd about whether they've trashed my OS.

No. In fact, for example, a maliciously-formed PDF file opened in a PDF reader, even if that reader is run in a sandbox, can be used to gain root through the exploit.

Exploitable != Malicious. A system without stack protection is an accident waiting to happen. You should read up on how stack protections [wikipedia.org] eliminate an entire class of exploits, and how subtle exploitable code really is. Even the.NET compiler includes stack protection. I have no idea why Linux has not adopted the use of ProPolice across the board.

My previous response was not a troll; it was based on years of experience running Windows, Linux, Mac and BSD machines. Linux is the most brittle of all of the sys

Which part of 'the only way the average Linux user is going to be running malicious software is if their distro ships it to them' is proving so hard for Windows users to understand?

What you're saying is that Linux is totally bulletproof, as long as you run it as much as possible like an iPhone -- trusting only applications that your OS provider says are okay, and that it's not reasonable to examine it in a situation where that's not the case.

What you're saying is that Linux is totally bulletproof, as long as you run it as much as possible like an iPhone -- trusting only applications that your OS provider says are okay, and that it's not reasonable to examine it in a situation where that's not the case.

How is installing applications from the repos anything like using an iPhone? With Linux, I can install any application I want from anywhere I want as long as it's compatible (just like most other OS's). I can compile from source, write and run my own code on it, whatever floats my boat. I and most other Linux users get most of our software from the repositories because 99 percent of anything you'd want to install is in there and the packages in the repos are generally well tested to work with the system

How is installing applications from the repos anything like using an iPhone? With Linux, I can install any application I want from anywhere I want as long as it's compatible (just like most other OS's). I can compile from source, write and run my own code on it, whatever floats my boat.

Correct. However, the poster I was responding to was insisting that if you did any of that and got some malware, it was your own fault and that Linux couldn't be expected to run securely if you ever ran something that didn't

Or Joe Sixpack visits a website with a Flash applet, and there happens to be a vulnerability in Flash player that allows those applets to issue requests directly to the X server. Or, Joe Sixpack opens a PDF file using acroread, and there is a vulnerability in acroread. Or any number of other vulnerabilities; all an attack needs is to be able to issue requests directly to the X server.

It really was not a trivial, uninteresting bug. It was a serious security problem for desktop Linux users that had been around for years.

You misunderstand. The Xorg bug doesn't require a malicious GUI app; it just requires a perfectly normal GUI app with an exploitable vulnerability. So if OpenOffice.org (or Acrobat Reader, or Firefox, or any other document viewer) has a flaw which can be exploited by a malicious document, the Xorg bug turns that into a privilege-escalation vulnerability, circumventing not only the normal permission mechanisms but also tools such as SELinux sandboxes (which protect against malicious code running in the sandboxed user application, not the X server).

Who? People that run proprietary drivers from Nvidia or ATI do. So do people that use drivers from less popular vendors that don't yet have KMS in their drivers (KMS is not in every open driver yet). It's enough to stop most distros from shipping with X running as another user.

Actually, even though Nvidia does not support KMS their drivers do support running X as a normal user. Users of the ATI proprietary drivers are SOL.

Using KMS does not automatically remove the root requirement. For example, Ubuntu uses KMS drivers for many cards currently, but one of the big improvements for 10.10 will be to run X as a normal user with some drivers.

There are many reasons to use Linux, but better security is not one of them. If you still believe this, put up a Linux server completely exposed to the Internet, and broadcast all over IRC that your server is badass and can't be hacked. It is a common misconception among Linux zealots that Linux doesn't have the security issues that Windows does, but mostly it's because its less popular, and very few exploit writers target Linux machines. In fact, even though ProPolice has been around for years, many Linux

I'd say that putting any OS on the Internet without a reasonable firewall is a poor idea, the exception being a laptop [1] just out of necessity. Yes, most operating systems are hardened, but what brings the bugs are the applications that run on them. This is why having a hardened machine with as little running on it as possible is essential between the general purpose computers and the rest of the Internet.

[1]: I have seen tiny embedded Linux adapters just bigger than an Ethernet plug. Why can't laptop makers build a tiny firewalling router into one of those and mount it on the motherboard? This way, it doesn't matter what OS is, attacks from remote will be minimized, and one could configure it to disallow outgoing ports (such as port 25) that the laptop shouldn't ever need to go out on. I'm sure similar functionality can be done for Wi-Fi. As an added bonus, if a machine gets DoS-ed, it won't be the main CPU that has to sort out the offending packets, but the one on the built in firewall.

And you'd be wrong. Even with a directly connected Linux box it takes someone manually targeting that machine. As far as I know, no one has successfully automated *nix hacking and certainly not any kind of effective drive-by attack. Even if the automated attack gets a foot in the door, they still have to manually find a way to escalate privileges.

If you still believe this, put up a Linux server completely exposed to the Internet, and broadcast all over IRC that

Honestly, how is data integrity not IT's problem? It was their dumb idea to use Windows, which is so susceptible to malware. They're supposed to have something called "backups" in case of disaster. If they don't, they're not doing their jobs. My current job has an incompetent IT department too, but at my last job, they had some fancy backup system that backed up everything on your desktop, nightly. So if something did wipe out your email inbox or something, they could recover it.

At least the homepages are looking better (now with Flash)... unfortunately clicking "Terms & Conditions" gives you a blank page, the blog seems to be entries from cheapcigarettes.co.uk... oh and did I mention despite the apparent European feel to the site, it's still knockoff sweatshop crap made and shipped from China.