Secure development and the SDLC. Presented By Jerry Hoff @jerryhoff



Similar documents
Criteria for web application security check. Version

Magento Security and Vulnerabilities. Roman Stepanov

Sichere Webanwendungen mit Java

Sichere Software- Entwicklung für Java Entwickler

Web Application Guidelines

Adobe Systems Incorporated

Web Application Security

Enterprise Application Security Workshop Series

Web Application Security Assessment and Vulnerability Mitigation Tests

Where every interaction matters.

elearning for Secure Application Development

What is Web Security? Motivation

WEB SECURITY CONCERNS THAT WEB VULNERABILITY SCANNING CAN IDENTIFY

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering

Secure Coding in Node.js

APPLICATION SECURITY AND ITS IMPORTANCE

Hack Proof Your Webapps

The Top Web Application Attacks: Are you vulnerable?

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

OWASP Top Ten Tools and Tactics

Data Breaches and Web Servers: The Giant Sucking Sound

ASP.NET MVC Secure Coding 4-Day hands on Course. Course Syllabus

Real World Java Web Security

Web application security

Testing the OWASP Top 10 Security Issues

JVA-122. Secure Java Web Development

BASELINE SECURITY TEST PLAN FOR EDUCATIONAL WEB AND MOBILE APPLICATIONS

Sitefinity Security and Best Practices

Conducting Web Application Pentests. From Scoping to Report For Education Purposes Only

Web Application Hacking (Penetration Testing) 5-day Hands-On Course

FINAL DoIT v.4 PAYMENT CARD INDUSTRY DATA SECURITY STANDARDS APPLICATION DEVELOPMENT AND MAINTENANCE PROCEDURES

(WAPT) Web Application Penetration Testing

OWASP TOP 10 ILIA

Web applications. Web security: web basics. HTTP requests. URLs. GET request. Myrto Arapinis School of Informatics University of Edinburgh

CSE598i - Web 2.0 Security OWASP Top 10: The Ten Most Critical Web Application Security Vulnerabilities

Thomas Röthlisberger IT Security Analyst

Web Application Vulnerability Testing with Nessus

Kentico CMS security facts

Essential IT Security Testing

3. Broken Account and Session Management. 4. Cross-Site Scripting (XSS) Flaws. Web browsers execute code sent from websites. Account Management

Intrusion detection for web applications

A Server and Browser-Transparent CSRF Defense for Web 2.0 Applications. Slides by Connor Schnaith

Top Ten Web Application Vulnerabilities in J2EE. Vincent Partington and Eelco Klaver Xebia

Web Application Security

How To Fix A Web Application Security Vulnerability

WHITE PAPER. FortiWeb and the OWASP Top 10 Mitigating the most dangerous application security threats

Cracking the Perimeter via Web Application Hacking. Zach Grace, CISSP, CEH January 17, Mega Conference

Application Security. Petr Křemen.

OWASP AND APPLICATION SECURITY

Bug Report. Date: March 19, 2011 Reporter: Chris Jarabek

Web Application Security

Web Application Attacks And WAF Evasion

Certified Secure Web Application Security Test Checklist

Building & Measuring Security in Web Applications. Fabio Cerullo Cycubix Limited 30 May Belfast

Web Application Security

Out of the Fire - Adding Layers of Protection When Deploying Oracle EBS to the Internet

MatriXay WEB Application Vulnerability Scanner V Overview. (DAS- WEBScan ) The best WEB application assessment tool

State of The Art: Automated Black Box Web Application Vulnerability Testing. Jason Bau, Elie Bursztein, Divij Gupta, John Mitchell

Hacking Web Apps. Detecting and Preventing Web Application Security Problems. Jorge Blanco Alcover. Mike Shema. Technical Editor SYNGRESS

OWASP and OWASP Top 10 (2007 Update) OWASP. The OWASP Foundation. Dave Wichers. The OWASP Foundation. OWASP Conferences Chair

