Risk
6/14/2010
04:47 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
50%
50%

Kaminsky Issues Developer Tool To Kill Injection Bugs

Researcher's new startup offers up new approach to preventing common SQL injection, XSS vulnerabilities in software

Renowned security researcher Dan Kaminsky today went public with the launch of a new venture as well as its first deliverable -- a tool for application developers that helps prevent pervasive string injection-type attacks, such as SQL injection and cross-site scripting (XSS).

Kaminsky says his New York-based startup, Recursion Ventures, will productize research that breaks new ground in both security and technology, in general. His first deliverable is Interpolique, a tool that offloads much of the security responsibility from the developer, which he considers crucial to yielding more secure applications. "Security development tends not to care how inconvenient it is for developers," Kaminsky says. "[This is] about meeting developers halfway."

The trouble with today's model for writing more secure code and sidestepping known injection attacks, Kaminsky says, is it makes development much more difficult and requires more work for developers. The result: Developers often don't bother adopting these practices at all, resulting in insecure code, he says. "A lot of advice we give in security tells people to write things in a way that makes code hard to work with and use ... I think that's unnecessary," he says. "Our hope is to make an easier way to write code that's also the most secure."

Interpolique -- which was released for security experts and IT to poke around at and analyze, but not to use operationally -- is basically a framework that lets developers continue to write code the way they always have, but with a tool that helps prevent them from inadvertently leaving string injection flaws in their code. It requires developers to use different prefixes that describe variables of the strings, without requiring any major changes to their coding style, he says. And the resulting code is automatically formatted in such a way that can't be easily abused by the bad guys.

"Our system makes it very clear what is data and what is code without asking the developer to jump through hoops to make that expression" as with existing secure coding options for string-injection prevention, Kaminsky says. The tool establishes a boundary between data and code and then translates it for the destination coding language -- be it SQL or JavaScript, for example, he says.

Kaminsky is offering up the technology for open-community review and plans to reveal his findings from the feedback at Black Hat USA in Las Vegas next month. "Our ultimate goal is to minimize vulnerabilities in software," he says. "I'm putting this out for review to see if it works. It looks good -- it has held up to a lot of attacks."

But Interpolique's potential wild cards could be databases and browsers, he notes. There's a chance it might not work with all types of browsers or databases, he says.

And if Kaminsky's new approach for developing more secure code does fly after the research and security community gets a crack at it, then it requires adoption by developers -- something security experts say won't be so easy.

"Dan's new venture looks interesting," says Robert "RSnake" Hansen, founder of SecTheory. "Dan is clearly a very smart guy and has a lot of unique experience. My only negative comment is, like any solution, getting developers to adopt new frameworks is tedious and can take forever.

"It might work well for new applications, but for this to have real impact it needs to be integrated directly into IDEs like Visual Studio. I have no doubt Dan has some magic up his sleeves, but there are some large hurdles to overcome to get the kind of adoption necessary to make a difference."

Hansen says developers aren't paid to write secure code, so they basically take the simplest route. "It's fair to assume that developers will latch onto any technology that makes their lives easier, though, so if this can accomplish that goal without adding too many unnecessary steps, then it could work. But that's a big 'if.'"

Jeremiah Grossman, CTO and co-founder of White Hat Security, says Kaminsky's approach looks promising on paper. "But it has to pass on to the implementation phase," Grossman says. "As far as deployment, [it's unclear] how might it work with DB2 and Oracle ... and XSS on the browser."

Kaminsky says he's open to feedback on his Interpolique research. But the bottom line is string-injection flaws are endemic to the Web, cross all languages, and can result in major financial fallout for organizations. His hope is that the proposed approach for developers helps wipe out most of these flaws.

"Life is too short to defend broken code," he says.

Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.

Kelly Jackson Higgins is Executive Editor at DarkReading.com. She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Cartoon
Current Issue
Dark Reading, September 16, 2014
Malicious software is morphing to be more targeted, stealthy, and destructive. Are you prepared to stop it?
Flash Poll
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-0985
Published: 2014-09-20
Stack-based buffer overflow in Advantech WebAccess (formerly BroadWin WebAccess) 7.2 allows remote attackers to execute arbitrary code via the NodeName parameter.

CVE-2014-0986
Published: 2014-09-20
Stack-based buffer overflow in Advantech WebAccess (formerly BroadWin WebAccess) 7.2 allows remote attackers to execute arbitrary code via the GotoCmd parameter.

CVE-2014-0987
Published: 2014-09-20
Stack-based buffer overflow in Advantech WebAccess (formerly BroadWin WebAccess) 7.2 allows remote attackers to execute arbitrary code via the NodeName2 parameter.

CVE-2014-0988
Published: 2014-09-20
Stack-based buffer overflow in Advantech WebAccess (formerly BroadWin WebAccess) 7.2 allows remote attackers to execute arbitrary code via the AccessCode parameter.

CVE-2014-0989
Published: 2014-09-20
Stack-based buffer overflow in Advantech WebAccess (formerly BroadWin WebAccess) 7.2 allows remote attackers to execute arbitrary code via the AccessCode2 parameter.

Best of the Web
Dark Reading Radio