Lucene search
K

JFrog Artifactory Pro 6.5.9 Signature Validation

🗓️ 19 Mar 2019 00:00:00Reported by Timo Juhani LindforsType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 139 Views

JFrog Artifactory Pro 6.5.9 SAML SSO signature validation vulnerabilit

Related
Code
ReporterTitlePublishedViews
Family
CNVD
JFrog Artifactory Pro SAML SSO Signature Verification Error
20 Mar 201900:00
cnvd
CVE
CVE-2018-19971
16 Apr 201918:12
cve
Cvelist
CVE-2018-19971
16 Apr 201918:12
cvelist
EUVD
EUVD-2018-11638
7 Oct 202500:30
euvd
NVD
CVE-2018-19971
16 Apr 201919:29
nvd
Prion
Improper access control
16 Apr 201919:29
prion
`  
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.  
  
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation