Architectural Design Patterns. Design and Use Cases for OWASP. Wei Zhang & Marco Morana OWASP Cincinnati, U.S.A. http://www.owasp.



Similar documents
Where every interaction matters.

Sitefinity Security and Best Practices

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

WEB SECURITY CONCERNS THAT WEB VULNERABILITY SCANNING CAN IDENTIFY

Check list for web developers

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

OWASP Top Ten Tools and Tactics

elearning for Secure Application Development

JVA-122. Secure Java Web Development

Magento Security and Vulnerabilities. Roman Stepanov

OWASP AND APPLICATION SECURITY

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

Web Application Penetration Testing

The Top Web Application Attacks: Are you vulnerable?

What is Web Security? Motivation

05.0 Application Development

Enterprise Application Security Workshop Series

(WAPT) Web Application Penetration Testing

WHITE PAPER. FortiWeb Web Application Firewall Ensuring Compliance for PCI DSS 6.5 and 6.6

Criteria for web application security check. Version

Web Application Security Assessment and Vulnerability Mitigation Tests

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

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

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

WEB APPLICATION FIREWALLS: DO WE NEED THEM?

Web Application Security Guidelines for Hosting Dynamic Websites on NIC Servers

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

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

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

Adobe Systems Incorporated

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

Overview of the Penetration Test Implementation and Service. Peter Kanters

Sichere Software- Entwicklung für Java Entwickler

Columbia University Web Security Standards and Practices. Objective and Scope

BASELINE SECURITY TEST PLAN FOR EDUCATIONAL WEB AND MOBILE APPLICATIONS

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

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

Integrating Security Testing into Quality Control

Rational AppScan & Ounce Products

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

Essential IT Security Testing

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

Strategic Information Security. Attacking and Defending Web Services

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

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

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

Using Foundstone CookieDigger to Analyze Web Session Management

Passing PCI Compliance How to Address the Application Security Mandates

QuickBooks Online: Security & Infrastructure

Nuclear Regulatory Commission Computer Security Office Computer Security Standard

Thick Client Application Security

Six Essential Elements of Web Application Security. Cost Effective Strategies for Defending Your Business

CompTIA Mobile App Security+ Certification Exam (Android Edition) Live exam ADR-001 Beta Exam AD1-001

Web Engineering Web Application Security Issues

Intrusion detection for web applications

Advanced Web Technology 10) XSS, CSRF and SQL Injection 2

DFW INTERNATIONAL AIRPORT STANDARD OPERATING PROCEDURE (SOP)

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

Web Application Security

SQuAD: Application Security Testing

Security Testing with Selenium

Web application security

Testing the OWASP Top 10 Security Issues

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

Hack Proof Your Webapps

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

Development. Resilient Software. Secure and. Mark S. Merkow Lakshmikanth Raghavan. CRC Press. Taylor& Francis Croup. Taylor St Francis Group,

Creating Stronger, Safer, Web Facing Code. JPL IT Security Mary Rivera June 17, 2011

Web Application Guidelines

Cloud Security:Threats & Mitgations

Implementation of Web Application Security Solution using Open Source Gaurav Gupta 1, B. K. Murthy 2, P. N. Barwal 3

Drupal Security. A High-Level Perspective on Web Vulnerabilities, Solutions and Tips for Securing Your Drupal Website

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

Chapter 1 Web Application (In)security 1

Security features of ZK Framework

Still Aren't Doing. Frank Kim

Web Application Security

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

Security vulnerabilities in new web applications. Ing. Pavol Lupták, CISSP, CEH Lead Security Consultant

CompTIA Mobile App Security+ Certification Exam (ios Edition) Live exam IOS-001 Beta Exam IO1-001

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

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

FINAL DoIT v.8 APPLICATION SECURITY PROCEDURE

Web Application Attacks and Countermeasures: Case Studies from Financial Systems

Web Application Security

WEB APPLICATION SECURITY

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

Threat Modeling/ Security Testing. Tarun Banga, Adobe 1. Agenda

Secure development and the SDLC. Presented By Jerry

OWASP Application Security Building and Breaking Applications

Columbia University Web Application Security Standards and Practices. Objective and Scope

Web-Application Security

Points of View. CxO s point of view. Developer s point of view. Attacker s point of view

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

Application Security Testing. Generic Test Strategy

Transcription:

