canto-saas-api: OAuth credentials exposed in URL query string and exception messages
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| jleehr | canto-saas-api | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Jleehr | Canto-saas-api |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-37pm-83g7-r22v | canto-saas-api: OAuth credentials exposed in URL query string and exception messages |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.383% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Jleehr
Jleehr canto-saas-api |
|
| Vendors & Products |
Jleehr
Jleehr canto-saas-api |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | canto-saas-api is a PHP library for interacting with the Canto SaaS API. Prior to version 3.0.0, OAuth2Request::getQueryParams() places app_id, app_secret, refresh_token, and code in the URL query string of token POST requests, allowing access logs, proxy logs, and APM traces to persist the credentials in plaintext. When a token request fails, OAuth2::obtainAccessToken() also passes the credential-bearing Guzzle request URI into AuthorizationFailedException, so application logs and error trackers can record the same secrets. An attacker with access to affected telemetry can obtain Canto credentials and use them to request access tokens for the tenant. This issue is fixed in version 3.0.0. | |
| Title | canto-saas-api: OAuth credentials exposed in URL query string and exception messages | |
| Weaknesses | CWE-209 CWE-598 |
|
| References |
| |
| Metrics |
cvssV3_1
|