Getting software security Right



Similar documents
Measuring Software Product Quality

ensuring security the way how we do it

NERC Cyber Security. Compliance Consulting. Services. HCL Governance, Risk & Compliance Practice

Application Code Development Standards

External Supplier Control Requirements

05.0 Application Development

Effective Software Security Management

Mobile Application Threat Analysis

! Resident of Kauai, Hawaii

Black Box versus White Box: Different App Testing Strategies John B. Dickson, CISSP

Network Test Labs (NTL) Software Testing Services for igaming

Threat Intelligence Pty Ltd Specialist Security Training Catalogue

Adobe Systems Incorporated

Preventive Approach for Web Applications Security Testing OWASP 10/30/2009. The OWASP Foundation

Automatic vs. Manual Code Analysis

Testing Solutions to Tackle Application Security Checkpoint Technologies SQGNE. Jimmie Parson Checkpoint Technologies

Entire contents 2011 Praetorian. All rights reserved. Information Security Provider and Research Center

Rational AppScan & Ounce Products

Functional vs. Load Testing

White Paper. Automating Your Code Review: Moving to a SaaS Model for Application Security

Web application testing

Passing PCI Compliance How to Address the Application Security Mandates

Host Hardening. Presented by. Douglas Couch & Nathan Heck Security Analysts for ITaP 1

SECURITY. Risk & Compliance Services

Taxonomic Modeling of Security Threats in Software Defined Networking. Jennia Hizver PhD in Computer Science

A Strategic Approach to Web Application Security The importance of a secure software development lifecycle

Cisco Advanced Services for Network Security

Penetration Testing in Romania

ISSECO Syllabus Public Version v1.0

Security Testing. Vulnerability Assessment vs Penetration Testing. Gabriel Mihai Tanase, Director KPMG Romania. 29 October 2014

Protecting Your Organisation from Targeted Cyber Intrusion

Guideline on Vulnerability and Patch Management

Threat Modeling. Frank Piessens ) KATHOLIEKE UNIVERSITEIT LEUVEN

Software Security. Group project: application security verification using OWASP ASVS

Plain English Guide To Common Criteria Requirements In The. Field Device Protection Profile Version 0.75

Telecom Testing and Security Certification. A.K.MITTAL DDG (TTSC) Department of Telecommunication Ministry of Communication & IT

HP Application Security Center

Mean Time to Fix (MTTF) IT Risk s Dirty Little Secret Joe Krull, CPP, CISSP, IAM, CISA, A.Inst.ISP, CRISC, CIPP

Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security


Ethical Hacking as a Professional Penetration Testing Technique

Redhawk Network Security, LLC Layton Ave., Suite One, Bend, OR

Enterprise Security Tactical Plan

ASU Web Application Security Standard

How to start a software security initiative within your organization: a maturity based and metrics driven approach OWASP

Juniper Networks Secure

From the Bottom to the Top: The Evolution of Application Monitoring

TECHNICAL AUDITS FOR CERTIFYING EUROPEAN CITIZEN COLLECTION SYSTEMS

Web Application Security. Vulnerabilities, Weakness and Countermeasures. Massimo Cotelli CISSP. Secure

Threat Modeling. Categorizing the nature and severity of system vulnerabilities. John B. Dickson, CISSP

NETWORK PENETRATION TESTING

Ethical Hacking Agreement for External Network Security Unannounced Penetration Test

Web Application Security

Learning objectives for today s session

Attachment A. Identification of Risks/Cybersecurity Governance

ITEC441- IS Security. Chapter 15 Performing a Penetration Test

An Introduction to Network Vulnerability Testing

QuickBooks Online: Security & Infrastructure

Build (develop) and document Acceptance Transition to production (installation) Operations and maintenance support (postinstallation)

ABC LTD EXTERNAL WEBSITE AND INFRASTRUCTURE IT HEALTH CHECK (ITHC) / PENETRATION TEST

Excellence Doesn t Need a Certificate. Be an. Believe in You AMIGOSEC Consulting Private Limited

Mobile Application Hacking for ios. 3-Day Hands-On Course. Syllabus

