CVE-2022-35943 SameSite may allow cross-site request forgery (CSRF) protection to be bypassed
Attackers with subdomain control can bypass CSRF protection in CodeIgniter Shield, potentially allowing unauthorized actions on behalf of authenticated users.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2022-35943?
CVE-2022-35943 is a medium-severity vulnerability in codeigniter4 shield, published on 12 Aug 2022. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
Shield is an authentication and authorization framework for CodeIgniter 4. This vulnerability may allow [SameSite Attackers](https://canitakeyoursubdomain.name/) to bypass the [CodeIgniter4 CSRF protection](https://codeigniter4.github.io/userguide/libraries/security.html) mechanism with CodeIgniter Shield. For this attack to succeed, the attacker must have direct (or indirect, e.g., XSS) control over a subdomain site (e.g., `https://a.example.com/`) of the target site (e.g., `http://example.com/`). Upgrade to **CodeIgniter v4.2.3 or later** and **Shield v1.0.0-beta.2 or later**. As a workaround: set `Config\Security::$csrfProtection` to `'session,'`remove old session data right after login (immediately after ID and password match) and regenerate CSRF token right after login (immediately after ID and password match)
Weakness: CWE-352
Which versions are affected by CVE-2022-35943?
3 open source packages ship an affected version, including codeigniter4/shield and codeigniter. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
codeigniter4/shield Packagist | From 1.0.0-beta | 1.0.0-beta.2 |
codeigniter4/shield Packagist | From 1.0.0-beta | 1.0.0-beta.2 |
codeigniter Bitnami | All versions | 4.2.3 |
Products include Codeigniter Codeigniter, Codeigniter Shield.
How do I fix CVE-2022-35943?
Upgrade codeigniter4/shield to 1.0.0-beta.2 or later.
Is CVE-2022-35943 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-35943 exists.
Other vulnerabilities in codeigniter4 shield
Sources
Also known as BIT-codeigniter-2022-35943, GHSA-5hm8-vh6r-2cjq.