Automated Testing of SAML 2.0 Service Providers. Andreas Åkre Solberg UNINETT andreas@uninett.no http://rnd.feide.no



Similar documents
Identity Assurance Hub Service SAML 2.0 Profile v1.2a

Single Log-Out. Andreas Åkre Solberg Malaga, June 2009

Federated Wikis Andreas Åkre Solberg

This section includes troubleshooting topics about single sign-on (SSO) issues.

Step-by-Step guide for SSO from MS Sharepoint 2010 to SAP EP 7.0x

Single Logout. TF-EMC Vienna 17 th February Kristóf Bajnok NIIF Institute

SAML Authentication within Secret Server

National Identity Exchange Federation. Web Browser User-to-System Profile. Version 1.0

Certification Final Report SAML 2.0 Interoperability Test First Quarter 2011 (1Q11) March 31, 2011

Single Sign On Integration Guide. Document version:

SAML 2.0 Interoperability Testing Procedures

This chapter describes how to use the Junos Pulse Secure Access Service in a SAML single sign-on deployment. It includes the following sections:

Single Sign-On Implementation Guide

Single Sign-On Implementation Guide

OIO SAML Profile for Identity Tokens

OIOSAML 2.0 Toolkits Test results May 2009

Software Design Document SAMLv2 IDP Proxying

Feide Integration Guide. Technical Requisites

Integration of Shibboleth and (Web) Applications

Authentication Methods

MONDESIR Eunice WEILL-TESSIER Pierre FEDERATED IDENTITY. ASR 2006/2007 Final Project. Supervisers: Maryline Maknavicius-Laurent, Guy Bernard

Profiles for the OASIS Security Assertion Markup Language (SAML) V2.0

Getting Started with AD/LDAP SSO

How To Use Saml 2.0 Single Sign On With Qualysguard

CONFIGURATION GUIDE WITH MICROSOFT ACTIVE DIRECTORY FEDERATION SERVER

SAML SSO Configuration

Evaluation of different Open Source Identity management Systems

Using SAML for Single Sign-On in the SOA Software Platform

About Me. Software Architect with ShapeBlue Specialise in. 3 rd party integrations and features in CloudStack

OSOR.eu eid/pki/esignature Community Workshop in Brussels, 13. November 2008 IT Architect Søren Peter Nielsen - spn@itst.dk

Single Sign-on. Overview. Using SSO with the Cisco WebEx and Cisco WebEx Meeting. Overview, page 1

Feide Technical Guide. Technical details for integrating a service into Feide

PARTNER INTEGRATION GUIDE. Edition 1.0

IBM WebSphere Application Server

Spring Security SAML module

SAML-Based SSO Solution

Only LDAP-synchronized users can access SAML SSO-enabled web applications. Local end users and applications users cannot access them.

IMPLEMENTING SINGLE SIGN- ON USING SAML 2.0 ON JUNIPER NETWORKS MAG SERIES JUNOS PULSE GATEWAYS

INUVIKA OPEN VIRTUAL DESKTOP ENTERPRISE

TIB 2.0 Administration Functions Overview

Test Plan for Liberty Alliance SAML Test Event Test Criteria SAML 2.0

OpenSSO: Cross Domain Single Sign On

New Single Sign-on Options for IBM Lotus Notes & Domino IBM Corporation

Copyright: WhosOnLocation Limited

Open Source Identity Integration with OpenSSO

SAML Single-Sign-On (SSO)

Web Services Security: OpenSSO and Access Management for SOA. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. javapassion.

2 Downloading Access Manager 3.1 SP4 IR1

Internet Information Services Integration Kit. Version 2.4. User Guide

Title: A Client Middleware for Token-Based Unified Single Sign On to edugain

DocuSign Single Sign On Implementation Guide Published: March 17, 2016

IAM Application Integration Guide

How to create a SP and a IDP which are visible across tenant space via Config files in IS

Разработка программного обеспечения промежуточного слоя. TERENA BASNET Workshop, November 2009 Joost van Dijk - SURFnet

Configuring Single Sign-on from the VMware Identity Manager Service to ServiceNow

Lets get a federated identity. Intro to Federated Identity. Feide OpenIdP. Enter your address. Do you have access to your ?

Configuring ADFS 3.0 to Communicate with WhosOnLocation SAML

Federal Identity, Credential, and Access Management Security Assertion Markup Language (SAML) 2.0 Web Browser Single Sign-on (SSO) Profile

Symplified I: Windows User Identity. Matthew McNew and Lex Hubbard

SAML Profile for Privacy-enhanced Federated Identity Management

