Recently in Vulnerabilitites

Casablanca, Buying Vulnerabilities and Digressing posted by Rick Howard

Filed in:

Movie_Poster_Casablanca.jpgI got a call last week from a newspaper reporter. He was wondering about the status of the iDefense Vulnerability Contributor Program (VCP: Here and Here) and other commercial programs of the same ilk that buy vulnerabilities from independent researchers. He was wondering if there has been any attitude change in recent years as the security community has matured. This is a great question. Let me try to answer it.

Paying for bugs used to be very controversial. When iDefense pioneered the idea many years ago, the security community was aghast that somebody might actually pay researchers to find weaknesses in enterprise-level software.

I am reminded of that great movie, Casablanca when Claude Rains announces to the crowd in Humphrey Bogart's café that he is closing it down for the night.

Bogart: How can you close me up? On what grounds?ClaudeRains.gif

Rains: I'm shocked, shocked to find that gambling is going on in here!
[a cashier hands Rains a pile of money]

Cashier: Your winnings, sir.

Rains: [sotto voce] Oh, thank you very much.

Rains: [aloud] Everybody out at once!

That's my favorite scene in the entire movie, but I digress.

Today, the practice of buying vulnerabilities is more accepted. There are many organizations that participate in this activity today. Responsible Disclosure -- the act of buying and identifying bugs, informing the responsible vendor, but keeping the information private until the vendor fixes the issue -- is not perfect by any means. The process is frustratingly slow in some cases; however, it is the process that has stabilized over time and all parties benefit. Researchers pursue their interests and organizations compensate them for their efforts. Vendors discover new bugs in their products. Responsible Disclosure participants provide value to their customers in the form of early warning until the bug is fixed. Finally, the security community as a whole benefits because bugs are identified and fixed; maybe not as fast as we would all like, but fixed all the same. Most in the security community realize this. There are outliers for sure; those who have proclaimed that the system is too slow and, out of frustration, hurl zero-day vulnerabilities into the public without warning. This just introduces chaos into the system and causes everybody to twist themselves into knots reacting to whatever the impact might be. I like to think about Responsible Disclosure in similar ways that I think about a democracy in action. It is painful and slow and inefficient, but it is far superior to other more destabilizing options.

But then the reporter hit me with an even harder question. He asked, "How effective is this method, given that the underground market has developed to the extent that cyber criminals can offer much better prices for vulnerabilities?"

Let me just say that I reject this notion. The vulnerability market is a market like any other. The price of a vulnerability reflects whatever the market will bear. People buy vulnerabilities for different reasons. At VeriSign / iDefense, we buy them to give our customers early warning. Other white hat researchers buy them to enhance their security products. Black hat or grey hat purchasers have their motivations too. You may not like their motivations and you might not condone them -- I certainly do not -- but they exist all the same and are a fact of life.

Ultimately, all purchasers make a decision on the worth of a vulnerability based on the value that the vulnerability may bring to support their motivations. Is it likely that some buyers may want to pay a significant amount of money over what other buyers would pay? Sure. Does that mean that these other buyers have no role? Absolutely not.

Gonzalez.jpgThere are many kinds of security researchers: white hat, grey hat and black hat. They decide which kind of purchasers they want to deal with and what kind of researchers they want to be. White hat researchers find bugs in enterprise-level software, help the Internet community become a little safer and get paid for their efforts. Grey hat and black hat researchers, in some cases, give their research up to nefarious organizations whose purpose they may not fully understand. They might get paid handsomely for their efforts but they are definitely not making the Internet safer. Unfortunately, vendors do not fix those kinds of vulnerabilities until the damage is done. The bad guys who leverage that research may use it to commit cyber crimes, to conduct cyber espionage or to execute some other nefarious purpose. The security community does not get to fix that vulnerability until somebody discovers it and there is no guarantee that we will discover it either.

As an aside, don't think that a grey hat selling that kind ofWatt.jpg research is free from criminal charges either. I have heard some researchers say that they are just building tools. They are not culpable since they do not actually pull the trigger to do anything illegal. At least in the US, this is just not true. Consider the Gonzalez-TJX case if you don't believe me. Authorities sentenced Stephen Watt -- the guy that wrote the sniffer software called "Blah Blah" that the Gonzalez team used to sniff credit numbers from high-profile retail stores -- to two and a half years in prison for his efforts even though he was not part of the Gonzalez team that actually conducted the operation. Two and a half years! That is not insignificant.

But I digress.

I fundamentally disagree with the notion that since the black hats and the grey hats can possibly make more money selling vulnerabilities, then the white hats have no role to play. Clearly that is not true. The iDefense VCP program is alive and well. It produced more than 50 vulnerabilities last year; at least 30 of which were high-impact Microsoft vulnerabilities. Other white hat operations had similar successes.

I believe it is clear that white hat vulnerability research is here to stay. Now if I can just find that cashier and get my winnings.

Bluehat, Elucidating the Alien X-Factor and Going for the Kill posted by Rick Howard