Securing Your Web Application against security vulnerabilities. Ong Khai Wei, IT Specialist, Development Tools (Rational) IBM Software Group

Course Title: Penetration Testing: Network & Perimeter Testing

Information Technology Security Review April 16, 2012

Security Challenges & Opportunities in Software Defined Networks (SDN)

Where every interaction matters.

DISA's Application Security and Development STIG: How OWASP Can Help You. AppSec DC November 12, The OWASP Foundation

State of Web Application Security. Ralph Durkee Durkee Consulting, Inc. Rochester ISSA & OWASP Chapters rd@rd1.net

Taxonomic Modeling of Security Threats in Software Defined Networking

Application Security Testing

CRYPTUS DIPLOMA IN IT SECURITY

Information Technology Policy

Penetration Testing Report Client: Business Solutions June 15 th 2015

Secure Web Development Teaching Modules 1. Security Testing. 1.1 Security Practices for Software Verification

DFW INTERNATIONAL AIRPORT STANDARD OPERATING PROCEDURE (SOP)

SAST, DAST and Vulnerability Assessments, = 4

Compliance Guide ISO Compliance Guide. September Contents. Introduction 1. Detailed Controls Mapping 2.

WHITE PAPER ON SECURITY TESTING IN TELECOM NETWORK

Web Engineering Web Application Security Issues

elearning for Secure Application Development

Penetration Testing. Types Black Box. Methods Automated Manual Hybrid. oless productive, more difficult White Box

Course Title: Penetration Testing: Network Threat Testing, 1st Edition

COURSE NAME: INFORMATION SECURITY INTERNSHIP PROGRAM

Detecting Web Application Vulnerabilities Using Open Source Means. OWASP 3rd Free / Libre / Open Source Software (FLOSS) Conference 27/5/2008

Cisco Security Optimization Service

Procuring Penetration Testing Services

Web Application security testing: who tests the test?

LEADING CYBER SECURITY AND PENETRATION TESTING COMPANY

Recon and Mapping Tools and Exploitation Tools in SamuraiWTF Report section Nick Robbins

Software Defined Networking Security

THE OPEN UNIVERSITY OF TANZANIA

Vulnerability Management

Critical Controls for Cyber Security.

How to Avoid an Attack - Security Testing as Part of Your Software Testing Process

Cautela Labs Cloud Agile. Secured. Threat Management Security Solutions at Work

Transcription:

Getting software security Right Haiyun Xu, Theodoor Scholte April 24 2015

Table of contents 2 I 23 1. Who is SIG? 2. SIG software maintainability model 3. Getting software security Right: security by design 4. SIG ongoing security research 5. Potential research topics for student projects

Software Improvement Group 3 I 23 SIG Background Spin-off from CWI in 2000, self-owned, independent Management advisory, fact-based Accredited software analysis lab employs analysis tools and models SIG Service Examples Software Risk Assessment Reduce or eliminate technical and operational issues by identifying software system risks. Software Risk Monitor Monitor systems under development and maintenance to improve the processes involved in delivering high-quality software systems Security Risk Assessment Gain control over IT security and prevent security incidents by identifying the root causes of weak spots in code, design and process.

Introduction myself 4 I 23 Dr. Haiyun Xu Chief Security Officer / Researcher Main security activities Research on Software Security Model Information Security Management Security analysis of Software Defined Networking Supervising master students on security research projects

Table of contents 5 I 23 1. Who is SIG? 2. SIG software maintainability model 3. Getting software security Right: security by design 4. SIG ongoing security research 5. Potential research topics for student projects

Introducing SIG maintainability model The ISO 25010 standard for software quality 6 I 23 Usability Compatibility Reliability Performance Efficiency Software Quality ISO 25010 Security Functional Suitability Maintainability Portability

Introduction to SIG maintainability model The SIG/TÜViT quality model for software maintainability 7 I 23 System properties Component independence Component balance Unit interfacing Unit complexity Module coupling Duplication Volume Unit size Analysability x x x x Modifiability x x x Testability x x x Modularity x x x Reusability x x

