CyberSecBulletin
CVE-2022-46170NVD status: Modified

CodeIgniter4: Improper Authentication

CVE-2022-46170 is a critical-severity improper authentication vulnerability in CodeIgniter4, with a CVSS 3.1 base score of 9.8 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. Affected CodeIgniter4 versions: < 4.2.11. The record does not name a fixed version, so check the vendor advisory. There is no confirmed exploitation so far. EPSS estimates a 0.91% chance of exploitation within 30 days, higher than 61% of scored CVEs.

Patch this week

Critical severity: a successful attack would have severe impact.

What to do

  1. Update Codeigniter to 4.2.11 or a later version.
  2. Read the advisory on github.com for workarounds and exact fixed builds.
  3. Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.

Affected products and versions

VendorProductAffected versionsFixed in
Codeigniter4CodeIgniter4< 4.2.11Not stated
CodeigniterCodeigniter4.0.0 up to, but not including, 4.2.114.2.11

Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.

How the severity score breaks down

Attack vector
NetworkCan be exploited remotely over a network, including the internet.
Attack complexity
LowNo special conditions are needed; the attack works reliably.
Privileges required
NoneNo account or login is needed.
User interaction
NoneNo action by a victim is required.
Scope
UnchangedImpact stays within the vulnerable component.
Confidentiality
HighAll data handled by the component can be read.
Integrity
HighData or code can be modified at will.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Scored by NVD.

Scoring systemScoreSeverityScored by
CVSS 3.18.6HighCNA (github.com)
CVSS 3.19.8CriticalNVD

Official description

CodeIgniter is a PHP full-stack web framework. When an application uses (1) multiple session cookies (e.g., one for user pages and one for admin pages) and (2) a session handler is set to `DatabaseHandler`, `MemcachedHandler`, or `RedisHandler`, then if an attacker gets one session cookie (e.g., one for user pages), they may be able to access pages that require another session cookie (e.g., for admin pages). This issue has been patched, please upgrade to version 4.2.11 or later. As a workaround, use only one session cookie.

Source: the CVE record as published by its numbering authority, via NVD and CVE.org.

The underlying weakness: Improper Authentication

When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.

How developers prevent this class of flaw

  • Use an authentication framework or library such as the OWASP ESAPI Authentication feature.

More Improper Authentication vulnerabilities (CWE-287)

Timeline

  1. CVE record published.
  2. CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: partial).
  3. Record last changed materially (score, affected products, status or references).

References

Other vulnerabilities in CodeIgniter4

All CodeIgniter4 vulnerabilities

Recent Improper Authentication vulnerabilities

Spotted an error? Tell us.