Architectural Design Patterns for SSO (Single Sign On) Design and Use Cases for Financial i Web Applications Wei Zhang & Marco Morana OWASP Cincinnati, U.S.A. OWASP Copyright The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. Th OWASP F d ti The OWASP Foundation http://www.owasp.org

Presentation outline The needs/challenges for securing SSO architectures in financial web applications Secure SSO design patterns Security consideration and risk for SSO design Secure architecture principles Architectural diagrams Data flow diagrams Sequence diagrams Threat models of SSO architectures t Attack trees and misuse cases Security risk kframework kfor secure design of SSO architectures OWASP 2

Single Sign On (SSO) needs for financial web systems Different systems serving different functions ATM cash withdraw Branch deposit Monthly statements Make a payment with a check Wire transfer Different systems have different type of user s information Personal and sensitive information Financial transactions Bank statements Different business features are available for each system Saving/checking accounts Credit card accounts Mortgage applications or loans Cash rewards Mileage rewards OWASP 3

Requirements for SSO User friendly is the key Single view is the goal Eliminate additional sign on is the approach Security is the foundation OWASP 4

SSO Use Case User can sign on site A to do function B about product C User can sign on site X to do function Y about product Z. For users with both product C and Z, user should be able to sign on from Site A to access function B and function Y without additional authentication. Site X will not be sunset to support users with only product Z. OWASP 5

Design options for SSO Duplicate function Y on site A and access information on site X Pros: Make it possible to sunset site X Cons: Introduce duplicated function on two sites Needs to maintain the function and processing rules on two sites. Build SSO for user to access function Y on site X Pros: No need to maintain two sets of function and processing rules on two sites Enable the possibility to fully leverage functions on site X Cons: Make site A depends on site X Introduce security complexity: Authentication Authorization Session coordination UI OWASP 6

SSO Design Patterns Ad-hoc Encrypted Token: Use symmetric and public key cryptography p y to encrypt the application data that used for SSO Standard d d Secure Token Service (STS): Central Security Token Service to respond with standard d SAML token that t supports federation across different sites upon request. OWASP

SSO Ad-Hoc Encrypted Token Pros: Easy to set up and implement Supports S t PKI and SAML No dependency on other system. Cons: Not a unified solution Each federated site has to manage cryptographic key OWASP 8

SSO Ad-hoc encrypted token Customer ` Internet SSO with encrypted token Decrypt token and authenticate Site A Sign on Sec ure token for SSO Application Server Site X Application Server credential store Key store Key store User information OWASP 9

SSO STS Pros: Drives to unified solution for both internal and external communication. Centralized cryptographic key management approach. Supports SAML and SOAP Cons: C Introduces dependences on STS for federated sites Introduces additional internet hop for communication OWASP 10

SSO STS Customer ` Internet SSO with SAML token Site A Application Server Sign on SAM ML token for SSO SAML token STS Site X Varify SAML token/authenticate Application Server credential store Key store Key store Key store User information OWASP 11

SSO design and security considerations Secure authentication and authorization Ad-hoc encrypted token STS Secure session management: one dies, both die Session initiation Session termination Session recovery Keep alive Secure web page wrapping: look and feel of the site iframes OWASP 12

Potential Security Issues with SSO Design In-Secure Session Management: Sessions are not sync: one dies, one left open Session Replay Session Riding (CSRF) Session hijacking Sessions un-protected/in clear, cached, logged Malicious Data Injections: XSS, SQL Injection Elevation of Privileges, Bypass of Authentication Bypass authorizations Forceful oceu browsing bo OWASP 13

Secure Architecture Design General Security Design Principles 1. Implement Authentication With Adequate Strength 2. Enforce Least Privilege 3. Protect Data In Storage, Transit And Display 4. Enforce oceminimal Trust 5. Trace and Log User Actions And Security Events 6. Fail Securely And Gracefully 7. Apply Defense in Depth 8. Apply Security By Default 9. Design For Simplicity, KISS Principle 10.Secure By Design, Development and Deployment 11.Secure As The Weakest Link 12.Avoid Security By Obscurity OWASP 14

Security Controls Design Guidelines: Authentication and dauthorization ti Authentication, What, Where and How Mandatory to restrict access to validated users Strength depends on application risk/data classification Compliant with regulations/standards Provide for secure password and account management Mitigates g brute forcing and credentials harvesting Mitigates Man In The Middle Attacks (MiTM) Provides for user and host to host authentication Authorization Most Common Flaws Flaws in Role Base Access Controls (RBAC) Flaws allow for horizontal and vertical privilege escalation Forceful browsing OWASP 15

