iSnare.com - Free Content Articles Directory
Authors Contents [Advanced Search][Add OpenSearch][Job Search]
Distribute your articles to thousands of article sites for only $2 and below! Read more...

Index  Computers and Technology
 

Automated Source Code Analysis

 
[ Contact the Author] [ Send to a Friend] [ Article Publisher] [Make PDF] [ Print] [ Bookmark & Share]
 
Read our Terms of Service before reprinting this article. The submitter specified above has claimed the rights to this article.
Gwyn Fisher

Automated source code analysis is technology aimed at locating and describing areas of weakness in source code. Those weaknesses might be security vulnerabilities, logic errors, implementation defects, concurrency violations, rare boundary conditions, or many other types of problem-causing code.

The name of the associated research field is static code analysis. This is differentiated from more traditional dynamic analysis techniques such as unit or penetration test by the fact that the work is performed at build time using only the source code of the program or module in question. The results reported are therefore generated from a complete view of every possible execution path, rather than some aspect of a necessarily limited observed runtime behavior.

Perhaps the most obvious question confronting any new developer-facing technology is: why?

�Why should developers use a new tool when they already have so many to choose from?

�What makes this technology compelling enough to make me want to add it to my already bloated build chain?

�And what does it do, anyway?

This paper will answer these questions, and more. But for the moment just consider the fact that at time of writing, 80% of the Fortune 500 have already deployed, or are currently engaged in deploying, some kind of automated source code analysis. The reasons for doing so can be stated in as many ways as there are people answering the question, but the basic principle can be found in all of these deployments:

� Tell me what�s wrong with my code before I ship it � don�t let me be the guy responsible for shipping a killer vulnerability or bug into the wild.

There are other compelling reasons, such as:

� Make my existing processes for code review more effective through automation

� Enhance my existing QA resource with 100% coverage of all boundary conditions

� Help me protect my brand as we go to market with new products

But the bottom line remains the capability of this technology to afford developers the ability to scrub their code of obvious and not-so-obvious weaknesses as they work, before they submit their code for check-in and more formal down-stream validation procedures.

Introduction to the technology:

The process of automated source code analysis involves building a rich representation or model of the provided code (akin to a compilation phase), and then simulating all possible execution paths through that model, mapping out the flow of logic on those paths coupled with how and where data objects are created, used and destroyed.

Once the projection of code paths and the mapping of data objects are available, we can look for anomalous conditions that either will or might potentially cause exploitable vulnerabilities, execution failure, or data corruption at runtime.

There are two major families of checking capability typical to this type of analysis: abstract syntax tree (AST) validation and code path analysis. The former case is most frequently applied to validation of the basic syntax and structure of code, whereas the latter is used for more complete types of analysis that depend on understanding the state of a program�s data objects at any particular point on a code execution path.

Important NoticeDISCLAIMER: All information, content, and data in this article are sole opinions and/or findings of the individual user or organization that registered and submitted this article at Isnare.com without any fee. The article is strictly for educational or entertainment purposes only and should not be used in any way, implemented or applied without consultation from a professional. We at Isnare.com do not, in anyway, contribute or include our own findings, facts and opinions in any articles presented in this site. Publishing this article does not constitute Isnare.com's support or sponsorship for this article. Isnare.com is an article publishing service. Please read our Terms of Service for more information.

Gwyn Fisher brings a valuable combination of vision, experience, and direct insight into the developer perspective.http://www.klocwork.com/http://www.klocwork.com/products/
Article Tags: analysis [See Dictionary], code [See Dictionary], source [See Dictionary]
Got a question about this article? Ask the community!
Article published on June 22, 2009 at Isnare.com
 
Rate this article:

Reverse Cell Phone Lookup - Did You See a Number on Your Spouse's Cell You Did Not Recognize?
Submitted by: J Williams-Foster

Reverse cell phone lookup services can provide information about phone number owners for a myriad of reasons, one reason that's not always considered is in the area of love...

How to Dispose of a Multifunction Printer
Submitted by: Derek Rogers

As with most electrical equipment, your printer is full of plastics, components and potentially hazardous materials...

Top 5 Camcorders - Which One to Pick?
Submitted by: Roberto Sedycias

Purchasing camcorders leads the buyer to view a wide range of choices; however, looking for the appropriate choice depends on the need of the buyer and budget...

Camcorder Recording Methods and Technology
Submitted by: Allen Roberts

Over the years, camcorders have evolved from tape (which has spanned many decades), to DVD, and more recently to Harddrives(HDD) and Flash Memory...

Valuing Your Entertainment With the LED LCD TV
Submitted by: RahXephon NeO

If you are looking into the latest technology for entertainment, then considering a LED LCD TV may be the best alternative...

How to Select a Digital Camera For Personal Needs
Submitted by: Roberto Sedycias

It is not necessarily that crucial to rely on the brand name when attempting to select the best digital camera...

Problems and Positives With Gps Cell Phones
Submitted by: Roberto Sedycias

GPS stands for Global Positioning System This can be a very valuable tool when traveling, or simply when trying to locate something in the local area without making unnecessary stops or getting lost...

Nokia 7510 Supernova Mobile Phone Review - The Ultimate Fun But Affordable Phone
Submitted by: Carlson Osbourne

The Supernova series that Nokia has released over the past few years has been met with a variety of reactions from mobile phone reviewers, with the most prevalent feeling being one of disappointment...

Reviewing the Akiles DuoMac 531 Combination 5:1 Pitch Coil and 3:1 Pitch Wire Binding Machine
Submitted by: Jeff McRitchie

As the only binding machine on the market with its particular set of features and options, the Akiles DuoMac 531 appears to hope that its versatility will provide binding solutions for businesses that want flexibility in their document production...

Akiles DuoMac 521 Combination Binding Machine Review
Submitted by: Jeff McRitchie

The Akiles DuoMac 521 presents the market with some nice versatility, although in an unusual combination of binding styles...

Reviewing the Akiles DuoMac 541 Combination 5:1 and 4:1 Pitch Spiral Coil Binding Machine
Submitted by: Jeff McRitchie

The Akiles DuoMac 541 is a unique binding machine in that it allows users to produce documents with both a four to one and five to one pitch binding...

Reviewing the Akiles DuoMac C51 Plastic Comb and 5:1 Pitch Coil Combination Binding Machine
Submitted by: Jeff McRitchie

Uniquely positioned as the only 5:1 pitch combo binding system on the market, the Akiles DuoMac C51 is presented as a solution for businesses that want the ability to do a variety of binding styles all on one machine...

Reviewing the Akiles Megabind 1E Plastic Comb Binding Machine
Submitted by: Jeff McRitchie

An electric comb binder that is meant for medium sized organizations and daily use, the Akiles Megabind 1E includes some features that smaller binding systems don't...

Reviewing the Akiles Offibind 21D Plastic Comb Binding Machine
Submitted by: Jeff McRitchie

As the smallest of Akiles' comb binding systems, the Offibind 21D is intended for use in small or home offices, or for businesses on a very tight budget...

Reviewing the Akiles OffiWire Wire-O Binding Machine
Submitted by: Jeff McRitchie

Presented as a small or home office solution for light duty binding, the Akiles OffiWire comes in 3:1 or 2:1 pitch versions...

Isnare.com Footer Divider

© 2004-2009. Isnare Free Articles - An Isnare Online Technologies Free Articles Project. All Rights Reserved.   Privacy Policy