28.10.2014 Views

SQL Injection Attacks and Defense - 2009

SQL Injection Attacks and Defense - 2009

SQL Injection Attacks and Defense - 2009

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Reviewing Code for <strong>SQL</strong> <strong>Injection</strong> • Chapter 3 131<br />

Remember the old proverb: “A bad workman always blames his tools”! In these<br />

situations, it may be easy to blame the tool for failing to deliver. However, this is not<br />

the case. You should never rely on just one tool, <strong>and</strong> instead should leverage multiple<br />

tools <strong>and</strong> techniques during the development life cycle. In addition, multiple<br />

experienced <strong>and</strong> knowledgeable individuals should perform audits at different<br />

stages of the project to provide assurances that implemented processes <strong>and</strong> procedures<br />

are being followed. Developers shouldn’t be reprim<strong>and</strong>ed harshly; instead, they should<br />

be given constructive feedback <strong>and</strong> education where necessary so that they learn from<br />

the process <strong>and</strong> ultimately produce more secure code. Code analysis tools should be<br />

used as guidelines or preliminary benchmarks as opposed to definitive software<br />

security solutions.<br />

Ounce<br />

The Ounce toolset is a collection of several components. The Security Analyst component<br />

parses source code into what it calls a Common Intermediate Security Language (CISL).<br />

The SmartTrace component graphically represents how data flows through vulnerable code;<br />

vulnerabilities can then be assigned to self-contained “bundles” which are then passed along<br />

to developers to fix. Developers open these bundles using the Ounce Developer plug-in for<br />

Visual Studio or Eclipse. The bundle includes all relevant information about the vulnerability,<br />

including SmartTrace graphs <strong>and</strong> remediation advice. The tool also generates application<br />

audit metrics for management reports.<br />

■■<br />

■■<br />

■■<br />

■■<br />

■■<br />

URL: www.ouncelabs.com<br />

Languages: Java, JSP, C, C++, C#, ASP.NET, VB .NET, JavaScript,<br />

classic ASP/VBScript, <strong>and</strong> Visual Basic 6<br />

Platforms: Windows, Solaris, Linux, <strong>and</strong> AIX<br />

IDEs: Microsoft Visual Studio <strong>and</strong> Eclipse<br />

Price: Contact to request quote<br />

Fortify Source Code Analyzer<br />

Source Code Analyzer is a static analysis tool that processes code <strong>and</strong> attempts to identify<br />

vulnerabilities. It uses a build tool that runs on a source code file or set of files <strong>and</strong> converts<br />

the file(s) into an intermediate model that the company optimizes for security analysis.<br />

This model is put through a series of analyzers (data flow, semantic, control flow,<br />

configuration, <strong>and</strong> structural). Source Code Analyzer also uses Secure Coding Rule Packs to<br />

analyze the code base for violations of secure coding practices.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!