CVE-2018-19971: JFrog Artifactory Pro SAML SSO signature validation error ------------------------------------------------------------------------- Affected products ================= The SAML SSO addon in Artifactory 6.5.9 is vulnerable. The SAML SSO addon in Artifactory 6.5.13 is NOT vulnerable. Other versions were not tested. Background ========== "Artifactory offers a SAML-based Single Sign-On service allowing federated Artifactory partners (identity providers) full control over the authorization process. Using SAML, Artifactory acts as service provider which receives users' authentication information from external identity providers. The SAML SSO addon in Artifactory Pro" -- https://www.jfrog.com/confluence/display/RTF/SAML+SSO+Integration Description =========== The SAML SSO addon in Artifactory 6.5.9 does not properly validate the XML signature in the SAMLResponse field send to the URL /webapp/saml/loginResponse. An attacker can use this flaw to login as any user if they already can login as some user. Let's assume that the attacker has obtained a valid SAML message of the form Root - Assertion id="original" - Subject - Signature - SignedInfo - Reference URI="original" where the URI attribute of the Reference element points to the Assertion element. If we introduce a new Assertion element and make the original Assertion and Signature elements its children we end up with the message Root - Assertion id="evil" - Subject - Assertion id="original" - Subject - Signature - SignedInfo - Reference URI="original" When Artifactory processes this message it looks for the Signature element and checks that the original assertion is signed properly. However, it then proceeds to use the Subject information from the evil assertion which is fully under attacker's control. Exploit ======= If you want to test this vulnerability you can fetch a fork of the SAMLRaider tool from https://github.com/lindi2/SAMLRaider and then select "XSW9" from the drop-down list. You might also want to take a look at the SAMLRaider documentation that shows how this variant differs from earlier similar vulnerabilities: https://github.com/lindi2/SAMLRaider/blob/af73ee4a71e3125188496da29a83799fdb41d8e8/src/main/resources/xswlist.png (The original documentation contained only bitmap images of text so it was not very easy to add new variants.) Author ====== This issue was discovered by Timo Lindfors from Nixu Corporation. Timeline ======== 2018-12-07: Issue reported to vendor. 2018-12-08: Mitre assigns CVE-2018-19971 to this vulnerability. 2018-12-17: JFrog releases a fix in Artifactory 6.5.13. _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: http://seclists.org/fulldisclosure/