Connecting Web and Kerberos Single Sign On

Identity Management in Liferay Overview and Best Practices. Liferay Portal 6.0 EE

Security Assertion Markup Language (SAML) 2.0 Technical Overview

Department Service Integration with e-pramaan

Configuring SAML2 for Single Sign On to Smartsheet (Enterprise Only)

Shibboleth Identity Provider (IdP) Sebastian Rieger

HOTPin Integration Guide: Salesforce SSO with Active Directory Federated Services

Federations 101. An Introduction to Federated Identity Management. Peter Gietz, Martin Haase

Single Sign-On Implementation Guide

PingFederate. Salesforce Connector. Quick Connection Guide. Version 4.1

Federated Identity Management

Moodle and Office 365 Step-by-Step Guide: Federation using Active Directory Federation Services

Single Sign-On Implementation Guide

Computer Systems Security 2013/2014. Single Sign-On. Bruno Maia Pedro Borges

AA enabling a closed source legacy application

Tenrox. Single Sign-On (SSO) Setup Guide. January, Tenrox. All rights reserved.

Pass Through Proxy. How-to. Overview:..1 Why PTP?...1

SAML Federated Identity at OASIS

Canadian Access Federation: Trust Assertion Document (TAD)

Configuring. Moodle. Chapter 82

OIOSAML Rich Client to Browser Scenario Version 1.0

Revised edition. OIO Web SSO Profile V2.0.9 (also known as OIOSAML 2.0.9) Includes errata and minor clarifications

GFIPM Web Browser User-to-System Profile Version 1.2

Integration Guide. SafeNet Authentication Service. Using SAS as an Identity Provider for Drupal

Federal Identity, Credentialing, and Access Management Security Assertion Markup Language (SAML) 2.0 Web Browser Single Sign-on (SSO) Profile

To set up Egnyte so employees can log in using SSO, follow the steps below to configure VMware Horizon and Egnyte to work with each other.

Identity Federation: Bridging the Identity Gap. Michael Koyfman, Senior Global Security Solutions Architect

ABOUT TOOLS4EVER ABOUT DELOITTE RISK SERVICES

SAML 2.0 INT SSO Deployment Profile

Add Microsoft Azure as the Federated Authenticator in WSO2 Identity Server

An overview of configuring WebEx for single sign-on. To configure the WebEx application for single-sign on from the cloud service (an overview)

Integration Guide. SafeNet Authentication Service. Using SAS as an Identity Provider for Tableau Server

Perceptive Experience Single Sign-On Solutions

Single Sign-On: Reviewing the Field

Leveraging SAML for Federated Single Sign-on:

Extending DigiD to the Private Sector (DigiD-2)

Cyber Authentication Technology Solutions Interface Architecture and Specification Version 2.0: Deployment Profile

Zendesk SSO with Cloud Secure using MobileIron MDM Server and Okta

MLSListings Single Sign On Implementation Guide. Compatible with MLSListings Applications

Compass Security. [The ICT-Security Experts] SAML 2.0 [Beer Talk Berlin 2/16/2016] Stephan Sekula

Transcription:

Automated Testing of SAML 2.0 Service Providers Andreas Åkre Solberg UNINETT andreas@uninett.no http://rnd.feide.no

Background 0% of SAML 2.0 implementations do SAML 100% correct. SAML includes alot of options. There is special case flows and messages, where SAML does not provide a well-defined correct behaviour. SAML includes extensions points. Limited negotiation of what an entity supports (SAML Metadata)

Heterogenous federations In Shibboleth 1.3-federations most of entities were running Shibboleth software. Why? Shibboleth defined its own protocol. (SAML 1.1 extension) In Feide we have these SP softwares: SimpleSAMLphp, Shibboleth, mod_mellon, Sun OpenSSO, Sun FM, Sun AM, Microsoft ADFS, Novell Access Manager, SAML2API (NTNU), ComponentSpace (.net), OIOSAML, several (5+) 'home made' solutions. (+ multiple versions) Other federations will experience an explosion of SP software soon

Confederations SP <-> IdP connections becomes very large when federations are interconnected. 25 SP/IdP implementions, each in 5 versions, becomes: 15.625 different combinations of software. That's only software / versions, deployments also is configured differently. No good test framework! End-users will be the ones to encounter interoperability problems.

Home-made More and more Service Providers would embed SAML support into their product, and rely on SAML libraries rather than full software or alterantively implement from scratch. These integrations is likely to be less interoperable. Focus for a SAML product is often full SAML compliance. Focus for an web application (with SAML support) is often compatibility with a specific IdP software, rather than compliance to SAML spec. Example: Some org. pays some other org. to SAML-enable a product in order to connect it to Feide.