Introduction to SIG maintainability model From measurements to risk categories to ratings 8 I 23 Star ratings are relative to hundreds of systems in the SIG benchmark Ratings are between 1 and 5 stars, where 3 stars is market average maintainability Example RISK CATEGORY PART OF SYSTEM Low risk 65% Moderate risk 15% HHHII High risk 15% Very high risk 5%

Table of contents 9 I 23 1. Who is SIG? 2. SIG software maintainability model 3. Getting software security Right: security by design 4. SIG ongoing security research 5. Potential research topics for student projects

Four different types of security verification They work best when applied together 10 I 23 All security risks Penetration tests Automated static code analysis Design/code reviews Build quality analysis

Security by Design Embedding software security in client organisation 11 I 23 Risk management and acceptance Environmental factors Legal requirements, policies, constraints Accountability Internal (risk dashboard), external (certification, compliance) Risk analysis Inventory of threats, measures and risks Threats, reqs, risks Design review Code review Security Test Pentest Req ments Design Build Test Accept Deploy Training & Guidelines QA Advice & Tuning Risk management steps Development phases SIG offer

Security by Design SIG services 12 I 23 Step 1. How can I get How Risk can management I make secure and acceptance How secure is my software? secure software? software? Security Risk Assessment Environmental factors Accountability Security compliance check (with Security governance Security requirements review maturity Legal scan requirements, (based on Grip policies, constraints Secure design review Internal (risk dashboard), whatever external standard) (certification, compliance) on SSD) Secure coding training & Security inspection Security requirements guidelines Security sample assessment (one usecase) Risk analysis review Inventory Secure development of threats, measures process and risks review Threats, reqs, risks Design review Code review Security Test Pentest Req ments Design Build Test Accept Deploy Training & Guidelines QA Advice & Tuning Risk management steps Development phases SIG offer

SIG security inspection methodology How SIG broke down security 13 I 23 System-level security Confidentiality & Integrity Non-repudiation & Accountability Authenticity Access Management Strength Session Management Strength Security User Management Authentication Method Strength Authentication Implement Strength Authentication Enforcement

SIG security inspection methodology The SIG ISO25010 Quality Model for security 14 I 23 System properties Access management strength Input and output verification Session management strength Final result: HHIII Secure user management Identification strength Secure data transport Authorized access Evidence strength Secure data storage Confidentiality & Integrity Non-repudiation & Accountability HHIII HIIII HHIII HHHHI HIIII HHIII HHHHI HHIII HHIII X X X X HHIII X X HHIII Authenticity X X X HIIII ISO 25010 Security sub-characteristics The model is applied using a mix of tooling and expert review, from four perspectives

SIG security inspection methodology Example findings from a software security inspection 15 I 23 Finding 1. Missing certificate check by mobile app is abused with man in the middle attack 2. Passwords leak because passwords are stored in database and can be decrypted 3. IAM is hacked since URL and version are exposed 4.Password leak from registration log 5.Developers create data leak because of complexity in website architecture 6. Backdoor in application interface is abused 7. Injection attack abuses browser-only input for validation of data of birth 8. Attack is not identified because logging/monitoring of key processes is not in place HHHII 3 manmonths HHHHI Impact (3+) 5 manmonths 6 3 1 2 high 7 5 4 8 med low low med Probability high Diameter of circle represents indication of effort

Table of contents 16 I 23 1. Who is SIG? 2. SIG software maintainability model 3. Getting software security Right: security by design 4. SIG ongoing security research 5. Potential research topics for student projects

Ongoing Security Research Metric-based Security Model 17 I 23

Ongoing Security Research Automated Security Web Scanners 18 I 23 Why are the tools not used in development process? Many vulnerability scanners exist yet they are rarely being used! What are important features needed by companies? Do the tools provide these features? What needs to improved to make tools usable?

