Vulnerabilities > CVE-2016-8638 - Session Fixation vulnerability in Ipsilon Project Ipsilon

047910
CVSS 9.1 - CRITICAL
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
HIGH
Integrity impact
NONE
Availability impact
HIGH
network
low complexity
ipsilon-project
CWE-384
critical
nessus

Summary

A vulnerability in ipsilon 2.0 before 2.0.2, 1.2 before 1.2.1, 1.1 before 1.1.2, and 1.0 before 1.0.3 was found that allows attacker to log out active sessions of other users. This issue is related to how it tracks sessions, and allows an unauthenticated attacker to view and terminate active sessions from other users. It is also called a "SAML2 multi-session vulnerability."

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Session Credential Falsification through Forging
    An attacker creates a false but functional session credential in order to gain or usurp access to a service. Session credentials allow users to identify themselves to a service after an initial authentication without needing to resend the authentication information (usually a username and password) with every message. If an attacker is able to forge valid session credentials they may be able to bypass authentication or piggy-back off some other authenticated user's session. This attack differs from Reuse of Session IDs and Session Sidejacking attacks in that in the latter attacks an attacker uses a previous or existing credential without modification while, in a forging attack, the attacker must create their own credential, although it may be based on previously observed credentials.
  • Exploitation of Session Variables, Resource IDs and other Trusted Credentials
    Attacks on session IDs and resource IDs take advantage of the fact that some software accepts user input without verifying its authenticity. For example, a message queuing system that allows service requesters to post messages to its queue through an open channel (such as anonymous FTP), authorization is done through checking group or role membership contained in the posted message. However, there is no proof that the message itself, the information in the message (such group or role membership), or indeed the process that wrote the message to the queue are authentic and authorized to do so. Many server side processes are vulnerable to these attacks because the server to server communications have not been analyzed from a security perspective or the processes "trust" other systems because they are behind a firewall. In a similar way servers that use easy to guess or spoofable schemes for representing digital identity can also be vulnerable. Such systems frequently use schemes without cryptography and digital signatures (or with broken cryptography). Session IDs may be guessed due to insufficient randomness, poor protection (passed in the clear), lack of integrity (unsigned), or improperly correlation with access control policy enforcement points. Exposed configuration and properties files that contain system passwords, database connection strings, and such may also give an attacker an edge to identify these identifiers. The net result is that spoofing and impersonation is possible leading to an attacker's ability to break authentication, authorization, and audit controls on the system.
  • Accessing/Intercepting/Modifying HTTP Cookies
    This attack relies on the use of HTTP Cookies to store credentials, state information and other critical data on client systems. The first form of this attack involves accessing HTTP Cookies to mine for potentially sensitive data contained therein. The second form of this attack involves intercepting this data as it is transmitted from client to server. This intercepted information is then used by the attacker to impersonate the remote user/session. The third form is when the cookie's content is modified by the attacker before it is sent back to the server. Here the attacker seeks to convince the target server to operate on this falsified information.
  • Manipulating Opaque Client-based Data Tokens
    In circumstances where an application holds important data client-side in tokens (cookies, URLs, data files, and so forth) that data can be manipulated. If client or server-side application components reinterpret that data as authentication tokens or data (such as store item pricing or wallet information) then even opaquely manipulating that data may bear fruit for an Attacker. In this pattern an attacker undermines the assumption that client side tokens have been adequately protected from tampering through use of encryption or obfuscation.
  • Session Credential Falsification through Prediction
    This attack targets predictable session ID in order to gain privileges. The attacker can predict the session ID used during a transaction to perform spoofing and session hijacking.

