23
Copyright ©2009 Savid Technologies, Inc. All Rights Reserved Application Security Building The Audit Program Michael A. Davis Chief Executive Officer Savid Technologies, Inc. http://www.savidtech.com

Applicaiton Security - Building The Audit Program

Embed Size (px)

DESCRIPTION

Why and How to build an Application Security Audit Program from the ISACA Chicago 2012 Boat Cruise Event

Citation preview

Page 1: Applicaiton Security - Building The Audit Program

Copyright ©2009 Savid Technologies, Inc. All Rights Reserved

Application SecurityBuilding The Audit Program

Michael A. Davis

Chief Executive Officer

Savid Technologies, Inc.

http://www.savidtech.com

Page 2: Applicaiton Security - Building The Audit Program

Agenda

» Where Is The Application Security Problem?

» Secure Software Development Life Cycle (SDLC)

» How to deploy a SDLC

» Tips on what not to do

» Steps to Build the Audit Program

Page 3: Applicaiton Security - Building The Audit Program

Who am I?

» Michael A. Davis

– CEO of Savid Technologies

• IT Security, Risk Assessment, Penetration Testing

– Speaker

• Blackhat, Defcon, CanSecWest, Toorcon, Hack In The Box

– Open Source Software Developer

• Snort

• Nmap

• Dsniff

» Savid Technologies

– Risk Assessments, IT Security Consulting, Audit and Compliance

Page 4: Applicaiton Security - Building The Audit Program

Author

Page 5: Applicaiton Security - Building The Audit Program

InformationWeek Contributor

Page 6: Applicaiton Security - Building The Audit Program

Where we got our data

» November 2011 Survey

» Over 450 Security and Audit Professionals

» Follow-up Interviews

» Wide Variety Of Industries

– Financial

– Healthcare

– Business Services

Page 7: Applicaiton Security - Building The Audit Program

We All Know This But..

• 75% of attacks are at the Application Level -Gartner

• 95% of all vulnerabilities are in software -NIST

• 7 out of 10 web sites have serious vulnerabilities - White Hat Security

Page 8: Applicaiton Security - Building The Audit Program

If Cars Were Built Like Applications….1. 70% of all cars would be built without following the

original designs and blueprints. The other 30% would not have designs.

2. Car design would assume that safety is a function of road design and that all drivers were considerate, sober and expert drivers.

3. Cars would have no airbags, mirrors, seat belts, doors, roll-bars, side-impact bars, or locks, because no-one had asked for them. But they would all have at least six cup holders.

4. Not all the components would be bolted together securely and many of them would not be built to tolerate even the slightest abuse.

5. Many safety features originally included might be removed before the car was completed, because they might adversely impact performance.

- Denis Verdon

Page 9: Applicaiton Security - Building The Audit Program

Enterprises Inherit Majority of Application Security Risk

© 2012 Veracode

Page 10: Applicaiton Security - Building The Audit Program

Where is the problem?

Root Cause:– Developers are not trained to write or test for secure code

– Network security (firewall, IDS, etc) does not protect the Web

Application Layer

– Business Goals do not match Security Goals

•Current State:– Organizations test tactically when a vuln is found

– A communication gap exists between security and development as such

vulnerabilities are not fixed

– Testing coverage is incomplete and assume training will fix the problem

– We don’t measure or manage application security

– Only looking at Source Code

Page 11: Applicaiton Security - Building The Audit Program

Lets get Specific

Page 12: Applicaiton Security - Building The Audit Program

Language Really Doesn’t Matter

Page 13: Applicaiton Security - Building The Audit Program

Application Security Challenges

• Are vague or too broad (OWASP, BITS)

• Are too detailed & myopic (CWE)

• Lack pragmatic guidance on metrics

• Ignore current threat landscape

• App Sec Program Metrics

– Confuse Risk with LOC

– Disenfranchise developers

– Fail to clearly communicate:• Impact and Loss to Business

• Savings (remediation, lost opportunity cost)

• Positive progress over time (ROI)

Page 14: Applicaiton Security - Building The Audit Program

#0: Inappropriate Scope

• Many different areas:

– SDLC

– Risk Assessment/Threat Modeling Processes

– Source Code Review

– Dynamic/Static Analysis Technologies

– Education

• What will you include?

– Risk Assessment

– Dynamic/Static Analysis Technologies

Page 15: Applicaiton Security - Building The Audit Program

#1 - Start with Goals

