Apple released a patch for their “Carpet Bomb” issue today. I’m glad to see that Apple took steps to protect their users. Kudos to the Apple Security team!
There was a lot of discussion about how this behavior could be used in a “blended” attack with IE, but Safari’s behavior affected more than just IE. In fact, I’ve discovered a way to use the Safari’s carpet bomb in conjunction with Firefox to steal user files from the local file system. Even though Apple has patched the carpet bomb, I’m not going to go into details as the issue is not patched and the behavior may be replicated via other means (it’s the kinder, gentler BK). I’m also happy to say that some of the improved security features in Firefox 3 help lower (but do not eliminate) the impact of the issue (Firefox 2 users could still be at risk of arbitrary file pwnage). Mozilla is working on the issue and they’ve got a responsive team, so I’m sure we’ll see a fix soon.
- UNREALTED NOTE TO MOZILLA: Firefox 3 shouldn’t FORCE itself to be my default browser after I install it (YES, I unchecked the default browser checkbox during install)
Now, these types of vulnerabilities are a perfect example of how the all the software and systems we use are part of a giant ecosystem. Whether we like it or not, the various parts of the ecosystem are intertwined with each other, depending on each other. When one piece of the ecosystem gets out of line, it can have a dramatic effect on the ecosystem as a whole. A small vulnerability or even an “annoying” behavior from one piece of software could alter the behavior of 2nd piece of software, which a 3rd piece of software is depending on for a security decision (The recent pwn2own browser -> java -> flash pwnage is a great example of this). As the ecosystem grows via plugins, functionality, and new software, so does the attack surface. Eventually, the interactions between systems and software become a gigantic mesh and the attack surface becomes almost infinite.
Now, a lot of people have criticized Apple for their inability to see the carpet bombing behavior as a security issue. If Apple looked at their product (Safari) in isolation, maybe it wasn’t a high risk security issue to them and it was really more of an annoyance… its only when you look at the ecosystem as a whole do we start to see the security implications of this behavior. Should we have expected Apple to threat model the risks of this behavior against their own products AND other third party products as well? Can we reasonably expect them (or anyone) to have the requisite knowledge to truly understand how certain behavior will affect the ecosystem?
This brings us to a pressing question. In the “real world”, users install products from multiple vendors. Whose responsibility is it to examine the interaction between all these products?