GitHub Advisoryadvisory · Packagist
GHSA-w8vh-p74j-x9xp yii2-authclient vulnerable to possible timing attack on string comparison in OAuth1, OAuth2 and OpenID Connect implementation
LOW
Official page ↗
- Aliases
- CVE-2023-50708
- Ecosystem
- Packagist
- Packages
- yiisoft/yii2-authclient
- Severity
- Low
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:N/A:N
- Weaknesses
- CWE-203
- Reviewed
- 2023-12-18
Affected packages
• Packagist yiisoft/yii2-authclient: < 2.2.15 → fixed in 2.2.15
Description
Impact
_What kind of vulnerability is it? Who is impacted?_
Original Report:
> The Oauth1/2 "state" and OpenID Connect "nonce" is vulnerable for a "timing attack" since it's compared via regular string
> comparison (instead of `Yii::$app->getSecurity()->compareString()`).
Affected Code:
1. OAuth 1 "state"
https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OAuth1.php#L158
3. OAuth 2 "state"
https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OAuth2.php#L121
4. OpenID Connect "nonce"
https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OpenIdConnect.php#L420
Patches
_Has the problem been patched? What versions should users upgrade to?_
TBD: Replace strcmp with `Yii::$app->getSecurity()->compareString()`).
Workarounds
_Is there a way for users to fix or remediate the vulnerability without upgrading?_
not as far as I see.
References
_Are there any links users can visit to find out more?_
Related
Alias · CVE (1)
- CVE-2023-50708 yii2-authclient is an extension that adds OpenID, OAuth, OAuth2 and OpenId Connect consumers for the Yii framework 2.0. vulnerability
Weakness · CWE (1)
- CWE-203 Observable Discrepancy weakness
References
- https://github.com/yiisoft/yii2-authclient/security/advisories/GHSA-w8vh-p74j-x9xp web
- https://nvd.nist.gov/vuln/detail/CVE-2023-50708 advisory
- https://github.com/yiisoft/yii2-authclient/commit/dabddf2154ab7e7703740205a069202554089248 web
- https://github.com/yiisoft/yii2-authclient package
- https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OAuth1.php#L158 web
- https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OAuth2.php#L121 web
- https://github.com/yiisoft/yii2-authclient/blob/0d1c3880f4d79e20aa1d77c012650b54e69695ff/src/OpenIdConnect.php#L420 web