GHSA-w8vh-p74j-x9xp
yii2-authclient vulnerable to possible timing attack on string comparison in OAuth1, OAuth2 and OpenID Connect implementation
Quick fix
GHSA-w8vh-p74j-x9xp — yiisoft/yii2-authclient: upgrade to the fixed version with the command below.
composer require yiisoft/yii2-authclient:^2.2.15Details
### 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?_
Are you affected?
Enter the version of the package you're using.
Affected packages
0Fixed in: 2.2.15composer require yiisoft/yii2-authclient:^2.2.15References
- 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]