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

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 Senior 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 Magazine, ... View Full Bio

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Cartoon
Latest Comment: LOL.
Current Issue
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2013-6213
Published: 2014-04-19
Unspecified vulnerability in Virtual User Generator in HP LoadRunner before 11.52 Patch 1 allows remote attackers to execute arbitrary code via unknown vectors, aka ZDI-CAN-1833.

CVE-2013-6214
Published: 2014-04-19
Unspecified vulnerability in the Integration Service in HP Universal Configuration Management Database 9.05, 10.01, and 10.10 allows remote authenticated users to obtain sensitive information via unknown vectors, aka ZDI-CAN-2042.

CVE-2012-0871
Published: 2014-04-18
The session_link_x11_socket function in login/logind-session.c in systemd-logind in systemd, possibly 37 and earlier, allows local users to create or overwrite arbitrary files via a symlink attack on the X11 user directory in /run/user/.

CVE-2012-6646
Published: 2014-04-18
F-Secure Anti-Virus, Safe Anywhere, and PSB Workstation Security before 11500 for Mac OS X allows local users to disable the Mac OS X firewall via unspecified vectors.

CVE-2013-4279
Published: 2014-04-18
imapsync 1.564 and earlier performs a release check by default, which sends sensitive information (imapsync, operating system, and Perl version) to the developer's site.

Best of the Web