Home
BYTE Newsletter
Keep up with all the BYTE News and Reviews

Subscribe

Tired Of Security Problems? Change Rules Of Writing Code

Comments | Boonsri Dickinson, BYTE | July 31, 2012 04:17 PM

Category: Smartphones

By changing the way developers fundamentally code, security researcher Dan Kaminsky plans on fixing holes in computer security. During BlackHat and DefCon at the Rio All Suite Hotel and Casino in Las Vegas, Kaminsky spoke to BYTE about how he thinks rewriting the rules of computer science is the way forward to avoid bugs, attacks, and other vulnerabilities.

Kaminsky is best known for finding and fixing a flaw in the Internet's Domain Name System (DNS).

"Dogmatic approaches to computer security are not solving the problems we have. We need new models of programming and engineering because what we are doing isn't working. There's not enough science [being done]," he said.

This week, Kaminsky plans to release an update to a package called Interpolique compiler, which keeps code and data separate. The problem with how things are done now, said Kaminsky, is that developers don't write secure code--they want to mix code and data.

It's not like developers hate security, he said. "They aren't saying they want to leak credit card numbers." So the real question is: why aren't developers coding in a way that prevents problems?

"We have to make things that are useful for developers. We need to respect developers and give them the tools that they need. We know we have security issues with timing," Kaminsky said. "They're the vast majority of vulnerabilities ever written and discovered. We haven't actually fixed them. If we did fix them, they wouldn't still be costing billions of dollars."

The hypothesis of language theoretic security is that security vulnerabilities are the consequences of the languages code is written in, noted Kaminsky. In other words, our biggest problems in security do not revolve around random number generation; they revolve around languages. There are three problems: the inability to authenticate, the inability to write secure code, and the inability to bust the bad guys, he said.

Kaminsky explained that by using clocks in the computer, for example, it stops random number generation from being a viable way to attack computer networks.

"It doesn't matter what code you write, if there are parties in the middle changing or blocking what you sent. Content alteration and blocking is becoming a real thing. Verizon is claiming the first amendment right to rewrite Internet connections. Entire countries are silently blocking Web pages," said Kaminsky.

"[Before] finding out certificates have been changed, we have to find out something had happened. I'm playing the detection game. I want to increase the likelihood that testing actually occurs," Kaminsky said.

By creating underlying technologies, Kaminksy wants to increase the amount of data available, so vulnerabilities can be discovered faster.

"We are operating in a vacuum of information. There are things we are afraid of in security and censorship. Why don't we find out what is happening?"

Boonsri Dickinson is the Associate Editor of BYTE



Related Reading


More Insights




Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

BYTE encourages readers to engage in spirited, healthy debate, including taking us to task. However, BYTE moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing/SPAM. BYTE further reserves the right to disable the profile of any commenter participating in said activities.

COMMENTS

Tune In to BYTE
Facebook Twitter LinkedIn Newsletter RSS
Whitepapers
whitepaper
In this paper you will learn the five trends shaping the future of enterprise mobility. Learn how the rise of social media as a business application, the lurring between work and home, the emergence of new mobile devices, the demand for tech savvy employees and changing expectations of corporate IT will fundamentally change the workplace.
whitepaper
In a survey of more than 1,700 information workers (iWorkers) in North America, notebooks, desktops, and smartphones were found to be “must-have” devices, while tablets, slates, and netbooks were relegated to “nice-to-have” status, according to a commissioned study conducted by Forrester Consulting on behalf of Dell and Intel.
Sponsored by: Dell
Upcoming Events