Nessus

  • NASL familyRed Hat Local Security Checks
    NASL idREDHAT-RHSA-2016-2809.NASL
    descriptionAn update for ipsilon is now available for Red Hat Enterprise Linux 7. Red Hat Product Security has rated this update as having a security impact of Important. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section. The ipsilon packages provide the Ipsilon identity provider service for federated single sign-on (SSO). Ipsilon links authentication providers and applications or utilities to allow for SSO. It includes a server and utilities to configure Apache-based service providers. Security Fix(es) : * A vulnerability was found in ipsilon in the SAML2 provider
    last seen2020-06-01
    modified2020-06-02
    plugin id95047
    published2016-11-22
    reporterThis script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/95047
    titleRHEL 7 : ipsilon (RHSA-2016:2809)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Red Hat Security Advisory RHSA-2016:2809. The text 
    # itself is copyright (C) Red Hat, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(95047);
      script_version("2.13");
      script_cvs_date("Date: 2019/10/24 15:35:42");
    
      script_cve_id("CVE-2016-8638");
      script_xref(name:"RHSA", value:"2016:2809");
    
      script_name(english:"RHEL 7 : ipsilon (RHSA-2016:2809)");
      script_summary(english:"Checks the rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Red Hat host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "An update for ipsilon is now available for Red Hat Enterprise Linux 7.
    
    Red Hat Product Security has rated this update as having a security
    impact of Important. A Common Vulnerability Scoring System (CVSS) base
    score, which gives a detailed severity rating, is available for each
    vulnerability from the CVE link(s) in the References section.
    
    The ipsilon packages provide the Ipsilon identity provider service for
    federated single sign-on (SSO). Ipsilon links authentication providers
    and applications or utilities to allow for SSO. It includes a server
    and utilities to configure Apache-based service providers.
    
    Security Fix(es) :
    
    * A vulnerability was found in ipsilon in the SAML2 provider's
    handling of sessions. An attacker able to hit the logout URL could
    determine what service providers other users are logged in to and
    terminate their sessions. (CVE-2016-8638)
    
    This issue was discovered by Patrick Uiterwijk (Red Hat) and Howard
    Johnson."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/errata/RHSA-2016:2809"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2016-8638"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-authform");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-authgssapi");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-authldap");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-base");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-client");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-filesystem");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-infosssd");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-persona");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-saml2");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-saml2-base");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:ipsilon-tools-ipa");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7.3");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7.4");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7.5");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7.6");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7.7");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2017/07/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/11/21");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/11/22");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Red Hat Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/RedHat/release", "Host/RedHat/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || "Red Hat" >!< release) audit(AUDIT_OS_NOT, "Red Hat");
    os_ver = pregmatch(pattern: "Red Hat Enterprise Linux.*release ([0-9]+(\.[0-9]+)?)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Red Hat");
    os_ver = os_ver[1];
    if (! preg(pattern:"^7([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Red Hat 7.x", "Red Hat " + os_ver);
    
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$" && "s390" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Red Hat", cpu);
    
    yum_updateinfo = get_kb_item("Host/RedHat/yum-updateinfo");
    if (!empty_or_null(yum_updateinfo)) 
    {
      rhsa = "RHSA-2016:2809";
      yum_report = redhat_generate_yum_updateinfo_report(rhsa:rhsa);
      if (!empty_or_null(yum_report))
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_WARNING,
          extra      : yum_report 
        );
        exit(0);
      }
      else
      {
        audit_message = "affected by Red Hat security advisory " + rhsa;
        audit(AUDIT_OS_NOT, audit_message);
      }
    }
    else
    {
      flag = 0;
      if (rpm_check(release:"RHEL7", reference:"ipsilon-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-authform-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-authgssapi-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-authldap-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-base-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-client-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-filesystem-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-infosssd-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-persona-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-saml2-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-saml2-base-1.0.0-13.el7_3")) flag++;
    
      if (rpm_check(release:"RHEL7", reference:"ipsilon-tools-ipa-1.0.0-13.el7_3")) flag++;
    
    
      if (flag)
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_WARNING,
          extra      : rpm_report_get() + redhat_report_package_caveat()
        );
        exit(0);
      }
      else
      {
        tested = pkg_tests_get();
        if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
        else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ipsilon / ipsilon-authform / ipsilon-authgssapi / ipsilon-authldap / etc");
      }
    }
    
  • NASL familyFedora Local Security Checks
    NASL idFEDORA_2016-B465090499.NASL
    descriptionNew Ipsilon 2.0 release. ---- Main changes since 1.2 : Security fix for &#x200B;CVE-2016-8638 OpenID Connect 2.0 OAuth 2 User portal with consent management Authorization plugin support Support for adding an instance to the web root Lots of bugfixes Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-06-05
    modified2016-12-29
    plugin id96170
    published2016-12-29
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/96170
    titleFedora 24 : ipsilon (2016-b465090499)
  • NASL familyCentOS Local Security Checks
    NASL idCENTOS_RHSA-2016-2809.NASL
    descriptionAn update for ipsilon is now available for Red Hat Enterprise Linux 7. Red Hat Product Security has rated this update as having a security impact of Important. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section. The ipsilon packages provide the Ipsilon identity provider service for federated single sign-on (SSO). Ipsilon links authentication providers and applications or utilities to allow for SSO. It includes a server and utilities to configure Apache-based service providers. Security Fix(es) : * A vulnerability was found in ipsilon in the SAML2 provider
    last seen2020-06-01
    modified2020-06-02
    plugin id95355
    published2016-11-28
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/95355
    titleCentOS 7 : ipsilon (CESA-2016:2809)
  • NASL familyFedora Local Security Checks
    NASL idFEDORA_2016-2D8FB6D7AD.NASL
    descriptionNew Ipsilon 2.0 release. ---- Main changes since 1.2 : Security fix for &#x200B;CVE-2016-8638 OpenID Connect 2.0 OAuth 2 User portal with consent management Authorization plugin support Support for adding an instance to the web root Lots of bugfixes Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-06-05
    modified2016-12-29
    plugin id96167
    published2016-12-29
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/96167
    titleFedora 25 : ipsilon (2016-2d8fb6d7ad)
  • NASL familyHuawei Local Security Checks
    NASL idEULEROS_SA-2018-1013.NASL
    descriptionAccording to the version of the ipsilon packages installed, the EulerOS installation on the remote host is affected by the following vulnerability : - A vulnerability was found in ipsilon in the SAML2 provider
    last seen2020-05-06
    modified2018-01-19
    plugin id106154
    published2018-01-19
    reporterThis script is Copyright (C) 2018-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/106154
    titleEulerOS 2.0 SP2 : ipsilon (EulerOS-SA-2018-1013)
  • NASL familyOracle Linux Local Security Checks
    NASL idORACLELINUX_ELSA-2016-2809.NASL
    descriptionFrom Red Hat Security Advisory 2016:2809 : An update for ipsilon is now available for Red Hat Enterprise Linux 7. Red Hat Product Security has rated this update as having a security impact of Important. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section. The ipsilon packages provide the Ipsilon identity provider service for federated single sign-on (SSO). Ipsilon links authentication providers and applications or utilities to allow for SSO. It includes a server and utilities to configure Apache-based service providers. Security Fix(es) : * A vulnerability was found in ipsilon in the SAML2 provider
    last seen2020-06-01
    modified2020-06-02
    plugin id95041
    published2016-11-22
    reporterThis script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/95041
    titleOracle Linux 7 : ipsilon (ELSA-2016-2809)

