SlideShare a Scribd company logo
1 of 82
Download to read offline
Federation & Empire

      Emmanuel Bouillon
    manu@veryopenid.net


DEF CON #19 - 7th August 2011
Prelude to Federation
                        Forward the Federation
                                    Federation
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Prefatory notes

  $ whoami
      Having fun in INFOSEC for a while
      SSTIC, PacSec, BlackHat EU, Hack.lu, #Days
      CVE-2010-{0283,2229,2914,2941,...}, CVE-2011-{0001,...}

  Disclaimer
       This expresses my own views and does not involve my
       previous, current and future employers and thus for seven
       generations
      Presentation and code provided for educational purpose only


                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Prefatory notes

  $ whoami
      Having fun in INFOSEC for a while
      SSTIC, PacSec, BlackHat EU, Hack.lu, #Days
      CVE-2010-{0283,2229,2914,2941,...}, CVE-2011-{0001,...}

  Disclaimer
       This expresses my own views and does not involve my
       previous, current and future employers and thus for seven
       generations
      Presentation and code provided for educational purpose only


                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Introduction
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Introduction
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


What is it about?
SAML = Security Assertion Markup Language


 This relates to                                       Won’t discuss
      SAML Token and Claims                               Formal protocol/API
      based IAM                                           comparison
      Low level, Pen-tester approach                           Consistent standards study
       Standards ”reverse engineering”: Find vulns, see what’s wrong in specs

   Take-aways
       Tool to play with SAML protected Web app
        Proven assumption: Standards can be read as an attempt to
        circumvent SOP
        Important design security considerations
                                      E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Introduction
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


What is it about?
SAML = Security Assertion Markup Language


 This relates to                                       Won’t discuss
      SAML Token and Claims                               Formal protocol/API
      based IAM                                           comparison
      Low level, Pen-tester approach                           Consistent standards study
       Standards ”reverse engineering”: Find vulns, see what’s wrong in specs

   Take-aways
       Tool to play with SAML protected Web app
        Proven assumption: Standards can be read as an attempt to
        circumvent SOP
        Important design security considerations
                                      E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Introduction
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Why should you care?



     Pervasive
     Cloud
     Joining a federation usually has severe contractual, legal
     implications.
     It’s coming your way!




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Where we come from
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Where we come from
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


The main problem to solve



     User and Administrator friendly cross organization boundaries
     SSO - here for web apps
         Secure
         Scalable
         Manageable
         Privacy / Anonymity

     Ideally compliant with the Laws of Identity [1]




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                             Forward the Federation
                                         Federation
                                                      Where we come from
                             Federation and Empire
                                  Federation’s Edge
                    Federation and (down to) Earth


Historical approaches
The good old time

        Account Replication
             Manual
             Automated
        WHAT?
             Lose control of accounts
             Have multiple passwords
        ”Trust” relationships to be established with other realms /
        domains
             All user information shared with federated partners
             Firewalls need to be opened to allow trust
             Bilateral ⇒ n2 problem - no easy way to establish trust with
             multiple partners
        Privacy / anonymity
             Anonymity Support for Kerberos [2]
                                        E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              What you need to know
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Federated identity standards - Overview




                                                                      [3]

                                E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


SAML 101


 Security Assertion Markup Language [4]
     transfer of identity information
     between organizations
     that have an established trust relationship

 SAML components
     SAML Assertions / Protocols / Bindings / Profiles
          Web Browser SSO Profile
          Identity Provider Discovery Profile



                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


What are SAML Assertions?



     Signed XML document containing claims or attributes about
     a user
     Collected Claims = Identity
     Claims do not need to unambiguously identify user. Only
     relevant information (e.g. Age > 21, so can buy booze) [5]




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


What it looks like




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


What it looks like




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


What it looks like




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


How is SAML used?

     Standards-based (so widely supported, supposedly
     interoperable), including:
         XML Encryption, XML Digital Signatures, X.509
     Relies on standard HTTP (so passes through firewalls and
     across Internet)
         Local network (not just for Federation!)
         Branch offices
         Remote workers
         But also supports federation (of which more, later)
     Supports SSO (no need to remember lots of passwords)
     Transparent to user (from web browser or compiled
     application): a single click, and the magic happens!

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


How is SAML used?

     Standards-based (so widely supported, supposedly
     interoperable), including:
         XML Encryption, XML Digital Signatures, X.509
     Relies on standard HTTP (so passes through firewalls and
     across Internet)
         Local network (not just for Federation!)
         Branch offices
         Remote workers
         But also supports federation (of which more, later)
     Supports SSO (no need to remember lots of passwords)
     Transparent to user (from web browser or compiled
     application): a single click, and the magic happens!

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


How is SAML used?

     Standards-based (so widely supported, supposedly
     interoperable), including:
         XML Encryption, XML Digital Signatures, X.509
     Relies on standard HTTP (so passes through firewalls and
     across Internet)
         Local network (not just for Federation!)
         Branch offices
         Remote workers
         But also supports federation (of which more, later)
     Supports SSO (no need to remember lots of passwords)
     Transparent to user (from web browser or compiled
     application): a single click, and the magic happens!

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


How is SAML used?

     Standards-based (so widely supported, supposedly
     interoperable), including:
         XML Encryption, XML Digital Signatures, X.509
     Relies on standard HTTP (so passes through firewalls and
     across Internet)
         Local network (not just for Federation!)
         Branch offices
         Remote workers
         But also supports federation (of which more, later)
     Supports SSO (no need to remember lots of passwords)
     Transparent to user (from web browser or compiled
     application): a single click, and the magic happens!

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


How is SAML used?

     Standards-based (so widely supported, supposedly
     interoperable), including:
         XML Encryption, XML Digital Signatures, X.509
     Relies on standard HTTP (so passes through firewalls and
     across Internet)
         Local network (not just for Federation!)
         Branch offices
         Remote workers
         But also supports federation (of which more, later)
     Supports SSO (no need to remember lots of passwords)
     Transparent to user (from web browser or compiled
     application): a single click, and the magic happens!

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   What you need to know
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


How does it work?
Web Browser SSO Profile (SP-Initiated SSO - Redirect/POST Bindings)



     1   User requests access to a claims aware web application
     2   Redirected (through 302 Redirection) to IdP
     3   Authenticates to IdP (either through Kerberos or
         Username/Password)
     4   Redirected (through HTTP POST) back to web application,
         including security token
     5   Happy User − no passwords to remember
         +
         Happy Administrator/Developer − much easier to manage


                                     E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


How does it work?
   1   User requests access to a claims aware web application




                                   E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                What you need to know
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


