{"id":"CVE-2022-24112","state":"PUBLISHED","title":"apisix/batch-requests plugin allows overwriting the X-REAL-IP header","description":"An attacker can abuse the batch-requests plugin to send requests to bypass the IP restriction of Admin API. A default configuration of Apache APISIX (with default API key) is vulnerable to remote code execution. When the admin key was changed or the port of Admin API was changed to a port different from the data panel, the impact is lower. But there is still a risk to bypass the IP restriction of Apache APISIX's data panel. There is a check in the batch-requests plugin which overrides the client IP with its real remote IP. But due to a bug in the code, this check can be bypassed.","publishedAt":"2022-02-11T12:20:13.000Z","updatedAt":"2025-10-21T23:15:46.674Z","severity":{"score":9.8,"label":"Critical","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"CISA-ADP"},"assigner":"apache","products":["Apache Software Foundation Apache APISIX"],"affected":[{"vendor":"Apache Software Foundation","product":"Apache APISIX","versions":[{"version":"Apache APISIX 2.12","status":"affected","lessThan":"2.12.1","versionType":"custom"},{"version":"Apache APISIX 2.10","status":"affected","lessThan":"2.10.4","versionType":"custom"},{"version":"1.3","status":"affected","lessThan":"Apache APISIX 1*","versionType":"custom"}]}],"references":["https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94","http://www.openwall.com/lists/oss-security/2022/02/11/3","http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html","http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html","https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-24112"],"weaknesses":["CWE-290"],"ingestedAt":"2026-10-29T19:49:43.915Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2022/24xxx/CVE-2022-24112.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.1","cveMetadata":{"cveId":"CVE-2022-24112","state":"PUBLISHED","datePublished":"2022-02-11T12:20:13.000Z","dateUpdated":"2025-10-21T23:15:46.674Z","assignerShortName":"apache","assignerOrgId":"f0158376-9dc2-43b6-827c-5f631a4d8d09","dateReserved":"2022-01-28T00:00:00.000Z"},"containers":{"cna":{"title":"apisix/batch-requests plugin allows overwriting the X-REAL-IP header","descriptions":[{"lang":"en","value":"An attacker can abuse the batch-requests plugin to send requests to bypass the IP restriction of Admin API. A default configuration of Apache APISIX (with default API key) is vulnerable to remote code execution. When the admin key was changed or the port of Admin API was changed to a port different from the data panel, the impact is lower. But there is still a risk to bypass the IP restriction of Apache APISIX's data panel. There is a check in the batch-requests plugin which overrides the client IP with its real remote IP. But due to a bug in the code, this check can be bypassed."}],"affected":[{"vendor":"Apache Software Foundation","product":"Apache APISIX","versions":[{"version":"Apache APISIX 2.12","status":"affected","lessThan":"2.12.1","versionType":"custom"},{"version":"Apache APISIX 2.10","status":"affected","lessThan":"2.10.4","versionType":"custom"},{"version":"1.3","status":"affected","lessThan":"Apache APISIX 1*","versionType":"custom"}]}],"references":[{"url":"https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94","tags":["x_refsource_MISC"]},{"url":"http://www.openwall.com/lists/oss-security/2022/02/11/3","name":"[oss-security] 20220211 CVE-2022-24112: Apache APISIX: apisix/batch-requests plugin allows overwriting the X-REAL-IP header","tags":["mailing-list","x_refsource_MLIST"]},{"url":"http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html","tags":["x_refsource_MISC"]},{"url":"http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html","tags":["x_refsource_MISC"]}],"metrics":[{"other":{"content":{"other":"high"},"type":"unknown"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-290","description":"CWE-290 Authentication Bypass by Spoofing","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"apache","dateUpdated":"2022-03-16T18:06:16.000Z","orgId":"f0158376-9dc2-43b6-827c-5f631a4d8d09"},"credits":[{"lang":"en","value":"Original discovery by Real World CTF at Chaitin Tech. Reported by Sauercloud."}],"source":{"discovery":"UNKNOWN"},"workarounds":[{"lang":"en","value":"1. explicitly configure the enabled plugins in `conf/config.yaml`, ensure `batch-requests` is disabled. (Or just comment out `batch-requests` in `conf/config-default.yaml`)\nOr\n1. upgrade to 2.10.4 or 2.12.1."}],"x_generator":{"engine":"Vulnogram 0.0.9"},"x_legacyV4Record":{"CVE_data_meta":{"ASSIGNER":"security@apache.org","ID":"CVE-2022-24112","STATE":"PUBLIC","TITLE":"apisix/batch-requests plugin allows overwriting the X-REAL-IP header"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"Apache APISIX","version":{"version_data":[{"version_affected":"<","version_name":"Apache APISIX 2.12","version_value":"2.12.1"},{"version_affected":"<","version_name":"Apache APISIX 2.10","version_value":"2.10.4"},{"version_affected":">=","version_name":"Apache APISIX 1","version_value":"1.3"}]}}]},"vendor_name":"Apache Software Foundation"}]}},"credit":[{"lang":"eng","value":"Original discovery by Real World CTF at Chaitin Tech. Reported by Sauercloud."}],"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"An attacker can abuse the batch-requests plugin to send requests to bypass the IP restriction of Admin API. A default configuration of Apache APISIX (with default API key) is vulnerable to remote code execution. When the admin key was changed or the port of Admin API was changed to a port different from the data panel, the impact is lower. But there is still a risk to bypass the IP restriction of Apache APISIX's data panel. There is a check in the batch-requests plugin which overrides the client IP with its real remote IP. But due to a bug in the code, this check can be bypassed."}]},"generator":{"engine":"Vulnogram 0.0.9"},"impact":[{"other":"high"}],"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"CWE-290 Authentication Bypass by Spoofing"}]}]},"references":{"reference_data":[{"name":"https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94","refsource":"MISC","url":"https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94"},{"name":"[oss-security] 20220211 CVE-2022-24112: Apache APISIX: apisix/batch-requests plugin allows overwriting the X-REAL-IP header","refsource":"MLIST","url":"http://www.openwall.com/lists/oss-security/2022/02/11/3"},{"name":"http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html","refsource":"MISC","url":"http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html"},{"name":"http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html","refsource":"MISC","url":"http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html"}]},"source":{"discovery":"UNKNOWN"},"work_around":[{"lang":"en","value":"1. explicitly configure the enabled plugins in `conf/config.yaml`, ensure `batch-requests` is disabled. (Or just comment out `batch-requests` in `conf/config-default.yaml`)\nOr\n1. upgrade to 2.10.4 or 2.12.1."}]}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94","tags":["x_refsource_MISC","x_transferred"]},{"url":"http://www.openwall.com/lists/oss-security/2022/02/11/3","name":"[oss-security] 20220211 CVE-2022-24112: Apache APISIX: apisix/batch-requests plugin allows overwriting the X-REAL-IP header","tags":["mailing-list","x_refsource_MLIST","x_transferred"]},{"url":"http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html","tags":["x_refsource_MISC","x_transferred"]},{"url":"http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html","tags":["x_refsource_MISC","x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-03T03:59:23.660Z"}},{"title":"CISA ADP Vulnrichment","references":[{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-24112","tags":["government-resource"]}],"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":9.8,"attackVector":"NETWORK","baseSeverity":"CRITICAL","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","integrityImpact":"HIGH","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"NONE","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"id":"CVE-2022-24112","role":"CISA Coordinator","options":[{"Exploitation":"active"},{"Automatable":"yes"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2025-01-29T21:21:39.557669Z"}}},{"other":{"type":"kev","content":{"dateAdded":"2022-08-25","reference":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-24112"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2025-10-21T23:15:46.674Z"},"timeline":[{"time":"2022-08-25T00:00:00.000Z","lang":"en","value":"CVE-2022-24112 added to CISA KEV"}]}]}}}