CodeIgniter4 allows spoofing of IP address when using proxy
The advisory, in context
Impact
This vulnerability may allow attackers to spoof their IP address when your server is behind a reverse proxy.
Patches
Upgrade to v4.2.11 or later, and configure Config\App::$proxyIPs.
Workarounds
Do not use $request->getIPAddress().
References
For more information
If you have any questions or comments about this advisory:
- Open an issue in codeigniter4/CodeIgniter4
- Email us at SECURITY.md
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
Earlier releases before 4.2.11
Fixed in 4.2.11
39 explicitly affected versions
4.0.0, 4.0.0-rc.4, v4.0.0-alpha.3, v4.0.0-alpha.4, v4.0.0-alpha.5, v4.0.0-beta.1, v4.0.0-beta.2, v4.0.0-beta.3, v4.0.0-beta.4, v4.0.0-rc.1, v4.0.0-rc.2, v4.0.0-rc.2.1, v4.0.0-rc.3, v4.0.1, v4.0.2, v4.0.3, v4.0.4, v4.0.5, v4.1.0, v4.1.1, v4.1.2, v4.1.3, v4.1.4, v4.1.5, v4.1.6, v4.1.7, v4.1.8, v4.1.9, v4.2.0, v4.2.1, v4.2.10, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.2.7, v4.2.8, v4.2.9
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "4.2.11"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.0.0",
"4.0.0-rc.4",
"v4.0.0-alpha.3",
"v4.0.0-alpha.4",
"v4.0.0-alpha.5",
"v4.0.0-beta.1",
"v4.0.0-beta.2",
"v4.0.0-beta.3",
"v4.0.0-beta.4",
"v4.0.0-rc.1",
"v4.0.0-rc.2",
"v4.0.0-rc.2.1",
"v4.0.0-rc.3",
"v4.0.1",
"v4.0.2",
"v4.0.3",
"v4.0.4",
"v4.0.5",
"v4.1.0",
"v4.1.1",
"v4.1.2",
"v4.1.3",
"v4.1.4",
"v4.1.5",
"v4.1.6",
"v4.1.7",
"v4.1.8",
"v4.1.9",
"v4.2.0",
"v4.2.1",
"v4.2.10",
"v4.2.2",
"v4.2.3",
"v4.2.4",
"v4.2.5",
"v4.2.6",
"v4.2.7",
"v4.2.8",
"v4.2.9"
]
}References
- https://github.com/codeigniter4/CodeIgniter4/security/advisories/GHSA-ghw3-5qvm-3mqc
- https://nvd.nist.gov/vuln/detail/CVE-2022-23556
- https://github.com/codeigniter4/CodeIgniter4/commit/5ca8c99b2db09a2a08a013836628028ddc984659
- https://codeigniter4.github.io/userguide/incoming/request.html#CodeIgniter\HTTP\Request::getIPAddress
- https://github.com/FriendsOfPHP/security-advisories/blob/master/codeigniter4/framework/CVE-2022-23556.yaml
- https://github.com/codeigniter4/CodeIgniter4