OWASP Application Security Building and Breaking Applications

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

Introduction:... 1 Security in SDLC:... 2 Penetration Testing Methodology: Case Study... 3

EVALUATING COMMERCIAL WEB APPLICATION SECURITY. By Aaron Parke

Gateway Apps - Security Summary SECURITY SUMMARY

Detecting and Exploiting XSS with Xenotix XSS Exploit Framework

Protecting Web Applications and Users

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

Integrating Security Testing into Quality Control

Ethical Hacking as a Professional Penetration Testing Technique

Application Layer Encryption: Protecting against Application Logic and Session Theft Attacks. Whitepaper

Development Processes (Lecture outline)

Web Application Firewalls Evaluation and Analysis. University of Amsterdam System & Network Engineering MSc

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications

Web Application Report

External Vulnerability Assessment. -Technical Summary- ABC ORGANIZATION

Executive Summary On IronWASP

Check list for web developers

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

SESSION IDENTIFIER ARE FOR NOW, PASSWORDS ARE FOREVER

Network Security Exercise #8

Security features of ZK Framework

National Information Security Group The Top Web Application Hack Attacks. Danny Allan Director, Security Research

Reducing Application Vulnerabilities by Security Engineering

OWASP Secure Coding Practices Quick Reference Guide

Web Application Attacks and Countermeasures: Case Studies from Financial Systems

Web Application Firewall on SonicWALL SRA

Members of the UK cyber security forum. Soteria Health Check. A Cyber Security Health Check for SAP systems

Kenna Platform Security. A technical overview of the comprehensive security measures Kenna uses to protect your data

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

MANAGED SECURITY TESTING

Promoting Application Security within Federal Government. AppSec DC November 13, The OWASP Foundation

WHITE PAPER FORTIWEB WEB APPLICATION FIREWALL. Ensuring Compliance for PCI DSS 6.5 and 6.6

Transcription:

Secure development and the SDLC Presented By Jerry Hoff @jerryhoff

Agenda Part 1: The Big Picture Part 2: Web Attacks Part 3: Secure Development Part 4: Organizational Defense

Part 1: The Big Picture

Non stop hacking

why? warum? perche?

Web Site / Web Application

Custom Code Frameworks & Libs Language Support Application Server Web Server Operating System

HTTP, HTML, JavaScript, CSS Cookies, SVG, Plugins, Add-ons }20 year old legacy! iframes, Flash, WebSockets Browsers inconsistent Client side database

Vulnerability Weakness that can be exploited to cause harm Each vulnerability has a impact Each vulnerability has a likelihood

Steal Cookie Guess Cookie DB Reuse Cookies Steal Data Malicious JavaScript (XSS) Generate Forged Requests Stolen Clicks (ClickJacking) WWW Injection Authentication Jsess Access Control Vulnerable Libraries Forge HTTP Headers Abuse Business Logic Security Configuration Accept Forged Requests

OWASP Top 10 2013 Big daddy of all web risk documents Do not base your security program on a Top 10 list - Hoff s Law http://www.owasp.org

Current Top 10 A1 A2 A3 A4 A5 A6 A7 A8 A9 Injection Broken Auth and Session Management Cross-Site Scripting (XSS) Insecure Direct Object References Security Misconfiguration Sensitive Data Exposure Missing Function Level Access Control Cross-Site Request Forgery (CSRF) Using Known Vulnerable Components A10 Unvalidated Redirects and Forwards

OWASP ASVS Application Security Verification Standard (2014) Superb checklist DOWNLOAD THIS NOW (your homework) https://www.owasp.org/images/5/58/owasp_asvs_version_2.pdf

V2. Authentication V3. Session Management V4. Access Control V5. Malicious Input Handling V7. Cryptography at Rest V8. Error Handling and Logging V9. Data Protection V10. Communications V11. HTTP V13. Malicious Controls V15. Business Logic V16. File and Resource V17. Mobile