Ongoing Security Research Security Analysis of Software Defined Networking (SDN) Figure 9: Attack tree overview 19 I 23 The sub-attack trees represented in Figure 9 are addressed in the following sections. 3.3.4 Attack trees 1 and 2: Denial of Service Attacks Apply STRIDE and Attack tree for threat modeling Design test cases and perform using SDN tools... SDN SECURITY TESTING FRAMEWORK 62 7) Stop arpspoof; 8) Verify that the ping starts working again, as the real controller is connected again. Security assessment approach Threat Modeling DoS attacks are usually performed by generating a very large number of packets that likely generate new flows. The attack trees of Figure 10 and Figure 11 define how this type of attacks can be performed when considering the switch and the controller, respectively. Figure 33: ARP spoof controller form a malicious system Assessment Notice that this attack can also be formed on the northbound interface of the controller, i.e., by spoofing either the controller or the SDN applications. 5.3.5 Modifying northbound API In this section we demonstrate a tampering attack on the northbound API. It corresponds to the attack described in the attack tree in section 3.3.6 (Branch 2 of Figure 15). The attack uses the same infrastructure as the previous attacks, but now we are attacking the Northbound interface of Floodlight. Notice that it will work equally well on the Southbound API. We use ettercap to modify sent and received messages, and for that we use the ettercap filter script shown in Figure 34. SDN Security Research Testing Figure 10: Denial of service attack on the forwarding devices (e.g., switch). Mitigation CONFIDENTIAL Mitigation solutions and best practices Security application Figure 34: Ettercap filter of-attack.filter To perform the attack, we start the network as before. First we need compile the filter file using the command:

Table of contents 20 I 23 1. Who is SIG? 2. SIG software maintainability model 3. Getting software security Right: security by design 4. SIG ongoing security research 5. Potential research topics for student projects

Potential Topic For Student Projects Cyber Security: Software Security Code Review 21 I 23 By accident or by design? Security Code Review oftware security How to perform security code review Software Improvement Group e Improvement effectively Group (SIG)/ specializes efficiently? in measuring software aintainability, reliability, performance) and provides actionable to improve design, source code and the development process. Are the security standards / guidelines be helpful (e.g., OWASP ASVS)? security? urity Model Will it be helpful if we group code Secure data transport Identification strength Access management strength Finding security risks Session maangement strength Penetration tests Authorized access Input and output verification Secure data storage All security risks Evidence strength Secure user management Make sure your client signs an indemnity waiver ( vrijwaringsverklaring ). This document waives any damages the test may cause; the test cannot start with- Haiyun Xu, Theodoor Scholte, April 24 2015, Radboud Rating University Nijmegen HHHHI HHHHI HHIII HHHHI HHHHI HHIII HHHHI HHHII HHIII out this. Confidentiality SIG does & not need to be a party in this agreement, but you will need to Overall rating 29 I 5 Automated security code analysis Are the static analysis tools helpful (e.g., IR-funded research SIG further develops its method for finding es using a mix of design/code 4.1.5 review, Including build quality a penetration analysis, code test etration tests, in order Are to the assess penetration the level of testing security tools in 1-5 helpful? stars. ves 20 pilots with various organizations. We do not perform penetration tests ourselves, but hire external experts instead. Pene- dwide security incidents are tration caused testers by mistakes one in software. or multiple SIG s URLs of a working system as a starting point for their a thorough, structured, Fortify)? consistent and repeatable way to have Security design/ Build quality test, and attempt various known attacks code within reviewsa time box (usually 1-2 weeks). analysis & The reviews Security to prevent the Practice code making can reviewer software assist strategy? you mistakes. in finding a penetration tester, but account manager and t in software security, from the very start of development. It sis of build quality How in to order design Requirements consultant on need code to review address expertise the following: on Get scope and pricing clear. The testers need to have some idea of the size of the system to test to base their pricing on. This can be accomplished by arranging access to a testing environment or by having the client indicate the size (typically in level? number of pages). Either way, the systems and URLs to test need to be reviewers by skill clearly demarcated. Confidentiality: Balance is only visible to the owner 19

Potential Topic For Student Projects Patching and Security 22 I 23 User aspect Does patching faster improve security? Maintainability of library, known vulnerabilities Vendor aspect Do we want a policy that skips patching in favor of rolling software fast enough to make it a moving target? When patching, is that better to disclose or keep the fix secret? Design a cost model for patching

Potential Topic For Student Projects More open projects online 23 I 23 Open projects: http://www.cs.ru.nl/j.visser/students/open-projects/

Haiyun Xu +31 6 2312 3519 h.xu@sig.eu GETTING SOFTWARE RIGHT