More advanced use The more advanced usage of SAML, the more likely to encounter interoperability problems. Encourage Simple use of SAML saml2int encourage choosing the options that is most likely to interoperate better. It also discourage the use of advanced stuff. Metadata Interoperable Profile.

Kantara SAML 2.0 Full Matrix Test Event SimpleSAMLphp have been preparing for participation at this test event for this autumn. Idea was to learn more about interoperability testing (from Drummond Group) and feed this back to the automated test tool. Kantara Full Matrix test event is probably far more friendlier than the automated test tool.

Automated Testing Tool Acts as an Identity Provider. In order to test an SP: 1) SP provides: SP Metadata URL to initiate login!url to show attributes!url to initiate Single Logout 2) SP loads the IdP Metadata 3) Click the 'start test' button.

Automated Testing Tool

Automated Testing Tool

Automated Testing Tool The testing tool will typically: Do a HTTP request to the URL initiating login follow redirects, until it detects the hostname of the IdP then parse the SAML Request from the Location: header. Then create a Response message, and sends directly to the SP over HTTP Post.

First experience with the tool I've connected a few SP software, in order to implement the tool. I'll present some of the results I've seen so far. Disclaimer There is a strong possibility that many of the tests is actually wrong. Part of further work is to implement more tests, and perform quality control of the existing tests.

Sun OpenSSO Service Provider Not proper handling of AudienceRestritions with multiple values SP is accepting SessionNotOnOrAfter set in the past! SP is not validating the Condition NotBefore and NotAfter attributes. SP is ignoring unknown Conditions - it should not. SP is ignoring client Address attributes. SP is not accepting persistent or e-mail NameID formats SP is ignoring the DestinationURL attribute SP is not requiring signature on LogoutRequest SP ignores the Destination of LogoutRequest SP does not handle multiple SubjectConfirmation recipients SP ignores the NameID format and SPnamequalifier in a LogoutRequest SP does not handle LogoutRequests send before Assertion.

Ping Federate Insecure handling of multiple AudienceRestrictions Should not have accepted an emtpy Audience SP ignores the SubjectConfirmationData @ NotOnOrAfter SP ignores Condition NotBefore and NotAfter SP ignores DestinationURL in the assertion. SP does not proper handle invalid InResponseTo in Assertion Very few tests was run against Ping Federate, as we lost our test environments.

mod_mellon (Lasso) Insecure handling of multiple AudienceRestrictions Accepts Response without AuthenticationStatement! Ignores SubjectConfirmationData @ NotOnOrAfter Ignores Condition @ NotBefore and NotAfter Insecure handling of unknown Condition Ignoring client IP Address Condition if provided Ignoring DestinationURL in Response Not proper handling of invalid InResponseTo values Not protection against Response replay Does not handle multiple Assertions or AttributeStatements Accepts unsigned LogoutRequests Ignores alot of stuff in the LogoutRequest! Does not cache LogoutRequest sent before Assertion

Shibboleth 2.X All Condition checks fails. Seems to completely ignore Condition. Ignores Audience Ignores NotBefore and NotOnOrAfter Insecure handling of unknown Conditions Ignoring client IP address. Not proper handling of invalid InResponseTo values. SP does not handle LogoutRequest with multiple SessionIndexes SP does not accept LogoutRequest without SessionIndex SP does not accept LogoutRequest sent in separate session. SP Does not handle LogoutRequest sent before Assertion.

Siemens IdM product Siemens kindly offered to connect their product to the test environments. During the test period, they have significantly improved their product. Test results not offered public.

SimpleSAMLphp Before

SimpleSAMLphp Now Remaining:!LogoutRequest send before Assertion

Additional security features Not only testing for interoperability problems, but also security issues: Testing for session fixtation (in work) Do a login for discovering SSO cookie Wipe cookies Set a custom fixed SSO cookie Do a login Wipe cookies Re-introduce fixed cookie Check if having access to service! Check for secure cookies (in work) Security test: validating of SP follows processing rules.

Signing and encryption I got very few tests on various ways of sign and encrypt. I'm pretty sure the results would have been very interesting. X.509 XMLdsig

Demo time

What's next? Connect more SP products. I want ADFS, pysaml, Ping, and others... Complete code re-write. A good name?!made publicly available on GÉANT Federation Lab Quality control of tests Categorization of tests + custom priorities IdP testing tool!

http://rnd.feide.no