Risk Risk = vuln likelihood * vuln impact Typically ranked critical through low Risk based approach = assign each risk a $$ amount

Security Control Mitigates an vulnerability For each major vulnerability, there is a corresponding security control Examples: cookie flag, http header, encoders, ORM, validation.

End of Part 1: The Big Picture

Part 2: Web Attacks Finding and Exploiting Victims

Am I Secure? bin ich sicher? sono sicuro?

Advanced Google Search about: link: site: filetype: inurl:

Finding file types site:example.com filetype: Sometimes determine technologies (asp, php, jsp, aspx, cfm, pl) find interesting file types (.pdf,.docx,.xlsx,.txt,.readme) find very interesting file types (.log,.old)

Getting more specific inurl: Searches for keywords in URL Use this to find all wordpress login screens

http://www.exploit-db.com/google-dorks/

http://builtwith.com/ Web Server SSL Namespace Provider Email Hosting CMS Analytics & Tracking JavaScript Library Document Info Encoding Server Information

http://cve.mitre.org/cve/cve.html

End of Part 2: Web Attacks Finding and Exploiting Victims

Part 3: Secure Development

This is a big topic großes Thema grande tema

Just for starters

Authentication Authorization Centralize! Shiro / Spring Security Active Directory Single Sign On / Access Management Centralize! External / URL based (Siteminder) Application / URL based (Filters) Authorization Annotations Session Management Protection Session Cookie (httponly, secure, timeouts, cryptographically strong) Database / SQL Injection Parameterization / ORM Injection Input validation / Encoding

Malicious Input Crypto Centralized, standardized input validation Contextual encoding of all untrusted input Hashing: SHA-2 (soon SHA-3) Symmetric: AES Asymmetric: RSA, ECC Protect Keys: Don t store in DB, use file system protections, read only, key rotation policy Error Handling / Logging No details in error messages Log all the things! Data Protection No Cache No Autocomplete Communcation HTTPS all the things (appropriately configured) 3rd Party Libraries Track all 3rd party libs in deployment Check for known vulns, CVEs, etc..

Know thy frameworks

Android Android Application Secure Design / Secure Coding Guidebook July 2014 450+ page document Japan Smartphone Security Association (JSSEC) Secure Coding Group

Struts 1: cleartext password in datasource config Struts 2: using auto-executed plugins that are picked up from the classpath Android custom permission, exported receiver/provider/service, insecure version, touchjacking) Hibernate: cleartext password in connection config JSF: client state saving config JSF: developer mode enabled config JPA: cleartext password in connection config J2EE: auto-executed web fragments J2EE: verb tampering (HTTP Verb bypass) J2EE: session expiration J2EE: secure / httponly flags J2EE: error page J2EE: url rewriting WebSphere: serve servlets by class name hundreds of platform specific configuration rules

Browser Security Strict-Transport-Security: Enforces HTTPS X-Frame-Options: Anti-clickjacking X-XSS-Protection: Anti-Reflected XSS Content-Security-Policy: Anti-XSS, etc.. X-Content-Type: nosniff, prevents browser from guessing a content-type https://www.owasp.org/index.php/list_of_useful_http_headers

Part 4: Organization Defense

Maturity Assess your organization based on a maturity model Pick a target level based on organizational risk tolerance Plan a path to achieve the target level Direction: top-down (C-Level) - cascade to BA, Architects, Developers, QA, Deployment https://www.owasp.org/index.php/list_of_useful_http_headers

Often overlooked Standardized security controls Secure coding guidelines Dependency management Framework-specific security training

Example: Mozilla Playdoh https://playdoh.readthedocs.org/en/latest/

Backlog What about existing applications? Quantify the risk (risk-based approach) http://www.riskmanagementinsight.com/media/docs/fair_introduction.pdf

That s it! Questions? Fragen? Domande? @jerryhoff jerry@owasp.org https://www.youtube.com/user/appsectutorialseries http://www.computerworld.com/author/jerry-hoff/