Will code-check tools make for worm-proof software?
Takeaway: Programs to catch security flaws during the software development process are gaining more traction as firms look to hold software makers responsible for the security of their applications.
Stay on top of the latest tech news with our free IT News Digest e-newsletter, delivered each weekday. Automatically sign up today!
By
Robert Lemos
Staff Writer, CNET News.com
When Microsoft needed help in taming the large number of flaws that had crept into its Windows operating system, it looked to technology known as "static source-code checkers" and a company called Intrinsa.
Intrinsa's product, known as PREfast, analyzed the code created by developers and flagged potential errors. The software giant found the program so helpful it bought the company for $60 million in 1999. Today, a handful of other developers of similar products hope to convince customers that they should be using their programs to spot-check security.
For Microsoft, such tools have become an integral part of its Trustworthy Computing Initiative, which aims to make Windows computers more reliable. The software maker trains 20,000 developers annually in secure programming, but the tools enforce discipline on a daily basis, said Michael Howard, security program manager for the company.
"We are not seeing the same (security) issues as five years ago," he said. "We have educated people, so they understand these issues, and the tools are a lot better. People are not writing bad code. They are writing better code in the first place."
A handful of other companies have started to sell tools similar to the static source-code checker used by Microsoft. Though the tools have heretofore been developed mainly by academicians intent on collecting data about software flaws, these companies think the programs are mature enough for commercial applications. Moreover, with corporate information-technology managers fed up with security flaws, many are ready to adopt the technology.
The spotlight on developers has increased in intensity in recent months with the release of a technology industry plan for better development and a report from the Business Roundtable that
"Most of the significant cyberincidents that have harmed American business and consumers over the past several years have had as their root cause defective and readily exploitable software code," the Business Roundtable, which includes
Microsoft, more than any other company, has raised the ire of corporate America for flaws in its widely used Windows operating system. Though many might dispute how successful Microsoft has been in eradicating software flaws, fewer people are questioning the company's focus on security and its acquisition of tools to lock down code.
"Bill Gates has it right, with all due respect to those who want to bash Microsoft--there is nobody that doesn't have to deal with this issue," said Steve Orrin, chief technology officer for Sanctum, the maker of a tool to check Web applications for security holes. "There was no one forcing QA (quality assurance) to think of security. That is night and day compared to what is happening now."
Driven by the concerns of corporate customers that fear the Internet's darker denizens, companies such as Sanctum see business booming as more businesses look for ways to check the security of the software they rely on. Many hope to vet their in-house applications, but the majority want to check products that they will ship or software that is produced by outside partners.
Sanctum, which had originally focused on creating software that could act as a barrier between online attackers and Web servers, found the interest from developers in its software's security-auditing capabilities so high that it has decided to target that market.
"We evolved our whole corporate strategy over the last year toward development," Orrin said. "We have been surprised at the acceleration of behavioral change that has occurred."
What's changed is that Internet-connected businesses can no longer afford to rely on software riddled with bugs, said Mike Armistead, founder and vice president of marketing for
"We all became interconnected, which has been a productivity boom, but no one thought that you would have so many people from the outside having access," he said.
Although developers test their software today for flaws, the testing is usually structured to determine if the software works properly, rather than whether intentionally improper actions cause the software to fail.
Software developers say, "'I am not going to catch everything, and (that's OK because) it is accepted industry practice to ship the product and let people tell me what's wrong with it,'" Armistead said.
However, not all security researchers come forward with flaws that they find. Moreover, many security experts believe developers could become legally liable for the software bugs that they don't find, especially if the tools are available to detect those errors.
"Down the road you want everyone to be using these tools in their compilers," said David Evans, assistant professor for computer science at the University of Virginia and the creator of a code analysis tool known as Splint. "It is a real embarrassment to the industry that people still produce code with buffer overflows."
Buffer overflows are a common memory error that allow online attackers to run malicious code on other people's computers. The MSBlast and Sasser worms both used buffer overflows in Microsoft's Windows operating system to spread across the Internet. Yet, buffer overflows aren't new--security researchers have known about them for three decades.
Despite the potential for these code analysis tools to help alleviate such long-standing problems, not everyone believes the technology is ready for the real world.
Dave Aitel, principal security researcher and founder of
"If it finds 500 bugs, you have to go through those 500 bugs and fix them--any false positive rate destroys the economics," Aitel said. "Maybe in three generations it will be economically feasible for large code bases."
Yet, Aitel acknowledges that such tools are needed.
"If you look at most corporate code, it is littered with easy bugs," he said. "A lot of these really big vendors do no checking at all. There is a big market out there for something that can shoot through 30 million lines of code and catch the obvious stuff."
Another supporter of source code analyzers, Dawson Engler, believes the tools catch enough flaws to make them valuable today.
"I think we will get better and better at finding more and more holes," said Engler, a Stanford University computer science professor who has written much on the field. Engler started
Rival company Ounce Labs intends to put the pressure on software developers by empowering their customers.
The company, which hopes to launch its code-analysis product in June, announced on Tuesday that it had created a boilerplate contract addendum that holds software makers responsible for guaranteeing the security of their software. CEO Jack Danahy believes that if companies start adding the wording to contracts, developers will then proactively start checking their software for flaws. And that means more customers for those that make analysis tools.
"What happens is that I don't have to accept (the software) from you unless you make sure it is secure," Danahy said. "Security now becomes a requirement."
Print/View all Posts Comments on this article
SponsoredWhite Papers, Webcasts, and Downloads
- Live Webcast: Simplified IT with Software-as-a-Service (SaaS) ZDNet
- Live Webcast: Web Threats Don't Discriminate - Large and Small IT Departments Need to be Equally Prepared IronPort Systems
- Yankee Group: Exploring the Benefits of 3G Wireless Integrated into Business-Class Routers Sprint
- Software Development's Classic Mistakes 2008 Construx Software Builders
- Getting the Foundation Right - Unified Communications ShoreTel
Article Categories
- Security
- Security Solutions, IT Locksmith
- Networking and Communications
- E-mail Administration NetNote, Cisco Routers and Switches
- CIO and IT Management
- Project Management, CIO Issues, Strategies that Scale
- Desktops, Laptops & OS
- Windows 2000 Professional, Microsoft Word, Microsoft Excel, Microsoft Access, Windows XP,
- Data Management
- Oracle, SQL Server
- Servers
- Windows NT, Linux NetNote, Windows Server 2003
- Career Development
- Geek Trivia
- Software/Web Development
- Web Development Zone, Visual Basic, .NET