Redhat

advisories
bugzilla
id1392829
titleCVE-2016-8638 ipsilon: DoS via logging out all open SAML2 sessions
oval
OR
  • commentRed Hat Enterprise Linux must be installed
    ovaloval:com.redhat.rhba:tst:20070304026
  • AND
    • commentRed Hat Enterprise Linux 7 is installed
      ovaloval:com.redhat.rhba:tst:20150364027
    • OR
      • AND
        • commentipsilon-authform is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809001
        • commentipsilon-authform is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809002
      • AND
        • commentipsilon-client is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809003
        • commentipsilon-client is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809004
      • AND
        • commentipsilon-saml2-base is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809005
        • commentipsilon-saml2-base is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809006
      • AND
        • commentipsilon-authgssapi is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809007
        • commentipsilon-authgssapi is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809008
      • AND
        • commentipsilon-authldap is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809009
        • commentipsilon-authldap is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809010
      • AND
        • commentipsilon-base is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809011
        • commentipsilon-base is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809012
      • AND
        • commentipsilon is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809013
        • commentipsilon is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809014
      • AND
        • commentipsilon-saml2 is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809015
        • commentipsilon-saml2 is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809016
      • AND
        • commentipsilon-infosssd is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809017
        • commentipsilon-infosssd is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809018
      • AND
        • commentipsilon-tools-ipa is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809019
        • commentipsilon-tools-ipa is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809020
      • AND
        • commentipsilon-filesystem is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809021
        • commentipsilon-filesystem is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809022
      • AND
        • commentipsilon-persona is earlier than 0:1.0.0-13.el7_3
          ovaloval:com.redhat.rhsa:tst:20162809023
        • commentipsilon-persona is signed with Red Hat redhatrelease2 key
          ovaloval:com.redhat.rhsa:tst:20162809024
rhsa
idRHSA-2016:2809
released2016-11-21
severityImportant
titleRHSA-2016:2809: ipsilon security update (Important)
rpms
  • ipsilon-0:1.0.0-13.el7_3
  • ipsilon-authform-0:1.0.0-13.el7_3
  • ipsilon-authgssapi-0:1.0.0-13.el7_3
  • ipsilon-authldap-0:1.0.0-13.el7_3
  • ipsilon-base-0:1.0.0-13.el7_3
  • ipsilon-client-0:1.0.0-13.el7_3
  • ipsilon-filesystem-0:1.0.0-13.el7_3
  • ipsilon-infosssd-0:1.0.0-13.el7_3
  • ipsilon-persona-0:1.0.0-13.el7_3
  • ipsilon-saml2-0:1.0.0-13.el7_3
  • ipsilon-saml2-base-0:1.0.0-13.el7_3
  • ipsilon-tools-ipa-0:1.0.0-13.el7_3