GHSA-crr3-h4m8-7f56 json
silverstripe/framework vulnerable to member disclosure in login form
published 2y ago modified last yr.
- cvss
- 5.3
- version 3.1, GitHub
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
There is a user ID enumeration vulnerability in our brute force error messages.
- Users that don't exist in will never get a locked out message - Users that do exist, will get a locked out message
This means an attacker can infer or confirm user details that exist in the member table.
This issue has been resolved by ensuring that login attempt logging and lockout process works equivalently for non-existent users as it does for existant users.
This is a regression of [SS-2017-002](https://www.silverstripe.org/download/security-releases/ss-2017-002).
Patch / fix
- packagist silverstripe/framework 4.0.4, 4.1.1
Is GHSA-crr3-h4m8-7f56 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| GitHub | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| packagist | silverstripe/framework | >=4.0.0-rc1, <4.0.4 >=4.1.0-rc1, <4.1.1 |
4.0.4 4.1.1 |
Classification
- Weakness
-
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
References
-
github.com
/silverstripe/silverstripe-framework/commit/5887201dd578a5b9779c33a182153d2ce973ab41
web
-
github.com
/FriendsOfPHP/security-advisories/blob/master/silverstripe/framework/SS-2018-010-1.yaml
web
-
github.com
/silverstripe/silverstripe-framework
package
-
silverstripe.org
/download/security-releases/ss-2018-010
web
Sources
- GitHub Advisory GHSA-crr3-h4m8-7f56
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.