Factors Impacting the Effort Required to Fix Security Vulnerabilities

Slides:



Advertisements
Similar presentations
Requirements Specification and Management
Advertisements

Chapter 7: Key Process Areas for Level 2: Repeatable - Arvind Kabir Yateesh.
HOW DO PROFESSIONAL DEVELOPERS COMPREHEND TO SOFTWARE Report submitted by Tobias Roehm, Rebecca Tiarks, Rainer Koschke, Walid Maalej.
Estimating Defect Density. True genius resides in the capacity for evaluation of uncertain, hazardous and conflicting information Winston Churchill.
The “Lifecycle” of Software. Chapter 5. Alternatives to the Waterfall Model The “Waterfall” model can mislead: boundaries between phases are not always.
Computer Engineering 203 R Smith Project Tracking 12/ Project Tracking Why do we want to track a project? What is the projects MOV? – Why is tracking.
Internet Management Consultants and Solution Providers Outstanding CMS Projects Lessons from the Front Line.
Ian Bui SYSM 6309 UTD - Spring Brave New World of R.E.  Multiple teams spread across the globe  Management separated from Development  Marketing.
Dr. Julian Lo Consulting Director ITIL v3 Expert
Avra Software CMPUT Process Quality and Software Assessment Case Study - slide#1©P. Sorenson and Amr Kamel Assessment Plan for Assessment Plan for.
SE is not like other projects. l The project is intangible. l There is no standardized solution process. l New projects may have little or no relationship.
User Experience Design Goes Agile in Lean Transformation – A Case Study (2012 Agile Conference) Minna Isomursu, Andrey Sirotkin (VTT Technical Research.
Requirements Management
Project Life Cycle Introduction and Overview © Ed Green Penn State University All Rights Reserved.
Chapter 3 Needs Assessment
Information Management Capacity Check (IMCC)
Health Care Cooperative Proposal for Training Services eLearnable Pam Rubinoff, Allan Rotgers, Victoria Villescas May 12, 2013.
Effective Methods for Software and Systems Integration
The Struggles of New College Graduates in their First Software Development Job Andrew Begel, Human Interactions in Programming, MS Research Beth Simon.
Team Launch Introduction. Real projects are large and complex, and most software is created by teams Merely throwing people together does not result in.
© Mahindra Satyam 2009 Project Metrics QMS Training.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXPERT Best practices.
BTS730 Communications Management Chapter 10, Information Technology Management, 5ed.
Org Name Org Site CMM Assessment Kick-off Meeting Dates of assessment.
Do not delete this graphic elements in here: All Rights Reserved © Alcatel-Lucent 2008 ACOS Forge.
Software Testing Lifecycle Practice
Test Organization and Management
Software Project Management Introduction to Project Management.
Software Engineering 2003 Jyrki Nummenmaa 1 REQUIREMENT SPECIFICATION Today: Requirements Specification Requirements tell us what the system should.
CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
CSCE 548 Code Review. CSCE Farkas2 Reading This lecture: – McGraw: Chapter 4 – Recommended: Best Practices for Peer Code Review,
SE-280 Dr. Mark L. Hornick 1 In software engineering, we sometimes distinguish between "practice" and "process". By "practice", we mean "what" software.
Introduction to Evaluation January 26, Slide 2 Innovation Network, Inc. Who We Are: Innovation Network National nonprofit organization Committed.
Software Measurement & Metrics
Project Tracking and Monitoring QMS Training. 2 Objective To track and monitor the progress of the project and take appropriate corrective actions to.
Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution Structured programming Product SW.
Software Quality Metrics
Use of Coverity & Valgrind in Geant4 Gabriele Cosmo.
Software Testing and Maintenance 1 Code Review  Introduction  How to Conduct Code Review  Practical Tips  Tool Support  Summary.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
OWASP ESAPI SwingSet An introduction by Fabio Cerullo.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Project Estimation techniques Estimation of various project parameters is a basic project planning activity. The important project parameters that are.
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
Security Development Life Cycle Baking Security into Development September 2010.
Inspection and Review The main objective of an Inspection or a Review is to Detect Defects. (Today -there may be some other goals or broader definition.
Monitoring and Evaluation in MCH Programs and Projects MCH in Developing Countries Feb 24, 2009.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
1 CREATING AND MANAGING CERT. 2 Internet Wonderful and Terrible “The wonderful thing about the Internet is that you’re connected to everyone else. The.
Advances In Software Inspection
Agile 101. Feasibility Study SDLC – What is it? Systems Development Life Cycle: The most commonly used, and generally accepted, project management approach..
Mahindra Satyam Confidential Quality Management System Software Defect Prevention.
What Causes Software Vulnerabilities? _____________________ ___________ ____________ _______________   flaws in developers own code   flaws resulting.
Welcome to MT140 Introduction to Management Unit 10 Seminar Reflection.
BSBPMG501A Manage Project Integrative Processes Manage Project Integrative Processes Project Integration Processes – Part 2 Diploma of Project Management.
Chapter 11 Project Management.
CASE Tools and Joint and Rapid Application Development
Inspection and Review The main objective of an Inspection or a Review is to detect defects. (Not for Giving Alternative Solutions) This activity and procedure.
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Fahrig, R. SI Reorg Presentation: DCSI
Joint Application Development (JAD)
NOTICE! These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Project Management and the Organization
8 Ways to Make Learning 'Real World’ Through Work-based Learning
Presentation transcript:

Factors Impacting the Effort Required to Fix Security Vulnerabilities Lotfi ben Othmane, Golriz Chehrazi, Eric Bodden, Petar Tsalovski, Achim Bruker, Philip Miseldine 09 September 2015

Vulnerabilities Fixing Process at SAP Fixing Processes Released software  SAP security response process Under development software  Fixing process for security testing Participants include Central security teams IMS maintenance organization Security experts Developers ….

Introduction - The Problem Goal: Predict the time to spend on analyzing and fixing a given vulnerability? Let t = f (x1, ……xj) What are x1……xj ? SAP collects data about fixing security vulnerabilities. However, the data does not capture important issues such as team setup. This work collects information about how really security fixes are done through interviews of the experts. The results are the result of outside observers about the practices at SAP AG—they are not our own.

Introduction - Motivation Cost of implementing security fixes Vulnerabilities Average fix time (min) Dead Code (unused methods) 2.6 Poor logging: system output stream 2.9 XSS (stored) 9.6 Lack of authorization check 6.9 Unsafe threading 8.5 Null dereference 10.2 SQL injection 97.5 Cornell, RSA 2012 The only factor considered is vulnerability type What about the others?

The Study - Scope Goal: Identify the factors that impact the fixing time Method: Interview participants in the vulnerability fixing process Result: The major factors that impact the fixing time

The Study - Conduct of the Study Interviews were conducted from 8 to 12 Dec. 2014 Number of participants 12 (12 hours) 9 from Germany and 3 from India Security experts, developers, coordinators, project leaders NetWeaver experts, custom application experts, application experts Selection of participants Preparation of the questions Interviews Transcribe the interviews Code the interviews Consolidate the data Analyze the results

The Study - Conduct of the Study – Cont. Selection of participants Preparation of the questions Each interview is transcribed into about 16 pages Identified 21 code classes from 3 sample interviews Coded each transcript in a report of 4 pages Each interviewee is asked to review the report of his interview Interviews Transcribe the interviews Code the interviews Consolidate the data Analyze the results

The Study - Conduct of the Study - cont. Coding examples “Code injections are difficult to fix” vulnerability type Vulnerability characteristics “If the function module is the same in all these 12 or 20 releases […] , then I just have to do one correction” Similarity of code in the different releases Software structure

Factors that Impact the Vulnerability Fix time Factor categories # of factors Freq. Vulnerabilities characteristics 6 9 Software structure 19 10 Technology diversification 3 5 Communication and collaboration 7 8 Availability and quality of information and documentation Experience and knowledge 12 11 Code analysis tool 4 Other

Observed Fixing Process Case 1: Analysis and design of global solution Implemen-tation Test Release Pre-analysis Case 2: Analysis and design area solution This is the actual process. It maps the simplified process from the interviews, from the reality and not from the theoretical process in documents This is how the process is implemented in practice and observed by external analyst We found three cases for fixing issues Case 1: Require design of a global solution Impacts several products May better be addressed using API change Addressed by several teams and involves the central security team Case 2: Require design of a solution specific to a group of products Apply to a specific development area—e.g., mobile applications area The security expert of the area designs the solution with the developers Case 3: Local solution Apply to a specific vulnerability instance The developer fixes the issue with potential help from colleagues Case 3: Analysis and design local solution Implemen-tation Test Release Iterations among successive steps are performed implicitly / not marked

Take-Away Vulnerability type is one among many factors (65) that impact the vulnerability fix time The 8 factor categories reflect the main areas for improving the vulnerability fixing processes E.g., software structure, training, etc.

Threats to Validity Control of the threats to the validity of the results The interviewees are diversified 2 researchers coded each interview and the results are consolidated The participants validated the reports of their interviews Weaknesses Used one method to identify the factors—interviewing experts Interviewed only 2 developers External use Diversity of product areas Distribution of development teams

Lessons learned The main interview questions shall help the interviewees to tell their own stories “What” questions are inefficient to enumerate elements The participants sometimes have their own messages to deliver Vulnerability fixing processes are as many as the process participants Do not try to base the fix effort estimate on “a process”

Thank you lotfi.ben.othmane@sit.fraunhofer.de