Insertion of Sensitive Information into Log
The advisory, in context
Impact
If successful login attempts are recorded, the raw tokens are stored in the log table. If a malicious person somehow views the data in the log table, he or she can obtain a raw token, which can then be used to send a request with that user's authority.
When you (1) use the following authentiactors,
- AccessTokens (
tokens) - JWT (
jwt) - HmacSha256 (
hmac)
and you (2) log successful login attempts, the raw tokens are stored.
Patches
Upgrade to Shield v1.0.0-beta.8 or later.
Workarounds
Disable logging for successful login attempts by the configuration files.
- AccessTokens or HmacSha256
- Set
Config\AuthToken::$recordLoginAttempttoAuth::RECORD_LOGIN_ATTEMPT_FAILUREorAuth::RECORD_LOGIN_ATTEMPT_NONE
- Set
- JWT
- Set
Config\AuthJWT::$recordLoginAttempttoAuth::RECORD_LOGIN_ATTEMPT_FAILUREorAuth::RECORD_LOGIN_ATTEMPT_NONE
- Set
References
For more information
If you have any questions or comments about this advisory:
- Open an issue or discussion in codeigniter4/shield
- Email us at security@codeigniter.com
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
Earlier releases before 1.0.0-beta.8
Fixed in 1.0.0-beta.8
7 explicitly affected versions
v1.0.0-beta, v1.0.0-beta.2, v1.0.0-beta.3, v1.0.0-beta.4, v1.0.0-beta.5, v1.0.0-beta.6, v1.0.0-beta.7
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.0.0-beta.8"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"v1.0.0-beta",
"v1.0.0-beta.2",
"v1.0.0-beta.3",
"v1.0.0-beta.4",
"v1.0.0-beta.5",
"v1.0.0-beta.6",
"v1.0.0-beta.7"
]
}References
- https://github.com/codeigniter4/shield/security/advisories/GHSA-j72f-h752-mx4w
- https://nvd.nist.gov/vuln/detail/CVE-2023-48708
- https://github.com/codeigniter4/shield/commit/7e84c3fb3411294f70890819bfe51781bb9dc8e4
- https://codeigniter4.github.io/shield/getting_started/authenticators
- https://github.com/codeigniter4/shield