Understanding Software Vulnerabilities
-
Upload
thomas-bain -
Category
Documents
-
view
127 -
download
0
description
Transcript of Understanding Software Vulnerabilities
UNDERSTANDING YOUR SOFTWARE VULNERABILITIESFrom Identification to Verification to Remediation
(Part 2 in our 3-part series)
TODAY’S PRESENTER
Joe BasiricoVP, Security ServicesSecurity Innovation
TODAY’S AGENDA
1.Challenges organizations are facing in identifying, verifying and fixing vulnerable software code.
2.Four defined use cases - where does your organization fit in?
3.Five key best practices you should consider in determining your approach.
4.Practical demonstration:
‣ A series of simulated tests‣ Measuring the impact of those results
‣ Interpreting test results
‣ Correlation of results through TeamMentor for remediation
Development and Security teams are looking for a better process to fix software vulnerabilities.
WHO WE AREApplication Security Experts• 10+ Years vulnerability research • Security Testing Methodology adopted by
SAP, Microsoft, Symantec• Authors of 8+ books
Products and Services• Standards - Best Practices• Education - CBT & Instructor-Led• Assessment - Software and SDLC
Reducing Application Security Risk• Critical Vulnerability Discovery• Secure SDLC Rollout• Internal Competency Development
OUR APPROACH• Standards: Create security
policies, align dev activities with standards and compliance requirements, fix vulnerabilities.
• Education: Create internal expertise through eLearning, Instructor-led and virtual classroom training.
• Assessment: Assess software apps against online and other threats and recommend remediation techniques.
COMMON USE CASES1.Development teams don’t know
where to go for best practices guidance on software vulnerabilities.
2.There’s a need to communicate and share intelligence around specific vulnerabilities with your team.
3.Teams need to fix vulnerabilities and map to internal policies.
4.There’s a market need for making more sense of static analysis results to get to full-circle remediation.
WHERE CAN DEVELOPERS GO FOR THE GUIDANCE THEY NEED?
• A software vulnerability has been identified.
• You need to verify it and need more information about it.
• What do you do, and where do you go for guidance?
Use Case 1- Security Team
HOW CAN YOU SHARE THE INFORMATION?
Use Case 1I - Security Team
• You’ve verified a software vulnerability.
• You need to communicate the details of that vulnerability or set of vulnerabilities to your team.
• How is this accomplished most effectively?
INTEGRATING WITH WHAT YOU ALREADY HAVE
Use Case III - Development Team
• You’ve verified a given vulnerability, and can now prioritize it.
• You have knowledge internally, or security policies you need to map to.
• How can I do this in a streamlined way?
DOING MORE WITH YOUR TEST RESULTS
Use Case IV - Development Team with Tools
• The tool reports findings.
• You need to make more sense of the results.
• The findings point to guidance specific to the findings.
• Fix what you’ve found. Re-scan.
DETERMINE YOUR RISK TOLERANCEUnderstand your level of risk first. Determine your apps second.
• Take an inventory of your high-risk applications.
• Determine the business criticality of those applications.
• What’s your attack probability and how do you define your attack surface?
• Consider the overall business impact, security threats and compliance mandates.
• Rank your applications accordingly.• Start thinking about the most effective set of testing tools.
DEFINE DATA AND APPLICATIONSClassify your data relative to sensitivity, usage and risk metrics.
Then prioritize your applications.
• How sensitive is your data in a given application(s)?
• Does that data pertain to internal mandates or federal regulations?
• Threat modeling can determine threats, attacks, and the frequency and severity they are executed with.
• Rank and prioritize your applications accordingly.
• Compile the most effective set of testing tools.
PRIORITIZE YOUR APPLICATIONSRank your applications using a formulaic approach to measuring risk.
Threat Rating
Sensitive Data
Lifespan Compliance Stringency
Customer-Facing
Tier 1 Restricted Long High Yes
Tier 2 Private Mid Medium Yes
Tier 3 Public Short N/A No
Application Criteria
MAP ACTIVITY TO YOUR CRITERIAImplement your security testing strategy.
Depth, Breadth, Frequency
Threat Rating
Static Analysis
Dynamic Analysis
Manual Pen Test
Threat Modeling
Complete/Frequency
Complete/Frequency
Complete/Frequency
Complete/Frequency
Tier 1Required/Major code changes
Required/Major code changes
Required/Per Milestone
Required/Per Release
Tier 2Suggested/Monthly
Required/Quarterly
Required/Per Release
Suggested/Per Release
Tier 3Optional/Quarterly
Required/Annually
Optional/As Needed
Optional/As Needed
SELECT YOUR TOOLSSelecting your tool(s) should be the final step before you start testing.
• Apply your rankings to your tools selection.
• Determine your combination of automated vs manual tools. - Consider how many applications, how much code and time-to-result.
- Do you need them to run on their own, or are they better used for a singular, manual purpose?
- Assume that automated tools cannot target business logic attacks.
• Interpret your scan results with remediation in mind
SECURE DEVELOPMENT GUIDANCEA Real-Time In-Practice Companion Containing 4500+ Articles
of Prescriptive Guidance and Code
• Full set of guidance libraries (4500+ articles)• Single user, cloud instance, business unit, and enterprise-wide
pricing available• Partner organization licensing• Contact us: [email protected]
TRY TEAMMENTOR TODAY!
• OWASP Guidance Library (Creative Commons content)• Install locally or use web version• Watch a video: http://bit.ly/Vra3OS • Download it: https://teammentor.net/
Evaluation Version:
Enterprise and Partner Versions: