Engineering Secure Software. Risk Management  Beyond assessment Assess: Enumerate, Prioritize, Discuss Manage: Act on those discussions  Mitigate risk.

Slides:



Advertisements
Similar presentations
MIGRATION MIGR-09. How to Run Your Next Implementation... Don't Let It Run You! Patricia Johnson Senior Systems Consultant Strategic Systems Group, Inc.
Advertisements

Goal Setting Learning to Work Efficiently and Effectively.
HP Quality Center Overview.
Evaluating Requirements. Outline Brief Review Stakeholder Review Requirements Analysis Summary Activity 1.
Engineering Secure Software. Uses of Risk Thus Far  Start with the functionality Use cases  abuse/misuse cases p(exploit), p(vulnerability)  Start.
Engineering Secure Software. The Power of Source Code  White box testing Testers have intimate knowledge of the specifications, design, Often done by.
Network Design and Implementation
Monitoring and Control
DoD Information Technology Security Certification and Accreditation Process (DITSCAP) Phase III – Validation Thomas Howard Chris Pierce.
CMPT 225 Data Structures and Programming. Course information Lecturer: Jan Manuch (Jano), TASC TAs: Osama Saleh,
CSSE September.2008 Risk Chapter 2, pages “At risk”
1 Configuring Web services (Week 15, Monday 4/17/2006) © Abdou Illia, Spring 2006.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Computer Security: Principles and Practice
Engineering Secure Software. Why do we study risk?  Many outcomes are possible, not all are probable  Enumeration  Prioritization  Discussion.
Get Complete IT Compliance: Reduce Risk and Cost Jonathan CISO, Qualys Seth Automation Specialist, BMC.
Google Apps for Education Free and collaboration tools for schools More than fourteen million students and teachers use Google Apps. Bring students,
Salesforce Change Management Best Practices
Skybox® Security Solutions for Symantec CCS Comprehensive IT Governance Risk and Access Compliance Management Skybox Security's.
WorkOut Method A3 for Facilitators What is a WorkOut? A methodology that helps teams identify opportunities to improve the way work gets done. Why are.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
S/W Project Management
Project Risk Management. The Importance of Project Risk Management Project risk management is the art and science of identifying, analyzing, and responding.
systemhound © Raxco Software Belgium systemhound PC inventory software.
Software Engineering Chapter 12 The Generic Iteration Workflow Fall 2000.
INFO 637Lecture #81 Software Engineering Process II Integration and System Testing INFO 637 Glenn Booker.
IT Systems Analysis & Design
Information Systems Security Computer System Life Cycle Security.
Systems Used for Collaboration When to achieve a common goal, result or work product.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 4.1.
Computing on the Cloud Jason Detchevery March 4 th 2009.
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
Innovation Use Case <Solution Title> <Partner Name>
This presentation outlines the following: How we believe we can help Electronic Marketing Strategy Marketing Overview SMS Marketing Overview Electronic.
Cloud Computing Characteristics A service provided by large internet-based specialised data centres that offers storage, processing and computer resources.
Engineering Secure Software. A Ubiquitous Concern  You can make a security mistake at every step of the development lifecycle  Requirements that allow.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
AREVA T&D Security Focus Group - 09/14/091 Security Focus Group A Vendor & Customer Collaboration EMS Users Conference September 14, 2009 Rich White AREVA.
(A radical interpretation) Tomo Lennox Bow Tie computer services Why Agile Works.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
The ProactiveWatch Monitoring Service. Are These Problems For You? Your business gets disrupted when your IT environment has issues Your employee and.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Project Risk Management Planning Stage
IBM Lotus Software © 2006 IBM Corporation IBM Lotus Notes Domino Blog Template Steve Castledine.
Software Development Life Cycle (SDLC)
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 6 Essentials of Design.
IS444: Modern tools for applications development Dr. Azeddine Chikh.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Essentials of Systems Analysis and Design Fourth Edition Joseph S. Valacich Joey F.
INNOVATE THROUGH MOTIVATION Mobile Computing & Your Business KEVIN KIRKPATRICK – OWNER, MSP INC LOGO.
BUDGETING SYSTEMS Personal Finance and Credit Card Points 101 Ana M Soriano.
Software Test Plan Why do you need a test plan? –Provides a road map –Provides a feasibility check of: Resources/Cost Schedule Goal What is a test plan?
CSE403 Software Engineering Autumn 2001 Gary Kimura Lecture #2 October 3, 2001.
Engineering Secure Software. A Ubiquitous Concern  You can make a security mistake at every step of the development lifecycle  Requirements that allow.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 17 – IT Security.
Discover How Your Business Can Benefit from a Facebook Fanpage
Taking an Iteration Down to Code
Replace with Application Image
Test Planning Mike O’Dell (some edits by Vassilis Athitsos)
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Engineering Secure Software
Security Risk Assessment
Security Risk Assessment
Engineering Secure Software
Engineering Secure Software
White Box testing & Inspections
Engineering Secure Software
Presentation transcript:

