17/08: On lightning strikes.
Last week, Microsoft announced some changes to its monthly patch notification mechanism. What caught my eye the most was this:
I certainly commend Microsoft (and Oracle) for taking the bull by the horns with their approach to vulnerability patching. It's a difficult problem to tackle and the element of predictability they have brought to the table helps their customers. Delivering an "exploitability index" is another story, on the other hand.
It's attempting to answer an interesting and difficult question: "will this happen to me?" To make the example more real, let's ask "will lightning strike me?" To answer this question, we can look at some data that can shed real light on the question. The National Weather Service tracks lightning strikes. You can look at a map of the US and immediately tell what the likelihood of being struck by lightning is for your location; if you dig deeper, you can figure it out for time of year, trends in strike density, etc.

This data is considered reliable because it uses verifiable historical and geological information about the threat (lightning). Information security, unfortunately, does not conform to the same rules. While Microsoft certainly can make predictions about exploitability of an issue based on their undisputed expert knowledge on the subject, we simply don't have the luxury of looking back on years (or centuries) of data to support those assertions. This is not to knock Microsoft; it's simply that the threat changes so rapidly:
As a customer trying to decide whether or not to patch every month, I continue to applaud Microsoft's efforts to give me decision-enabling information. Alas, the Exploitability Index is a piece of trivia isn't tipping the scales on the decision for me. If I'm at the ol' swimming hole and I see a thunderstorm approaching, I'm going to get out of the water -- not so much because I've been reading the lightning strike density maps for my neck of the woods, but because I know that -if- I get struck, it's going to hurt. Similarly, as I decide whether or not to patch a given vulnerability immediately, I'm going to make that decision on the same factor:if when an exploit for that vulnerability is released, I want to know which data it's going to hit and how hard. I want to know how much it's going to hurt.
Stay tuned next week when I wax rhapsodic on "The Firestone tire recall of 2000 and why I don't care how long that SQL injection issue has been around."
In addition, as part of the company's ongoing effort to improve its guidance for customers, Microsoft announced its new Exploitability Index. Developed based on customer feedback, the Exploitability Index will provide customers with guidance on the likelihood of functional exploits being developed for vulnerabilities addressed by Microsoft security updates. This additional information helps customers better assess their unique risks and better prioritize deployment of the monthly security update.
I certainly commend Microsoft (and Oracle) for taking the bull by the horns with their approach to vulnerability patching. It's a difficult problem to tackle and the element of predictability they have brought to the table helps their customers. Delivering an "exploitability index" is another story, on the other hand.
It's attempting to answer an interesting and difficult question: "will this happen to me?" To make the example more real, let's ask "will lightning strike me?" To answer this question, we can look at some data that can shed real light on the question. The National Weather Service tracks lightning strikes. You can look at a map of the US and immediately tell what the likelihood of being struck by lightning is for your location; if you dig deeper, you can figure it out for time of year, trends in strike density, etc.

map from lightningsafety.noaa.gov
This data is considered reliable because it uses verifiable historical and geological information about the threat (lightning). Information security, unfortunately, does not conform to the same rules. While Microsoft certainly can make predictions about exploitability of an issue based on their undisputed expert knowledge on the subject, we simply don't have the luxury of looking back on years (or centuries) of data to support those assertions. This is not to knock Microsoft; it's simply that the threat changes so rapidly:
- It's not the same threat every time: buffer overflows in Windows Metafile Format this month, insufficient randomness in DNS query sequence numbers the next, etc.;
- "Unknown unknowns": the customer wants to know "will lightning strike me, here and now ?" and to answer that, Microsoft has to understand a staggering number of combinations of software (always), hardware (sometimes), and other mitigating controls (occasionally firewalls, device configurations, etc.); just recently, MS08-037 was revised several times after its initial publication in early July as more details about the interaction of the exploit and the fix itself became known;
- Exploitability inevitably changes over time. It only takes one lucky attacker to take a vulnerability from theoretical exploit to weaponized worm. ASLR protection in Windows Vista has been considered a great mitigating control against a variety of overflow attacks, yet at Blackhat 2008, a paper was presented showing how ASLR can be bypassed -- this fundamentally changes the "likelihood of exploitation" equation for an entire class of vulnerabilities, both past and future;
- For most vulnerabilities, the fact that there's a patch pretty much guarantees that someone has (or is working on) an exploit. Microsoft says it themselves:
Along with the predictability of Microsoft's monthly security update process is the emergence of an undesirable cycle: the release of exploit code, related to those updates, sometimes within hours of release.
As a customer trying to decide whether or not to patch every month, I continue to applaud Microsoft's efforts to give me decision-enabling information. Alas, the Exploitability Index is a piece of trivia isn't tipping the scales on the decision for me. If I'm at the ol' swimming hole and I see a thunderstorm approaching, I'm going to get out of the water -- not so much because I've been reading the lightning strike density maps for my neck of the woods, but because I know that -if- I get struck, it's going to hurt. Similarly, as I decide whether or not to patch a given vulnerability immediately, I'm going to make that decision on the same factor:
Stay tuned next week when I wax rhapsodic on "The Firestone tire recall of 2000 and why I don't care how long that SQL injection issue has been around."