Filed in: , , , , ,

Sean Larsson, one of our Advanced Research Lab (ARL) analysts, and I traveled to Seattle last week to participate in Microsoft's 9th annual Blue Hat conference; a cornucopia of outside grey hat security researchers and inside Microsoft developers all gathering to talk about the security issues of the day. The Microsoft Office product guys specifically asked Sean to attend because they have been amazed this past year at the number of high quality Microsoft Office vulnerabilities he has shared with them. To be truthful, they were a little perplexed that one guy could be so prolific compared to an entire Microsoft team dedicated to the same purpose.

The Microsoft system is pretty impressive too. They have built this distributing fuzzing framework that works sort of like the SETI@Home (Search for Extraterrestrial Intelligence) project. For those not familiar with fuzzing or the SETI project, let me elucidate.

According to the Open Web Application Security Project (OWASP), "Fuzzing is a Black Box software testing technique, which basically consists in finding implementation bugs using malformed/semi-malformed data injection in an automated fashion." This technique has been around for years and is one of the primary methods used by the iDefense ARL team. Three issues with this technique make it a lot easier to say then to do. First, you have to write a fuzzer for each application that you want to test. This is not trivial. Second, you have to run it over and over again with crazy input data looking for the application to choke (Crash). By over and over again, I mean thousands of times if not hundreds of thousands of times. Finally, after all of this is done, the real work begins for the security researcher. He must examine each crash location within the code to see if there is a way he can leverage the problem that caused the crash into a consistent and reliable exploit.

Microsoft is using the SETI project idea to help with the second issue. The problem that the SETI researchers have is that they collect all of this data from Radio Telescope observations and do not have enough computing power to process it. Their solution was genius: convince people interested in the research to use their own computers to chew on the data during downtime; i.e., when the computer goes into screen saver mode. They built a distributed data-crunching network that works when the computer is idle. This is essentially what Microsoft did for fuzzing.

Microsoft has hundreds of active products. Each development team develops their own fuzzers for the code they are trying to test. The process management for dealing with all of the bugs found was a mess. There was no consistency in reporting, no standard method for collecting information and no coordination between the teams about any progress made. Enter the Microsoft Distributed Fuzzing Framework.

The Framework has two cool features. First, it is a web based system that allows any developer to drop a fuzzer into the framework from any location within the Microsoft network. Second, the framework keeps track of any Microsoft computers that have joined the framework to participate in after-hour fuzzing duties. These computers can come from anywhere: secretary desktops, developer machines, lab machines, anywhere. All crashes found during fuzzing activity are reported back to the framework and ultimately to the responsible developer for action. Since the program started this year, Microsoft has found and fixed millions of bugs. To be clear, these are not all security issues. In fact, most of them are not. They are simply bugs in the code. In addition, to be fair, there is a good chance that many of these bugs would never have seen the light of day through normal use of the product because they were found with crazy combinations of input data. But that is exactly where the security researcher wants to travel; code locations that nobody knows about or understands that he can leverage to run his exploitation code.

All of this brings us back to Sean. iDefense has discovered 12 Microsoft Office vulnerabilities in the last year; most of these were Sean's work and most were high quality discoveries with working "proof of concept" exploit code attached. The Microsoft product team wanted to talk to Sean at Bluehat because, even with the millions of bugs fixed in various Microsoft products this year with their really cool and geeky distributing fuzzing framework, none came close to what Sean found. They wanted to pick his brain about why he has been so successful. So, Sean spent an afternoon with the Microsoft Office development team to help them in their endeavors. After the session, Sean was nonplussed. He said that the Microsoft team consisted of really smart and capable people, but they are, for the most part, developers and not security researchers. From my perspective, they don't have that special "X-Factor" that goes part and parcel with being a white hat bug hunter; that instinct to go for the kill; that deviousness to understand where one path is bloody brilliant where another is a hopeless dead end.

Bluehat was a good conference and the Distributed Fuzzing Framework is a really cool idea, but since Sean is still out-producing that automatic analysis, perhaps we should point him in the direction of the SETI project. With his go-for-the-kill X-Factor, we should find our first signs of Extraterrestrial Intelligence before the new year.

Patch Tuesday - Railing Against the Gods - Be Careful What You Ask For posted by Rick Howard

Filed in: , , ,

According to Guillermo Segovia, a member of my Vulnerability Aggregation Team (VAT), we went through the "Mother of All Vulnerability Announcements" last week. Microsoft released 34 patches and Adobe released 28. Oracle was scheduled to release too, but pushed it to this week because of a conference they were hosting. But, if Oracle had released, that would have increased the number of patches by 38 for a grand total of --wait a sec, let me take off my shoes and socks so that I can see my toes and count that high--100 Vulnerabilities. 100 Hundred Vulnerabilities? Is that insane?