• What are we trying to accomplish?

• Measurement is critical to success

– Outline this BEFORE you pick a technology or

change processes

• What lifecycle stage are most flaws originating in?

• What security mechanisms are we having trouble

implementing?

• What security vulnerabilities are we having trouble

avoiding?

Page 16: Applicaiton Security - Building The Audit Program

#2 - Integrate with SDLC

Abuse

Cases

Security

Requirements

Risk

Analysis

Risk-based

Test Plans

Static

Analysis

Security Ops &

Vulnerability Mgt

Risk

Analysis

Design

Review

Requirements andUse Cases

PlanRisk

AssessmentDesign

Security

Design

Reviews

Application

Security

Testing

S/W Support

Scanning &

Remediation

Build Deploy

Architecture andDetailed Design

Code and TestingField Deployment and

Feedback

Organizations that provide security risk-based analysis throughout the lifecycle will have more resilient software products and systems

Organizational Process Assets cover: governance, policies, standards, training, tailoring guidelines

Modifying the SDLC to incorporate security processes

and tools should be done in phases

Allow for time to change culture and processes

Avoid drastic changes to existing development environment

Balance benefits and determine best integration points

Penetration

Testing

* Adopted in part from “What to Test from a Security Perspective: An Introduction to Security Testing for the QA Professional” (Cigital) and

“Neutralizing the Threat: A Case Study in Enterprise-wide Application Security Deployments” (Fortify Software & Accenture Security Technology

Consulting)

CodeReview

“Build Security In” throughout the lifecycle

Page 17: Applicaiton Security - Building The Audit Program

#3 – Properly Automate

» Quality is not just “Does it work”, Security is a measure of quality also.

• QA IS THE SPOT

– Use existing ticketing/processes

– QA training will yield higher results (already focused on negative testing)

– Comprehensive and used to backtest

• Don’t force the developers to do it

– Unless small team

• Leverage technology

– Code Coverage

– Decrease false negatives

Page 18: Applicaiton Security - Building The Audit Program

#4 – Don’t forgot defense in depth

• Reduce impact by locking down the environment – YOU

CAN control these

Guards, locks, tracking devicesPhysical security

Application SecurityApplication

OS hardening, authentication, update management, antivirus updates, auditing

Host

Network segments, IPSec, NIDSInternal network

Firewalls, Web Application Firewalls, Data Leak Prevention

Perimeter

Strong passwords, ACLs, encryption, EFS, backup and restore strategy

Data

Page 19: Applicaiton Security - Building The Audit Program

Lack of Failure Analysis

• Failure analysis is the process of collecting and

analyzing data to identify the failed condition of a

complex system

• “Cause and Effect relationships govern everything that

happens and as such are the path to effective problem

Solving” – Dean Gano

• Every Problem in our lives have the three basic elements

connected through causality

• Each Effect, has at least two causes: an Action and

Condition

Page 20: Applicaiton Security - Building The Audit Program

Conditions and Actions exist along a continuum of Time and space

• Conditions can exist at various times, but the effect is the result when the action occurs and the conditions exist at the same time and space.

Page 21: Applicaiton Security - Building The Audit Program

Building the Audit Program

• Start small and focus on implementation of risk analysis and testing into SDLC

• Don’t attempt to force use of a framework right away

• Look at test plans and ensure security is represented

• Critical Apps must be pen tested/scanned.

• If culture allows, look for ongoing training. Preferably using a specific secure programming course

• Focus on educating development to look at their metrics and their problems– Helps prove why SDLC is needed.

Page 22: Applicaiton Security - Building The Audit Program

Review of App Sec Controls/MetricsProcess Metrics

� Is a SDL Process used? Are security gates enforced?

� Secure application development standards and testing criteria?

� Security status of a new application at delivery (e.g., % compliance with organizational security standards and application system requirements).

� Existence of developer support website (FAQ's, Code Fixes, lessons learned, etc.)?

� % of developers trained, using organizational security best practice technology, architecture and processes

Management Metrics

� % of applications rated “business-critical” that have been tested.

� % of applications which business partners, clients, regulators require be “certified”.

� Average time to correct vulnerabilities (trending).

� % of flaws by lifecycle phase.

� % of applications using centralized security services.

� Business impact of critical security incidents.

Page 23: Applicaiton Security - Building The Audit Program

Conclusion

Contact Information

Michael A. Davis

[email protected]

708-532-2843

Twitter: @mdavisceo