CodeIgniter Shield is an authentication and authorization provider for CodeIgniter 4. The secretKey
value is an important key for HMAC SHA256 authentication and in affected versions was stored in the database in cleartext form. If a malicious person somehow had access to the data in the database, they could use the key and secretKey for HMAC SHA256 authentication to send requests impersonating that corresponding user. This issue has been addressed in version 1.0.0-beta.8. Users are advised to upgrade. There are no known workarounds for this vulnerability.
The product stores sensitive information in cleartext within a resource that might be accessible to another control sphere.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Shield | Codeigniter | 1.0.0-beta (including) | 1.0.0-beta (including) |
Shield | Codeigniter | 1.0.0-beta2 (including) | 1.0.0-beta2 (including) |
Shield | Codeigniter | 1.0.0-beta3 (including) | 1.0.0-beta3 (including) |
Shield | Codeigniter | 1.0.0-beta4 (including) | 1.0.0-beta4 (including) |
Shield | Codeigniter | 1.0.0-beta5 (including) | 1.0.0-beta5 (including) |
Shield | Codeigniter | 1.0.0-beta6 (including) | 1.0.0-beta6 (including) |
Shield | Codeigniter | 1.0.0-beta7 (including) | 1.0.0-beta7 (including) |
Because the information is stored in cleartext (i.e., unencrypted), attackers could potentially read it. Even if the information is encoded in a way that is not human-readable, certain techniques could determine which encoding is being used, then decode the information. When organizations adopt cloud services, it can be easier for attackers to access the data from anywhere on the Internet. In some systems/environments such as cloud, the use of “double encryption” (at both the software and hardware layer) might be required, and the developer might be solely responsible for both layers, instead of shared responsibility with the administrator of the broader system/environment.