How does it work?
   2   Redirected (through HTTP 302) to IdP




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


How does it work?
   3   Authenticates to IdP (either through Kerberos or
       Username/Password)




                                   E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                What you need to know
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


How does it work?
   4   Redirected (through HTTP POST) back to web application,
       including security token




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                What you need to know
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


How does it work?
   5   Happy User − no passwords to remember
       +
       Happy Administrator/Developer − much easier to manage




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                What you need to know
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


So what?


     In addition to SSO, also supports:
           Federation − the sharing of identity between domains
           (MDSSO)
           Delegation − maintenance of identity to backend services
           Distribution of Directory information to other applications,
           which gives us:
                ABAC (Attribute Based Access Control) = RBAC+
     Support for Federation ⇒ SAML suitable for the cloud
           Become ubiquitous




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


WS-Federation [6]


     Approved OASIS specification
     Defines mechanisms to allow different security realms to
     federate
         authorized access to resources managed in one realm
         can be provided to principals
         whose identities and attributes are managed in other realms
     Includes mechanisms for brokering of identity, attribute,
     authentication and authorization assertions between realms
     Chapt 16: Security Considerations
         Last bullet: compromised services



                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Federation




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Brokered Federation model
     Trust through a central Broker, establishes trust between
     many IdPs
     But:
         How is the trust established?
         Do we trust all of them?
         How are standards to be maintained?




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               What you need to know
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Multiple Identity Providers
      User establishes account with many IdPs
      Each IdP for different function e.g.
          Bank
          Government




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                What you need to know
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


SAML security seminal papers
  On standards
      Security Analysis of the SAML Single Sign-on
      Browser/Artifact Profile [7]
      SSTC Response to Security Analysis of the SAML Single
      Sign-on Browser/Artifact Profile: [8]
      Security and Privacy Considerations for the OASIS Security
      Assertion Markup Language (SAML) V2.0 [9]

  On implementations issues
      Armando & Al - Breaking the SAML-based Single Sign-On for
      Google Apps [10]
      B. Hill - Attacking XML Security - Black Hat US 2007 [3]
                                  E. Bouillon   Federation & Empire
Prelude to Federation
                            Forward the Federation
                                        Federation
                                                     What you need to know
                            Federation and Empire
                                 Federation’s Edge
                   Federation and (down to) Earth


OASIS SAML V2.0 Technical Overview (draft 3 and 10)
  [sic]
          [11] SAML use case No.1: ”Limitations of Browser cookies”
          [12] Driver of SAML adoption No.1: ”Multi Domain SSO ...
          However, since browser cookies are never transmitted between
          DNS domains, ... SAML solves the MDSSO problem.”

  True issue, legitimate will but...
  Can also be read as: ”SOP sucks, let’s build a workaround!”
          Great potential for security issues
          Is it a fail or not?
          E.g. Can a bad guy steal cookies?
               Be patient ;-)
                                       E. Bouillon   Federation & Empire
Prelude to Federation
                            Forward the Federation
                                        Federation
                                                     What you need to know
                            Federation and Empire
                                 Federation’s Edge
                   Federation and (down to) Earth


OASIS SAML V2.0 Technical Overview (draft 3 and 10)
  [sic]
          [11] SAML use case No.1: ”Limitations of Browser cookies”
          [12] Driver of SAML adoption No.1: ”Multi Domain SSO ...
          However, since browser cookies are never transmitted between
          DNS domains, ... SAML solves the MDSSO problem.”

  True issue, legitimate will but...
  Can also be read as: ”SOP sucks, let’s build a workaround!”
          Great potential for security issues
          Is it a fail or not?
          E.g. Can a bad guy steal cookies?
               Be patient ;-)
                                       E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Implementations security

  The Good, e.g:
      Token encryption
      Replay attacks usually addressed by default

  The Bad, e.g:
      Unsigned LogOut Request accepted
      TargetAudience attribute not verified

  The Ugly, e.g:
      Open redirection vulnerability
      Cookie stealing

                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Implementations security

  The Good, e.g:
      Token encryption
      Replay attacks usually addressed by default

  The Bad, e.g:
      Unsigned LogOut Request accepted
      TargetAudience attribute not verified

  The Ugly, e.g:
      Open redirection vulnerability
      Cookie stealing

                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 What you need to know
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Implementations security

  The Good, e.g:
      Token encryption
      Replay attacks usually addressed by default

  The Bad, e.g:
      Unsigned LogOut Request accepted
      TargetAudience attribute not verified

  The Ugly, e.g:
      Open redirection vulnerability
      Cookie stealing

                                   E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Sharpen your weapons
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                         Forward the Federation
                                     Federation
                                                  Sharpen your weapons
                         Federation and Empire
                              Federation’s Edge
                Federation and (down to) Earth


Tools

  Tool set usually made of a combination of
        Pro/Community edition of Commercial tools
        FOSS [13]
        Custom scripts

  Methodology
        Procedures (+/-) formal (generic or custom)
        Generally accepted best practices [14][15]
        Habits, personal preferences [16]
        Still many manual, ad-hoc, improvised steps

                                    E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Sharpen your weapons
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Adapt your toolset