Guillermo was pulling his hair out. Not only did he have to help the VAT team with the heavy load; but also, he had to write the blog for that day (Too Much, Too Many, All at Once - Oct 14, 2009). Understandably, he was a little snippy. In his blog post, he railed against the vulnerability gods-- Microsoft, Adobe, Oracle, the usual suspects -- and wondered why they couldn't cooperate a little in terms of the release schedule. Did they all have to release 25+ patches on the same day? Picture Guillermo on top of the Verisign HQs building, black clouds in the background, lightening flashing across the sky and Guillermo pumping his fist into the air. Well, it was sort of like that (Actually, he was sitting at his desk, picking Chipotle out of his teeth and complaining to a VAT room that wasn't listening to him because they were all too busy; but I like to pump his image up).

From our point of view during Patch Tuesday, anything under 10 Vulnerabilities is a light day. Between 10 and 17 is about normal. Anything above that is a major effort to get our intelligence out to you guys in a reasonable time. Actually, announcing the Vulnerabilities is not that hard. The analysis piece is what takes the time; trying to determine if Microsoft's Exploitability Index makes any sense or if Adobe's reveal is going to be especially nasty.

I hate to say this but we got what we asked for. The security community has been saying for years that we want big vendors to get on a schedule so that we can have some control in our geeky, security lives. Guess what? They did it. They did what we asked. We even predicted it in last year's trends paper. I hate it when I get what I asked for. Don't they realize I want them to do what I mean and not what I say?

Here is my new wish. Instead of Patch Tuesday, I want a shotgun start; each major vendor takes a day: Adobe - Monday, MS - Tuesday, CISCO - Wed, Oracle - Thursday. As more vendors come on board, we could spread this out across an entire month.

CVSS, Razor-Like Retorts, and the Royal "I" posted by Rick Howard

Filed in: , , ,

Just when I thought we had squeezed every ounce of efficiency out of the iDefense Vulnerability alerting service, along comes a question that has no easy answer. This puzzler has to do with our Vulnerability Contributor Program and the exclusive vulnerabilities that pop out at the end of that process. The question is this: How do we score an iDefense exclusive vulnerability using the Common Vulnerability Scoring System or CVSS?


If you are a vulnerability enthusiast and CVSS geek, you know that you have several choices in the Temporal Score Metrics box when it comes to adding knowledge of an Exploit to the score. You can choose one of the following:

  • Not Defined
  • Unproven that Exploit Code Exists
  • Proof of Concept Code [Exists]
  • Functional Exploit Code Exists
  • High

For you kids bouncing in your seats and waving your hands in the air to answer the question, consider this. Does this choice have to do with publicly known exploits, meaning that everybody on the Internet knows about them or does it have to do with exploits that only I know about? That is the royal "I" in that last sentence meaning all iDefense customers know about it.

Historically, we have annotated exclusives in our alerts as "Proof of Concept Code [Exists]" or "Functional Exploit Code Exists". In other words, we have acknowledged the iDefense exploit in the CVSS score. Understandably, this choice bumps up the CVSS value. One of our customers raised a red flag last week and said they would prefer us to only use these values if the vulnerability was known to the general public. You see, they have built-in processes around the iDefense CVSS score. If it gets above 9.something, then their escalation processes kick in and they have to do a lot of extra work quickly to mitigate this new, high-severity threat. They would prefer not to do that for threats that are not known to the general public.

My razor-like retort to that statement is to remind the customer of the reason he or she subscribed to the iDefense service in the first place; to get early warning about threats like these and to mitigate them before they go public. It sounds to me like the system worked.

But, now that I am home, have had a beer or two, have kicked off my shoes and reclined in my easy chair, I have the time to be magnanimous. (I linked "magnanimous" to dictionary.com so that I can come back later and figure out what the word means.)

You see, we don't mark other security vendor's claims to exclusive vulnerabilities the same way as our own. If Immunity claims to have a new exploit, we mark that as "Unproven that Exploit Code Exists" until the vulnerability gets into the public sphere. Obviously, Immunity must have something or they would not say anything. So, why count them differently? Well, because if we have an exclusive, we know we have it. If Immunity has it, we are not sure; we are sort of sure - in fact mostly sure, but not completely.

All of this nonsense does not really answer the question though.

Deapesh Misra, one of our senior analysts on the Vulnerability Aggregation Team, said the answer is quite simple. He had to speak slowly and use one syllable words for me to get it, but he said the answer is in the name of the scoring system itself. It is the Common Vulnerability Scoring System; emphasis on the Common. It is not the Rick Howard Gee-Whiz Make-it-up-as-You-Go scoring system or even the iDefense Exclusive Scoring System. It is the Common Vulnerability Scoring System. The theory is that if everybody in the world applied the rules of the system correctly to the same vulnerability, everybody would calculate the same score. This works most of the time, plus or minus small discrepancies.

As much as I do not want to admit it, the customer was right. I hate when that happens. We are changing our process. From now on, we will not consider iDefense exclusives in the CVSS score unless they are in the public somehow. We will document the stuffing out of them in our published alert, but the CVSS score will remain pure.

Now, let me look around for another issue that I can point my razor-like retorts at. Just remember to speak slowly to me.