Pwn2Own winner will show Apple how to find bugs
The only researcher to “three-peat” at the Pwn2Own hacking contest said on Thursday that security is such a “broken record” that he won’t hand over 20 vulnerabilities he’s found in Apple’s, Adobe’s and Microsoft’s software.
Instead Charlie Miller will show the vendors how to find the bugs themselves.
Miller, who on Wednesday exploited Safari on a MacBook Pro notebook running Snow Leopard to win $10,000 in the hacking challenge, said he’s tired of the lack of progress in security. “We find a bug, they patch it,” said Miller. “We find another bug, they patch it. That doesn’t improve the security of the product. True, [the software] gets incrementally better, but they actually need to make big improvements. But I can’t make them do that.”
Using just a few lines of code, Miller crafted what he called a “dumb fuzzer,” a tool that automatically searches for flaws in software by inserting data to see where the program fails. Fuzzing is a common technique used not only by outside researchers, but by developers to spot bugs before they release the software. Microsoft, for example, has long touted, and used, fuzzing as part of its Security Development Lifecycle (SDL), the term for its in-house process of baking security into products as they’re created.
Miller’s fuzzer quickly uncovered 20 vulnerabilities across a range of applications as well vulnerabilities in Apple’s Mac OS X 10.6, aka Snow Leopard, and its Safari browser. He also found the flaws in Microsoft’s PowerPoint presentation maker; in Adobe’s popular PDF viewer, Reader; and in OpenOffice.org, the open-source productivity suite.
Miller was to take the floor on Thursday at CanSecWest, the Vancouver, British Columbia-based security conference that also hosts Pwn2Own, to demonstrate how he found the vulnerabilities. He hoped Apple, Microsoft and other vendors would listen to what he has to say.
“People will criticize me and say I’m a bad guy for not handing over [the vulnerabilities], but it actually makes more sense to me to not tell them,” Miller said. “What I can do is tell them how to find these bugs, and do what I did. That might get them to do more fuzzing.” That, Miller maintained, would mean more secure software.
What really disappointed Miller was how easy it was to find these bugs. “Maybe some will say I’m bragging about finding the bugs, that I can kick ass, but I wasn’t that smart. I did the trivial work and I still found bugs.”
He went into the project figuring that he wouldn’t find any vulnerabilities with the dumb fuzzer. “But I found bugs, lots of bugs. That was both surprising and disappointing.” And it also made him ask why vendors like Microsoft, Apple and Adobe, which have teams of security engineers and scores of machines running fuzzers looking for flaws, hadn’t found these bugs long ago.
One researcher with three computers shouldn’t be able to do beat the efforts of entire teams, Miller argued. “It doesn’t mean that they don’t do [fuzzing], but that they don’t do it very well.”
By refusing to hand over technical information about the vulnerabilities he uncovered, Miller is betting that Microsoft, Apple and others will duplicate his work, and maybe, just maybe, be motivated to do better. “I think they’ll feel some pressure to find these bugs,” he said.
Miller used one of the flaws he found by dumb fuzzing to exploit Safari on a MacBook Pro, walking off with the notebook, $10,000 and a free trip to Las Vegas this summer to the DefCon hacking conference.
Miller also won cash prizes at Pwn2Own in 2008 and 2009, each time by exploiting a Safari vulnerability on the Mac.
Gregg Keizer covers Microsoft, security issues, Apple, Web browsers and general technology breaking news for Computerworld. Follow Gregg on Twitter at @gkeizer or subscribe to Gregg’s RSS feed. His e-mail address is firstname.lastname@example.org .