”Don’t be a tool” [20][21] but...
    Properly using the right tools often makes
    the difference
    Time constraint

  Two reasons
     Allow ”traditional” assessment of Web apps and services
     protected by SAML tokens
     Configurations of such architectures is crucial yet complex
           error prone
           need tools to assess good configuration settings are effective


                                   E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Sharpen your weapons
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Exiting SAML oriented helpers

    UNINETT beta SAML tracer [17]
        Firefox Plugin
        Tool for viewing SAML messages sent
        during single sign-on and single logout

     Feide RnD SAML 2.0 Debugger [18]
          Online application to encode/decode SAML message
                           ´
     Federation Lab beta (GEANT3 Identity Federations) [19]
          Online automated checks on SP implementation
     Manual approach
          Burp decoder (truncated)
          Python, ruby
                 saml = Zlib::Inflate.new(-Zlib::MAX_WBITS).inflate(B...
                 encoded = CGI::escape(Base64::encode64(Zlib::Deflate...
                                  E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Sharpen your weapons
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Fed Lab Service Provider test
  Against an out of the box ”Hello world” SP SimpleSAMLphp based




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Sharpen your weapons
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Fed Lab Service Provider test
  Against an out of the box ”Hello world” SP SimpleSAMLphp based




                                  E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Sharpen your weapons
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Decoding / encoding

  [22] ”Things humans aren’t good at”
      Decoding / encoding on the fly

  Gain of automation
      Easy semantic understanding
      Allows relevant request mangling
      Changes scanner from dumb to smart fuzzer
      Thwarts anti-replay safeguards (e.g. unique random nonce)
      Updates timestamps (long scans can unfold)


                                  E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Pre & Post processing
     Same approach as [23] for WCF Binary SOAP
     Proxy chaining
         Preprocessing (decoding requests / encoding responses)
         Scanning (Fuzz, mangle, do stuff...)
         Postprocessing (encoding requests / decoding responses)




                                E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Sharpen your weapons
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Illustration with Burp Pro Suite

      Burp Pro Suite [24] Extender
          Java API to extend Burp Suite functionalities
          Particularly suitable for Pre & Post processing
          Bindings for Python and Ruby (Buby [25])
      Buby
          Ruby based framework to extend Burp Suite
          Tutorial: [26]
          Hook either evt proxy message or evt http message
      POC
          Buby modules and sample code at
          http://code.google.com/p/buby-saml
          buby -r SAML_preprocessing -e ReqTamperer
          buby -r SAML_postprocessing -e ReqTamperer

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Preprocessing proxy - Original request




                                E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Preprocessing proxy - Edited request




                                E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Central Burp instance - Intruder




                                E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Postprocessing proxy - Original request




                                E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Sharpen your weapons
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Postprocessing proxy - Edited request




                                E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Sharpen your weapons
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Example of vulnerabilities


      Open redirection [27]
             http://www.vulnerable.com/?redirect=http://www.attacker.com
          Not critical
          Built in the standards?
      Cookie theft
          Works even if the victim has not chosen the ”Remember”
          option
          Demo: Make the SP leaking idpdisco saml lastidp cookie,
          even if cookie idpdisco saml remember = 0
                If you visit his site, a bad guy can inconspicuously discover
                your IdP = what is your originating organization



                                  E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Sharpen your weapons
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


Demo: SimpleSAMLPHP open redirect
When an open redirect leads to cookie theft




      Leveraging an existing live,
      open to everyone test
      environment
      Feide [28]: Norwegian
      academic Federation
      on a dummy account

 home realm cookie=
 https://openidp.feide.no


                                      E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Sharpen your weapons
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


Demo: SimpleSAMLPHP open redirect
When an open redirect leads to cookie theft



                                                                  1   Victim accesses evil
                                                                      site
                                                                  2   Contains a crafted
                                                                      get request to the SP
                                                                  3   Evil site gets the
                                                                      cookie back thanks to
                                                                      the Open Redirection
                                                                      (Google search
                                                                      request for
                                                                      illustration)


                                      E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Sharpen your weapons
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Back to the OASIS standard

    Identity Provider Discovery Service Protocol and Profile [29]




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Sharpen your weapons
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


Identity Provider Discovery Service Protocol and Profile
[29]

  [sic]
          ”This protocol has the potential for creating additional
          opportunities for phishing...”
          Proposed workaround: use of SP metadata
          ”To mitigate this threat, metadata can be used to limit the
          sites authorized to use a discovery service”
          ”A discovery service SHOULD require that the service
          providers making use of it supply metadata”

          Developers don’t have to implement it to be compliant [30]

                                      E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Sharpen your weapons
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


Identity Provider Discovery Service Protocol and Profile
[29]

  [sic]
          ”This protocol has the potential for creating additional
          opportunities for phishing...”
          Proposed workaround: use of SP metadata
          ”To mitigate this threat, metadata can be used to limit the
          sites authorized to use a discovery service”
          ”A discovery service SHOULD require that the service
          providers making use of it supply metadata”

          Developers don’t have to implement it to be compliant [30]

                                      E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Design assessment
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                              Forward the Federation
                                          Federation
                                                       Design assessment
                              Federation and Empire
                                   Federation’s Edge
                     Federation and (down to) Earth


Deployment and trust topologies
Typical situations




                                         E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Design assessment
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


New risks?

  Previous boundaries become more and more notional
      Network flows
           Attack surface
           Management interface
      Users community
           Insider?
      Data flows

  Cost/Benefit not doing it?
      Security policies coherency / comparison / enforcement


                                   E. Bouillon   Federation & Empire
Prelude to Federation
                             Forward the Federation
                                         Federation
                                                      Design assessment
                             Federation and Empire
                                  Federation’s Edge
                    Federation and (down to) Earth


Similar flows orchestrated in federated environment
simple federation scenario [6]




                                        E. Bouillon   Federation & Empire
Prelude to Federation
                     Forward the Federation
                                 Federation
                                              Design assessment
                     Federation and Empire
                          Federation’s Edge
            Federation and (down to) Earth


Similar flows orchestrated in federated environment




                                E. Bouillon   Federation & Empire
Prelude to Federation
                    Forward the Federation
                                Federation
                                             Design assessment
                    Federation and Empire
                         Federation’s Edge
           Federation and (down to) Earth


What if OrgC signs a claim for UserA@OrgA.net?




                               E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   Design assessment
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


Considerations on deployment architectures
Trust topology


         Previous example follows a direct trust topology [6]




                                     E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   Design assessment
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


Considerations on deployment architectures
Trust topology

         More complex exist including indirect trust topology [6]




                                     E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   Design assessment
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


Considerations on deployment architectures
Trust topology

         More complex exist including indirect trust topology




                                     E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   Design assessment
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


What if OrgC signs a claim for UserA@OrgA.net?
SAML claims laundering




                                     E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Design assessment
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


SAML claims laundering

     If STS D signs the token, STS B has no way to see the trick
         OrgB fully relies on OrgD to properly check SAML claims
         Policy?
         Verification?
               Is auditing permitted? Regular security checks presented?
               How to prove other parties compliance with relevant
               requirements?
     Questions usually unasked and even less answered:
         What about a malicious/compromised IdP in the federation?
               Can a malicious IdP impersonate another domain users?
               Are there safeguards in place?
               Do I own or delegate these safeguards?
         What about a malicious/compromised SP in the federation?

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Design assessment
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


SAML claims laundering

     If STS D signs the token, STS B has no way to see the trick
         OrgB fully relies on OrgD to properly check SAML claims
         Policy?
         Verification?
               Is auditing permitted? Regular security checks presented?
               How to prove other parties compliance with relevant
               requirements?
     Questions usually unasked and even less answered:
         What about a malicious/compromised IdP in the federation?
               Can a malicious IdP impersonate another domain users?
               Are there safeguards in place?
               Do I own or delegate these safeguards?
         What about a malicious/compromised SP in the federation?

                                 E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Design assessment
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


SAML claims laundering
  WS-Federation [6]
      Situation tersely considered in the specification
      Chapt 16 : Security considerations
      Compromised services: ”This is of special concern in
      scenarios like the 3rd party brokered trust where a 3rd party
      IP/STS is brokering trust between two realms.”

      In practice, by default it works
      No proposed solution on how to prevent that
      In the case of 3rd party brokered trust, how to control the loss
      of control
          Whose liability
          Other parties obligation (accountability)
                                  E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Design assessment
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


SAML claims laundering



     All relies on checks made at each relay level
     This MUST be done since default settings are permissive
     Key attributes must be kept or added to avoid turning the
     situation into blind trust and single point of security failure
     On main federations, this policy is not publicly disclosed, so
     how to make an educated choice?




                                 E. Bouillon   Federation & Empire
Prelude to Federation
                        Forward the Federation
                                    Federation
                                                 Conclusion
                        Federation and Empire
                             Federation’s Edge
               Federation and (down to) Earth


Outline
  1   Prelude to Federation
        Introduction
  2   Forward the Federation
        Where we come from
  3   Federation
        What you need to know
  4   Federation and Empire
        Sharpen your weapons
  5   Federation’s Edge
        Design assessment
  6   Federation and (down to) Earth
        Conclusion
                                   E. Bouillon   Federation & Empire
Prelude to Federation
                       Forward the Federation
                                   Federation
                                                Conclusion
                       Federation and Empire
                            Federation’s Edge
              Federation and (down to) Earth


Conclusion

  Take-aways
      Knowledge and tool to keep on powning SAML protected
      Web app
      Proven assumption: Standards can be read as an attempt to
      circumvent SOP
          Process and tools to get there
      Important design security considerations
          Without taking care, ”Insecurity by design” is more than likely
          E.g. Cross domain SSO with AD trust relationships
                A compromised domain cannot impersonate other domains
                users
          With SAML based cross domain SSO, by default, it will

                                  E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Conclusion
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Conclusion

     This applies to other forms of federation
     Developers, marketers ahead of security guys
         Yet default settings are not secure
         The ”make it working” approach might lead to insecure
         deployment
         Need to catch up to avoid big deployment security failure
         (with probably thorny legal issues)
     Get acquainted with protocols to properly assess designs and
     deployments
     Adapt our tool set because bad guys will
     Better guidance or improved standards?


                                 E. Bouillon   Federation & Empire
Prelude to Federation
                      Forward the Federation
                                  Federation
                                               Conclusion
                      Federation and Empire
                           Federation’s Edge
             Federation and (down to) Earth


Thanks for your attention


      Acknowledgment
          Isaac Asimov
          Rui Fiske for his great help and extensive knowledge on SAML
      Q & possibly A
      Buby modules and sample code at
      http://code.google.com/p/buby-saml


                           manu@veryopenid.net



                                 E. Bouillon   Federation & Empire
Prelude to Federation
                            Forward the Federation
                                        Federation
                                                     Conclusion
                            Federation and Empire
                                 Federation’s Edge
                   Federation and (down to) Earth


References I
  [1]   K. Cameron - The Laws of Identity - http:
        //www.identityblog.com/stories/2005/05/13/TheLawsOfIdentity.pdf
  [2]   Anonymity Support for Kerberos - draft-ietf-krb-wg-anon-04 - Kerberos extension
  [3]   B. Hill - Attacking XML Security - Black Hat Briefings USA 2007 - http://www.
        isecpartners.com/files/iSEC_HILL_AttackingXMLSecurity_bh07.pdf
  [4]   OASIS - SAML XML.org - http://saml.xml.org/
  [5]   D. Hardt - Identity 2.0 - OSCON 2005 Keynote -
        http://identity20.com/media/OSCON2005/
  [6]   Web Services Federation Language (WS-Federation) Version 1.2 - OASIS -
        http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.pdf
  [7]   T. Groß- IBM Zurich Research Laboratory - Security Analysis of the SAML
        Single Sign-on Browser/Artifact Profile
  [8]   OASIS - SSTC Response to :Security Analysis of the SAML Single Sign-on
        Browser/Artifact Profile - Working Draft 01, 24 January 2005

                                       E. Bouillon   Federation & Empire
Prelude to Federation
                            Forward the Federation
                                        Federation
                                                     Conclusion
                            Federation and Empire
                                 Federation’s Edge
                   Federation and (down to) Earth


References II
  [9]   OASIS - Security and Privacy Considerations for the OASIS Security Assertion
        Markup Language (SAML) V2.0 - OASIS Standard, 15 March 2005
  [10] Armando and Al - Breaking the SAML-based Single Sign-On for Google Apps -
       http://www.ai-lab.it/armando/GoogleSSOVulnerability.html
  [11] Security Assertion Markup Language (SAML) 2.0 Technical Overview (draft 3) -
       OASIS - http://www.oasis-open.org/committees/download.php/11511/
       sstc-saml-tech-overview-2.0-draft-03.pdf
  [12] Security Assertion Markup Language (SAML) 2.0 Technical Overview (draft 10)
       - OASIS - http://www.oasis-open.org/committees/download.php/20645/
       sstc-saml-tech-overview-2%200-draft-10.pdf
  [13] Myth Breaker - The Best Open Source Web Application Vulnerability Scanner -
       http://sectooladdict.blogspot.com/2011/01/
       myth-breaker-best-open-source-web.html
  [14] OSSTMM - Open Source Security Testing Methodology Manual -
       http://www.isecom.org/osstmm/

                                       E. Bouillon   Federation & Empire
Prelude to Federation
                          Forward the Federation
                                      Federation
                                                   Conclusion
                          Federation and Empire
                               Federation’s Edge
                 Federation and (down to) Earth


References III
  [15] OWASP Testing Project -
       https://www.owasp.org/index.php/OWASP_Testing_Project
  [16] Web Application Scanner Benchmark (v1.0) http://sectooladdict.blogspot.
       com/2010/12/web-application-scanner-benchmark.html
  [17] UNINETT releases public beta of SAML tracer -
       https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/
  [18] Feide RnD SAML 2.0 Debugger -
       https://rnd.feide.no/software/saml_2_0_debugger/
  [19] Federation Lab beta - https://fed-lab.org/
  [20] J. Haddix, J. Parish - Bsides Chicago 2011 - http:
       //www.securityaegis.com/wp-content/uploads/2011/04/bsides_final.ppt
  [21] Pentest John - http://www.securityaegis.com/pentest-john-memes
  [22] J. Haddix, J. Parish - ToorCon 12 -
       http://www.securityaegis.com/burp_preso.pdf

                                     E. Bouillon   Federation & Empire
Prelude to Federation
                           Forward the Federation
                                       Federation
                                                    Conclusion
                           Federation and Empire
                                Federation’s Edge
                  Federation and (down to) Earth


References IV

  [23] WCF Binary Soap Plug-In for Burp - Gotham Digital Science - http://www.
       gdssecurity.com/l/b/2009/11/19/wcf-binary-soap-plug-in-for-burp/
  [24] Burp Suite - http://portswigger.net
  [25] Buby’s homepage - http://emonti.github.com/buby
  [26] Buby tutorial - K. Johnson - http://carnal0wnage.attackresearch.com/
       2011/05/buby-script-basics-part-1.html
  [27] OWASP Open Redirect - https://www.owasp.org/index.php/Open_redirect
  [28] Feide - http://www.feide.no
  [29] Identity Provider Discovery Service Protocol and Profile - OASIS - http://docs.
       oasis-open.org/security/saml/Post2.0/sstc-saml-idp-discovery.pdf
  [30] Support metadata DiscoveryResponse for discovery service - SimpleSAMLphp
       issue 363 -
       http://code.google.com/p/simplesamlphp/issues/detail?id=363


                                      E. Bouillon   Federation & Empire

More Related Content

Recently uploaded

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Featured

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

Federation and Empire

  • 1. Federation & Empire Emmanuel Bouillon manu@veryopenid.net DEF CON #19 - 7th August 2011
  • 2. Prelude to Federation Forward the Federation Federation Federation and Empire Federation’s Edge Federation and (down to) Earth Prefatory notes $ whoami Having fun in INFOSEC for a while SSTIC, PacSec, BlackHat EU, Hack.lu, #Days CVE-2010-{0283,2229,2914,2941,...}, CVE-2011-{0001,...} Disclaimer This expresses my own views and does not involve my previous, current and future employers and thus for seven generations Presentation and code provided for educational purpose only E. Bouillon Federation & Empire
  • 3. Prelude to Federation Forward the Federation Federation Federation and Empire Federation’s Edge Federation and (down to) Earth Prefatory notes $ whoami Having fun in INFOSEC for a while SSTIC, PacSec, BlackHat EU, Hack.lu, #Days CVE-2010-{0283,2229,2914,2941,...}, CVE-2011-{0001,...} Disclaimer This expresses my own views and does not involve my previous, current and future employers and thus for seven generations Presentation and code provided for educational purpose only E. Bouillon Federation & Empire
  • 4. Prelude to Federation Forward the Federation Federation Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 5. Prelude to Federation Forward the Federation Federation Introduction Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 6. Prelude to Federation Forward the Federation Federation Introduction Federation and Empire Federation’s Edge Federation and (down to) Earth What is it about? SAML = Security Assertion Markup Language This relates to Won’t discuss SAML Token and Claims Formal protocol/API based IAM comparison Low level, Pen-tester approach Consistent standards study Standards ”reverse engineering”: Find vulns, see what’s wrong in specs Take-aways Tool to play with SAML protected Web app Proven assumption: Standards can be read as an attempt to circumvent SOP Important design security considerations E. Bouillon Federation & Empire
  • 7. Prelude to Federation Forward the Federation Federation Introduction Federation and Empire Federation’s Edge Federation and (down to) Earth What is it about? SAML = Security Assertion Markup Language This relates to Won’t discuss SAML Token and Claims Formal protocol/API based IAM comparison Low level, Pen-tester approach Consistent standards study Standards ”reverse engineering”: Find vulns, see what’s wrong in specs Take-aways Tool to play with SAML protected Web app Proven assumption: Standards can be read as an attempt to circumvent SOP Important design security considerations E. Bouillon Federation & Empire
  • 8. Prelude to Federation Forward the Federation Federation Introduction Federation and Empire Federation’s Edge Federation and (down to) Earth Why should you care? Pervasive Cloud Joining a federation usually has severe contractual, legal implications. It’s coming your way! E. Bouillon Federation & Empire
  • 9. Prelude to Federation Forward the Federation Federation Where we come from Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 10. Prelude to Federation Forward the Federation Federation Where we come from Federation and Empire Federation’s Edge Federation and (down to) Earth The main problem to solve User and Administrator friendly cross organization boundaries SSO - here for web apps Secure Scalable Manageable Privacy / Anonymity Ideally compliant with the Laws of Identity [1] E. Bouillon Federation & Empire
  • 11. Prelude to Federation Forward the Federation Federation Where we come from Federation and Empire Federation’s Edge Federation and (down to) Earth Historical approaches The good old time Account Replication Manual Automated WHAT? Lose control of accounts Have multiple passwords ”Trust” relationships to be established with other realms / domains All user information shared with federated partners Firewalls need to be opened to allow trust Bilateral ⇒ n2 problem - no easy way to establish trust with multiple partners Privacy / anonymity Anonymity Support for Kerberos [2] E. Bouillon Federation & Empire
  • 12. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 13. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Federated identity standards - Overview [3] E. Bouillon Federation & Empire
  • 14. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth SAML 101 Security Assertion Markup Language [4] transfer of identity information between organizations that have an established trust relationship SAML components SAML Assertions / Protocols / Bindings / Profiles Web Browser SSO Profile Identity Provider Discovery Profile E. Bouillon Federation & Empire
  • 15. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth What are SAML Assertions? Signed XML document containing claims or attributes about a user Collected Claims = Identity Claims do not need to unambiguously identify user. Only relevant information (e.g. Age > 21, so can buy booze) [5] E. Bouillon Federation & Empire
  • 16. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth What it looks like E. Bouillon Federation & Empire
  • 17. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth What it looks like E. Bouillon Federation & Empire
  • 18. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth What it looks like E. Bouillon Federation & Empire
  • 19. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How is SAML used? Standards-based (so widely supported, supposedly interoperable), including: XML Encryption, XML Digital Signatures, X.509 Relies on standard HTTP (so passes through firewalls and across Internet) Local network (not just for Federation!) Branch offices Remote workers But also supports federation (of which more, later) Supports SSO (no need to remember lots of passwords) Transparent to user (from web browser or compiled application): a single click, and the magic happens! E. Bouillon Federation & Empire
  • 20. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How is SAML used? Standards-based (so widely supported, supposedly interoperable), including: XML Encryption, XML Digital Signatures, X.509 Relies on standard HTTP (so passes through firewalls and across Internet) Local network (not just for Federation!) Branch offices Remote workers But also supports federation (of which more, later) Supports SSO (no need to remember lots of passwords) Transparent to user (from web browser or compiled application): a single click, and the magic happens! E. Bouillon Federation & Empire
  • 21. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How is SAML used? Standards-based (so widely supported, supposedly interoperable), including: XML Encryption, XML Digital Signatures, X.509 Relies on standard HTTP (so passes through firewalls and across Internet) Local network (not just for Federation!) Branch offices Remote workers But also supports federation (of which more, later) Supports SSO (no need to remember lots of passwords) Transparent to user (from web browser or compiled application): a single click, and the magic happens! E. Bouillon Federation & Empire
  • 22. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How is SAML used? Standards-based (so widely supported, supposedly interoperable), including: XML Encryption, XML Digital Signatures, X.509 Relies on standard HTTP (so passes through firewalls and across Internet) Local network (not just for Federation!) Branch offices Remote workers But also supports federation (of which more, later) Supports SSO (no need to remember lots of passwords) Transparent to user (from web browser or compiled application): a single click, and the magic happens! E. Bouillon Federation & Empire
  • 23. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How is SAML used? Standards-based (so widely supported, supposedly interoperable), including: XML Encryption, XML Digital Signatures, X.509 Relies on standard HTTP (so passes through firewalls and across Internet) Local network (not just for Federation!) Branch offices Remote workers But also supports federation (of which more, later) Supports SSO (no need to remember lots of passwords) Transparent to user (from web browser or compiled application): a single click, and the magic happens! E. Bouillon Federation & Empire
  • 24. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? Web Browser SSO Profile (SP-Initiated SSO - Redirect/POST Bindings) 1 User requests access to a claims aware web application 2 Redirected (through 302 Redirection) to IdP 3 Authenticates to IdP (either through Kerberos or Username/Password) 4 Redirected (through HTTP POST) back to web application, including security token 5 Happy User − no passwords to remember + Happy Administrator/Developer − much easier to manage E. Bouillon Federation & Empire
  • 25. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? 1 User requests access to a claims aware web application E. Bouillon Federation & Empire
  • 26. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? 2 Redirected (through HTTP 302) to IdP E. Bouillon Federation & Empire
  • 27. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? 3 Authenticates to IdP (either through Kerberos or Username/Password) E. Bouillon Federation & Empire
  • 28. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? 4 Redirected (through HTTP POST) back to web application, including security token E. Bouillon Federation & Empire
  • 29. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth How does it work? 5 Happy User − no passwords to remember + Happy Administrator/Developer − much easier to manage E. Bouillon Federation & Empire
  • 30. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth So what? In addition to SSO, also supports: Federation − the sharing of identity between domains (MDSSO) Delegation − maintenance of identity to backend services Distribution of Directory information to other applications, which gives us: ABAC (Attribute Based Access Control) = RBAC+ Support for Federation ⇒ SAML suitable for the cloud Become ubiquitous E. Bouillon Federation & Empire
  • 31. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth WS-Federation [6] Approved OASIS specification Defines mechanisms to allow different security realms to federate authorized access to resources managed in one realm can be provided to principals whose identities and attributes are managed in other realms Includes mechanisms for brokering of identity, attribute, authentication and authorization assertions between realms Chapt 16: Security Considerations Last bullet: compromised services E. Bouillon Federation & Empire
  • 32. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Federation E. Bouillon Federation & Empire
  • 33. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Brokered Federation model Trust through a central Broker, establishes trust between many IdPs But: How is the trust established? Do we trust all of them? How are standards to be maintained? E. Bouillon Federation & Empire
  • 34. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Multiple Identity Providers User establishes account with many IdPs Each IdP for different function e.g. Bank Government E. Bouillon Federation & Empire
  • 35. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth SAML security seminal papers On standards Security Analysis of the SAML Single Sign-on Browser/Artifact Profile [7] SSTC Response to Security Analysis of the SAML Single Sign-on Browser/Artifact Profile: [8] Security and Privacy Considerations for the OASIS Security Assertion Markup Language (SAML) V2.0 [9] On implementations issues Armando & Al - Breaking the SAML-based Single Sign-On for Google Apps [10] B. Hill - Attacking XML Security - Black Hat US 2007 [3] E. Bouillon Federation & Empire
  • 36. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth OASIS SAML V2.0 Technical Overview (draft 3 and 10) [sic] [11] SAML use case No.1: ”Limitations of Browser cookies” [12] Driver of SAML adoption No.1: ”Multi Domain SSO ... However, since browser cookies are never transmitted between DNS domains, ... SAML solves the MDSSO problem.” True issue, legitimate will but... Can also be read as: ”SOP sucks, let’s build a workaround!” Great potential for security issues Is it a fail or not? E.g. Can a bad guy steal cookies? Be patient ;-) E. Bouillon Federation & Empire
  • 37. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth OASIS SAML V2.0 Technical Overview (draft 3 and 10) [sic] [11] SAML use case No.1: ”Limitations of Browser cookies” [12] Driver of SAML adoption No.1: ”Multi Domain SSO ... However, since browser cookies are never transmitted between DNS domains, ... SAML solves the MDSSO problem.” True issue, legitimate will but... Can also be read as: ”SOP sucks, let’s build a workaround!” Great potential for security issues Is it a fail or not? E.g. Can a bad guy steal cookies? Be patient ;-) E. Bouillon Federation & Empire
  • 38. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Implementations security The Good, e.g: Token encryption Replay attacks usually addressed by default The Bad, e.g: Unsigned LogOut Request accepted TargetAudience attribute not verified The Ugly, e.g: Open redirection vulnerability Cookie stealing E. Bouillon Federation & Empire
  • 39. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Implementations security The Good, e.g: Token encryption Replay attacks usually addressed by default The Bad, e.g: Unsigned LogOut Request accepted TargetAudience attribute not verified The Ugly, e.g: Open redirection vulnerability Cookie stealing E. Bouillon Federation & Empire
  • 40. Prelude to Federation Forward the Federation Federation What you need to know Federation and Empire Federation’s Edge Federation and (down to) Earth Implementations security The Good, e.g: Token encryption Replay attacks usually addressed by default The Bad, e.g: Unsigned LogOut Request accepted TargetAudience attribute not verified The Ugly, e.g: Open redirection vulnerability Cookie stealing E. Bouillon Federation & Empire
  • 41. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 42. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Tools Tool set usually made of a combination of Pro/Community edition of Commercial tools FOSS [13] Custom scripts Methodology Procedures (+/-) formal (generic or custom) Generally accepted best practices [14][15] Habits, personal preferences [16] Still many manual, ad-hoc, improvised steps E. Bouillon Federation & Empire
  • 43. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Adapt your toolset ”Don’t be a tool” [20][21] but... Properly using the right tools often makes the difference Time constraint Two reasons Allow ”traditional” assessment of Web apps and services protected by SAML tokens Configurations of such architectures is crucial yet complex error prone need tools to assess good configuration settings are effective E. Bouillon Federation & Empire
  • 44. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Exiting SAML oriented helpers UNINETT beta SAML tracer [17] Firefox Plugin Tool for viewing SAML messages sent during single sign-on and single logout Feide RnD SAML 2.0 Debugger [18] Online application to encode/decode SAML message ´ Federation Lab beta (GEANT3 Identity Federations) [19] Online automated checks on SP implementation Manual approach Burp decoder (truncated) Python, ruby saml = Zlib::Inflate.new(-Zlib::MAX_WBITS).inflate(B... encoded = CGI::escape(Base64::encode64(Zlib::Deflate... E. Bouillon Federation & Empire
  • 45. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Fed Lab Service Provider test Against an out of the box ”Hello world” SP SimpleSAMLphp based E. Bouillon Federation & Empire
  • 46. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Fed Lab Service Provider test Against an out of the box ”Hello world” SP SimpleSAMLphp based E. Bouillon Federation & Empire
  • 47. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Decoding / encoding [22] ”Things humans aren’t good at” Decoding / encoding on the fly Gain of automation Easy semantic understanding Allows relevant request mangling Changes scanner from dumb to smart fuzzer Thwarts anti-replay safeguards (e.g. unique random nonce) Updates timestamps (long scans can unfold) E. Bouillon Federation & Empire
  • 48. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Pre & Post processing Same approach as [23] for WCF Binary SOAP Proxy chaining Preprocessing (decoding requests / encoding responses) Scanning (Fuzz, mangle, do stuff...) Postprocessing (encoding requests / decoding responses) E. Bouillon Federation & Empire
  • 49. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Illustration with Burp Pro Suite Burp Pro Suite [24] Extender Java API to extend Burp Suite functionalities Particularly suitable for Pre & Post processing Bindings for Python and Ruby (Buby [25]) Buby Ruby based framework to extend Burp Suite Tutorial: [26] Hook either evt proxy message or evt http message POC Buby modules and sample code at http://code.google.com/p/buby-saml buby -r SAML_preprocessing -e ReqTamperer buby -r SAML_postprocessing -e ReqTamperer E. Bouillon Federation & Empire
  • 50. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Preprocessing proxy - Original request E. Bouillon Federation & Empire
  • 51. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Preprocessing proxy - Edited request E. Bouillon Federation & Empire
  • 52. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Central Burp instance - Intruder E. Bouillon Federation & Empire
  • 53. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Postprocessing proxy - Original request E. Bouillon Federation & Empire
  • 54. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Postprocessing proxy - Edited request E. Bouillon Federation & Empire
  • 55. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Example of vulnerabilities Open redirection [27] http://www.vulnerable.com/?redirect=http://www.attacker.com Not critical Built in the standards? Cookie theft Works even if the victim has not chosen the ”Remember” option Demo: Make the SP leaking idpdisco saml lastidp cookie, even if cookie idpdisco saml remember = 0 If you visit his site, a bad guy can inconspicuously discover your IdP = what is your originating organization E. Bouillon Federation & Empire
  • 56. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Demo: SimpleSAMLPHP open redirect When an open redirect leads to cookie theft Leveraging an existing live, open to everyone test environment Feide [28]: Norwegian academic Federation on a dummy account home realm cookie= https://openidp.feide.no E. Bouillon Federation & Empire
  • 57. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Demo: SimpleSAMLPHP open redirect When an open redirect leads to cookie theft 1 Victim accesses evil site 2 Contains a crafted get request to the SP 3 Evil site gets the cookie back thanks to the Open Redirection (Google search request for illustration) E. Bouillon Federation & Empire
  • 58. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Back to the OASIS standard Identity Provider Discovery Service Protocol and Profile [29] E. Bouillon Federation & Empire
  • 59. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Identity Provider Discovery Service Protocol and Profile [29] [sic] ”This protocol has the potential for creating additional opportunities for phishing...” Proposed workaround: use of SP metadata ”To mitigate this threat, metadata can be used to limit the sites authorized to use a discovery service” ”A discovery service SHOULD require that the service providers making use of it supply metadata” Developers don’t have to implement it to be compliant [30] E. Bouillon Federation & Empire
  • 60. Prelude to Federation Forward the Federation Federation Sharpen your weapons Federation and Empire Federation’s Edge Federation and (down to) Earth Identity Provider Discovery Service Protocol and Profile [29] [sic] ”This protocol has the potential for creating additional opportunities for phishing...” Proposed workaround: use of SP metadata ”To mitigate this threat, metadata can be used to limit the sites authorized to use a discovery service” ”A discovery service SHOULD require that the service providers making use of it supply metadata” Developers don’t have to implement it to be compliant [30] E. Bouillon Federation & Empire
  • 61. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 62. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Deployment and trust topologies Typical situations E. Bouillon Federation & Empire
  • 63. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth New risks? Previous boundaries become more and more notional Network flows Attack surface Management interface Users community Insider? Data flows Cost/Benefit not doing it? Security policies coherency / comparison / enforcement E. Bouillon Federation & Empire
  • 64. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Similar flows orchestrated in federated environment simple federation scenario [6] E. Bouillon Federation & Empire
  • 65. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Similar flows orchestrated in federated environment E. Bouillon Federation & Empire
  • 66. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth What if OrgC signs a claim for UserA@OrgA.net? E. Bouillon Federation & Empire
  • 67. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Considerations on deployment architectures Trust topology Previous example follows a direct trust topology [6] E. Bouillon Federation & Empire
  • 68. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Considerations on deployment architectures Trust topology More complex exist including indirect trust topology [6] E. Bouillon Federation & Empire
  • 69. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth Considerations on deployment architectures Trust topology More complex exist including indirect trust topology E. Bouillon Federation & Empire
  • 70. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth What if OrgC signs a claim for UserA@OrgA.net? SAML claims laundering E. Bouillon Federation & Empire
  • 71. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth SAML claims laundering If STS D signs the token, STS B has no way to see the trick OrgB fully relies on OrgD to properly check SAML claims Policy? Verification? Is auditing permitted? Regular security checks presented? How to prove other parties compliance with relevant requirements? Questions usually unasked and even less answered: What about a malicious/compromised IdP in the federation? Can a malicious IdP impersonate another domain users? Are there safeguards in place? Do I own or delegate these safeguards? What about a malicious/compromised SP in the federation? E. Bouillon Federation & Empire
  • 72. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth SAML claims laundering If STS D signs the token, STS B has no way to see the trick OrgB fully relies on OrgD to properly check SAML claims Policy? Verification? Is auditing permitted? Regular security checks presented? How to prove other parties compliance with relevant requirements? Questions usually unasked and even less answered: What about a malicious/compromised IdP in the federation? Can a malicious IdP impersonate another domain users? Are there safeguards in place? Do I own or delegate these safeguards? What about a malicious/compromised SP in the federation? E. Bouillon Federation & Empire
  • 73. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth SAML claims laundering WS-Federation [6] Situation tersely considered in the specification Chapt 16 : Security considerations Compromised services: ”This is of special concern in scenarios like the 3rd party brokered trust where a 3rd party IP/STS is brokering trust between two realms.” In practice, by default it works No proposed solution on how to prevent that In the case of 3rd party brokered trust, how to control the loss of control Whose liability Other parties obligation (accountability) E. Bouillon Federation & Empire
  • 74. Prelude to Federation Forward the Federation Federation Design assessment Federation and Empire Federation’s Edge Federation and (down to) Earth SAML claims laundering All relies on checks made at each relay level This MUST be done since default settings are permissive Key attributes must be kept or added to avoid turning the situation into blind trust and single point of security failure On main federations, this policy is not publicly disclosed, so how to make an educated choice? E. Bouillon Federation & Empire
  • 75. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth Outline 1 Prelude to Federation Introduction 2 Forward the Federation Where we come from 3 Federation What you need to know 4 Federation and Empire Sharpen your weapons 5 Federation’s Edge Design assessment 6 Federation and (down to) Earth Conclusion E. Bouillon Federation & Empire
  • 76. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth Conclusion Take-aways Knowledge and tool to keep on powning SAML protected Web app Proven assumption: Standards can be read as an attempt to circumvent SOP Process and tools to get there Important design security considerations Without taking care, ”Insecurity by design” is more than likely E.g. Cross domain SSO with AD trust relationships A compromised domain cannot impersonate other domains users With SAML based cross domain SSO, by default, it will E. Bouillon Federation & Empire
  • 77. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth Conclusion This applies to other forms of federation Developers, marketers ahead of security guys Yet default settings are not secure The ”make it working” approach might lead to insecure deployment Need to catch up to avoid big deployment security failure (with probably thorny legal issues) Get acquainted with protocols to properly assess designs and deployments Adapt our tool set because bad guys will Better guidance or improved standards? E. Bouillon Federation & Empire
  • 78. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth Thanks for your attention Acknowledgment Isaac Asimov Rui Fiske for his great help and extensive knowledge on SAML Q & possibly A Buby modules and sample code at http://code.google.com/p/buby-saml manu@veryopenid.net E. Bouillon Federation & Empire
  • 79. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth References I [1] K. Cameron - The Laws of Identity - http: //www.identityblog.com/stories/2005/05/13/TheLawsOfIdentity.pdf [2] Anonymity Support for Kerberos - draft-ietf-krb-wg-anon-04 - Kerberos extension [3] B. Hill - Attacking XML Security - Black Hat Briefings USA 2007 - http://www. isecpartners.com/files/iSEC_HILL_AttackingXMLSecurity_bh07.pdf [4] OASIS - SAML XML.org - http://saml.xml.org/ [5] D. Hardt - Identity 2.0 - OSCON 2005 Keynote - http://identity20.com/media/OSCON2005/ [6] Web Services Federation Language (WS-Federation) Version 1.2 - OASIS - http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.pdf [7] T. Groß- IBM Zurich Research Laboratory - Security Analysis of the SAML Single Sign-on Browser/Artifact Profile [8] OASIS - SSTC Response to :Security Analysis of the SAML Single Sign-on Browser/Artifact Profile - Working Draft 01, 24 January 2005 E. Bouillon Federation & Empire
  • 80. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth References II [9] OASIS - Security and Privacy Considerations for the OASIS Security Assertion Markup Language (SAML) V2.0 - OASIS Standard, 15 March 2005 [10] Armando and Al - Breaking the SAML-based Single Sign-On for Google Apps - http://www.ai-lab.it/armando/GoogleSSOVulnerability.html [11] Security Assertion Markup Language (SAML) 2.0 Technical Overview (draft 3) - OASIS - http://www.oasis-open.org/committees/download.php/11511/ sstc-saml-tech-overview-2.0-draft-03.pdf [12] Security Assertion Markup Language (SAML) 2.0 Technical Overview (draft 10) - OASIS - http://www.oasis-open.org/committees/download.php/20645/ sstc-saml-tech-overview-2%200-draft-10.pdf [13] Myth Breaker - The Best Open Source Web Application Vulnerability Scanner - http://sectooladdict.blogspot.com/2011/01/ myth-breaker-best-open-source-web.html [14] OSSTMM - Open Source Security Testing Methodology Manual - http://www.isecom.org/osstmm/ E. Bouillon Federation & Empire
  • 81. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth References III [15] OWASP Testing Project - https://www.owasp.org/index.php/OWASP_Testing_Project [16] Web Application Scanner Benchmark (v1.0) http://sectooladdict.blogspot. com/2010/12/web-application-scanner-benchmark.html [17] UNINETT releases public beta of SAML tracer - https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/ [18] Feide RnD SAML 2.0 Debugger - https://rnd.feide.no/software/saml_2_0_debugger/ [19] Federation Lab beta - https://fed-lab.org/ [20] J. Haddix, J. Parish - Bsides Chicago 2011 - http: //www.securityaegis.com/wp-content/uploads/2011/04/bsides_final.ppt [21] Pentest John - http://www.securityaegis.com/pentest-john-memes [22] J. Haddix, J. Parish - ToorCon 12 - http://www.securityaegis.com/burp_preso.pdf E. Bouillon Federation & Empire
  • 82. Prelude to Federation Forward the Federation Federation Conclusion Federation and Empire Federation’s Edge Federation and (down to) Earth References IV [23] WCF Binary Soap Plug-In for Burp - Gotham Digital Science - http://www. gdssecurity.com/l/b/2009/11/19/wcf-binary-soap-plug-in-for-burp/ [24] Burp Suite - http://portswigger.net [25] Buby’s homepage - http://emonti.github.com/buby [26] Buby tutorial - K. Johnson - http://carnal0wnage.attackresearch.com/ 2011/05/buby-script-basics-part-1.html [27] OWASP Open Redirect - https://www.owasp.org/index.php/Open_redirect [28] Feide - http://www.feide.no [29] Identity Provider Discovery Service Protocol and Profile - OASIS - http://docs. oasis-open.org/security/saml/Post2.0/sstc-saml-idp-discovery.pdf [30] Support metadata DiscoveryResponse for discovery service - SimpleSAMLphp issue 363 - http://code.google.com/p/simplesamlphp/issues/detail?id=363 E. Bouillon Federation & Empire