Security Controls Design Guidelines: Session Management Avoid common session management flaws: Session cookies and authentication tokens unprotected (e.g. clear text) t) between ee client and servere Missing session invalidation at idle-time out and user logout Missing re-issuance of new session token to prevent re- use for authentication Un-secure storage in a session store in clear text Lack of strong random generation of session cookies/identifiers (e.g. >128 bit) Lack of coordinated session between application tiers OWASP 16

Security Controls Design Guidelines: Input Validation i What and where to validate Type, format, range and length of input data Wherever data crosses system or trust boundaries Input p and output Client validation vs. server validation How to validate Constraint, Reject, Sanitize Canonical Validation Encoding Integrity Checks OWASP 17

Architecture of Financial Web Applications OWASP 18

Data flow diagram-online Banking Application Restricted Network (App & DB Server/Financial Server Boundary) Internal (Web Server/ App & DB Server Boundary) DMZ (User/Web Server Boundary) OWASP 19

Sequence diagram of SAML SSO OWASP 20

Threat Modeling Web Applications From Improving Web Application Security: Threats and Countermeasures http://msdn.microsoft.com/en-us/library/ms994921.aspx OWASP 21

Attack Trees-Online Banking Applications Analyzing the Security of Internet Banking Authentication Mechanisms : http://www.itgi.org/template.cfm?section=home&contentid=35743&template=/contentmanagement/contentdisplay.cfm OWASP 22

Use and Misuse Case of Authentication From OWASP Security Testing Guide https://www.owasp.org/index.php/testing_guide_introduction#security_requirements_test_derivation OWASP 23

Security risk framework for secure design of SSO architectures Threat Agents Users, Customers/ Employees Misuses and Attack Vectors User logs out from one application and forget to log out to another application that SSOs into it Security Weaknesses Inherent weaknesses in synchronizing sessions among applications Security Controls/ Countermeasures Single Logout Among Applications, Keep-alives Technical Impacts Loss of sensitive/confident ial data Business Impacts Reputation loss. Unlawful compliance fines Malicious Users, Fraudsters Victim is targeted by phishing, download of malware Social Engineering, Web Application Vulnerabilities, XSS Consumer Education, Data Filtering, escape all untrusted data based on HTML content Execute JS on client, install malware Fraud, financial losses, reputation loss/defacements co e oss/de ace e s Malicious Users, Fraudsters Attacker sends malicious data to the application Input Validation Vulnerabilities: XSS, SQL Injection Filtering, parameterized API, ESAPI filtering APIs, white-list validations Loss of data, data alteration, denial of service/access Public disclosure of vulnerability Reputation damage Malicious Users, Fraudsters Attacker target design flaws in the SSO/authentication or session management functions Weak Auth and Session Mgmt Vulnerabilities Follow Security Requirements For Secure Password Policies, Implement Account Locking, Disable Auto-logons Unauthorized access to data, functions Legal and financial implications Fraudsters Attacker creates forged HTTP requests and tricks a victim into submitting them Cross Site Request Forgery Vulnerabilities Include the unique token in a hidden field. Can change data and functions on behalf of the user Fraud, revenue loss because of denial of access Automated Scripts/ Spam Bots Attacker uses a bot/script to attack the application for denial of service and harvesting Insufficient Anti- Automation protection Include CAPTCHA, ESAPI intrusion detection APIs Can overflow/deny service to process spam data, harvest accounts./data Loss due to business Disruptions/losse s, reputational damage OWASP 24

References OpenSAML: https://spaces.internet2.edu/display/opensaml/home ESAPI: https://www.owasp.org/index.php/category:owasp_enterprise_security_a PI Improving Web Application Security: Threats and Countermeasures http://msdn.microsoft.com/en-us/library/ms994921.aspx Analyzing the Security of Internet Banking Authentication i Mechanisms http://www.itgi.org/template.cfm?section=home&contentid=35743&t EMPLATE=/ContentManagement/ContentDisplay.cfm OWASP Security Testing Guide https://www.owasp.org/index.php/testing_guide_introduction#sec urity_requirements_test_derivation OWASP

THANK YOU! Q&A Contact: 张 炜 :zhangwei@hotmail.com Marco Morana: marco.m.morana@gmail.com OWASP