Vulnerability · Published Aug 12, 2022 · Assigned by GitHub_M
CVE-2022-35943SameSite may allow cross-site request forgery (CSRF) protection to be bypassed
Medium 5.9
In plain English
A medium-severity cross-site request forgery in shield from codeigniter4. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 49% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
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)
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Packagist | codeigniter4/shield | 1.0.0-beta.2 | GHSA-5hm8-vh6r-2cjq |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| codeigniter4 | shield | > 4.3.2, > v1.0.0-beta.2 |
Weakness: CWE-352 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:L
References
- https://github.com/codeigniter4/shield/security/advisories/GHSA-5hm8-vh6r-2cjq x_refsource_CONFIRM
- https://codeigniter4.github.io/userguide/libraries/security.htm x_refsource_MISC
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite x_refsource_MISC
- https://jub0bs.com/posts/2021-01-29-great-samesite-confusion x_refsource_MISC