Engineering Secure Software

Risk Management  Beyond assessment Assess: Enumerate, Prioritize, Discuss Manage: Act on those discussions  Mitigate risk Every risk has a mitigation Plan, plan, plan Know the limitations of your solution  Track risk Effective mitigations? Increased p(exploit)? Increased asset value? © Andrew Meneely

Top-Down Test Planning  Start with the broad analysis of the domain Goals Assets Top-down analysis (“forest-level”)  Goals  Risks  Indicators  Tests  Vulnerability-focused Instead of exploit-focused Too much functionality Move on when the vulnerability is found Valued assets are given a priority

Goals  Risks  Goals Overall objectives of the system ○ Business-focused objectives  revenue streams ○ User-focused objectives  branding Constraints on the development e.g. release dates Availability concerns A product has a finite number of goals  High-Level Risks Directly map to 1+ objectives Influenced by both p(vuln) & assets A product has a finite number of high-level risks

Risks  Indicators  How will we know that a high-level risk became a problem? A measurable outcome of the system What is the poor behavior of the system? What are the potential underlying causes?  E.g. downtime, asset exposure  Indicators are potentially infinite …but three will get you very far

Indicators  Tests  Given an indicator, how do we ensure that the indicator is avoided or satisfied? Test for it! Key: specific expectations  Tests are even more infinite  Might require more design & architecture work to execute this step

e.g. BlogReader Goals  Goals: (user) Provide pretty-looking formatting of user’s blogs (business) Make money via advertisements Constraints: web-based configuration, mobile app, 6- month release cycles Availability: 99.9% uptime (8.76 hours downtime/year)  Assets User subscription information (e.g. blog feeds) Personal data (e.g. s) Social graph

e.g. BlogReader Risks ..  Tests  High-Level Risk: social graph disclosure Indicator: APIs allow unauthorized access to social graph Test: direct access to user friends should be denied Test: votes logged are anonymized or digested  High-Level Risk: availability is compromised User-focused: users are unable to reach their feeds Business-focused: customers move to a different tool Indicators: high processor loads, full hard drives, downtime Tests: stress tests for networking, disk activity, and crashes

When do I do what?  At the requirements phase: Goals Risks  At a high-level design phase (i.e. architecture) Indicators Some tests  At a low-level design phase (incl. maintenance) More Tests  All the time Track “Bubble up” new risks from new test ideas

Bottom-Up Security Test Planning  Step 1: Write down a lot of tests Document it in short form Doesn’t have to be complete – just seeds for now  Step 2: Group those tests into various categories By assets By functionality By CIA consequences By what your team requires to run the test etc.  Step 3: Revise the categories as a group Missing groups? Missing tests in a group?  Step 4: Add more tests to each category

Benefits and Drawbacks  Top-down security test planning Benefit: tied to specific goals Drawback: incomplete within the categories ○ “Just to check it off the list” syndrome ○ Miss out on planning for really creative tests  Bottom-up security test planning Benefit: gives you freedom to write your best tests immediately Drawbacks: easy to miss stuff ○ Entire goals/categories/assets can get missed ○ Without proper grouping it disintegrates into your “bag of tricks” ○ Requires security expertise in the first place

12-Minute Test Plans  Bottom-up test planning activity for today  Make a GoogleDoc called “Test Planning” Everyone at your table will be editing this doc simultaneously ○ So give everyone access ○ Make some whitespace  Instructor will give you a well-known software system 5 minutes: individually, everyone write down as many security tests as you can think of 7 minutes: as a team, edit them together, categorize them  We will do several of these, as time allows