SSB-2024-004 - Potential GitHub SSO vulnerability addressed
CVSS score v4.0 | |
---|---|
Base | 8.9 |
Scalingo has proactively identified and resolved a vulnerability in the GitHub Single Sign-On (SSO) implementation on auth.scalingo.com
.
No exploitation of this vulnerability has been detected in the wild.
The vulnerability was detected during our ongoing bug bounty program, which underscores our commitment to security through continuous testing and improvement. This issue could lead to a potential account takeover attack due to a missing parameter validation in the GitHub SSO authentication flow.
We advise customers to check their SCM link configuration settings (https://dashboard.scalingo.com/account/integrations), and to always be cautious to any link that is sent to them by untrusted third-parties.
Incident Analysis
On 29/07/2024, a security researcher in our private bug bounty program reported a critical vulnerability (CVSS score of 9.3).
The vulnerability arises from a lack of validation of the state
parameter in the GitHub SSO callback process. An attacker could exploit this by sending a crafted URL to a victim, causing the victim’s account to link with the attacker’s GitHub account, thereby granting the attacker full access to the victim’s Scalingo account.
The prerequisites are:
- the victim must not have linked previously their Scalingo account to a GitHub account.
- the victim must be logged into their Scalingo account
- the victim must open a crafted URL in their browser
The severity of the report triggered a prompt analysis from our team the next day.
After a thorough analysis, we adjusted the CVSS score to 8.9 (high) due to the specific prerequisites required for exploitation. Our investigation traced the vulnerability to a code change made six years ago, during a period prior to our ISO 27001 and HDS certifications.
At the same time, we began analyzing our database, and quickly decided to inform our users, by cautiously selecting the people where the GitHub email address differs from the Scalingo account email address (or people where the GitHub email address is empty).
Remediation: what we did
We have implemented a fix that ensures the state
parameter is properly validated during the SSO callback, preventing unauthorized account access.
We did not find any misconfiguration in the Gitlab connector.
Impact
This vulnerability, if exploited, could allow an attacker to gain unauthorized access to a user’s Scalingo account, potentially leading to data exposure and service manipulation. We have not found evidence that this vulnerability has been exploited in the wild.
Incident Response
Timeline
2024-07-29 | Vulnerability reported through our bug bounty program |
2024-07-30 | Detailed analysis of the vulnerability completed |
2024-07-31 | Vulnerability fixed and deployed |
2024-08-20 | Publication of this bulletin |
What you should do
All users are advised to ensure their accounts are secure by reviewing any unexpected changes in their account settings (https://dashboard.scalingo.com/account/integrations). For users whose GitHub account email differs from their Scalingo account email, we have contacted you individually to verify account integrity.
What we will do in the future
- We will thoroughly review the code related to authentication via third-parties in our infrastructure
- We will continue our private bug bounty program on our critical infrastructure components
- We will maintain our internal commitment to code review and high security and architecture standards
Product Impacts
Scalingo PaaS
Successful exploitation could lead to leak of credentials to external or internal data sources potentially including Personally Identifiable Information (access to databases, external APIs…)
Only accounts not already linked to a GitHub account, where an attacker has crafted a malicious URL and a victim has opened the link may have been compromised.
However, no evidence of exploitation has been found.
Scalingo DBaaS addons
Database addons credentials could be leaked by a successful exploitation of the vulnerability, but again, no evidence of actual exploitation.
Other Scalingo addons and services
No impact
Contact
If you have any questions or require further assistance, please contact our support team. We remain committed to ensuring the security of our platform and the protection of our users’ data.
Changelog
2024-08-05 First version 2024-08-20 Release