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.
CVSS breakdown
CVSS 3.1
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Affected products
- Apache Software Foundation / Apache APISIXApache APISIX 2.12 β 2.12.1
- Apache Software Foundation / Apache APISIXApache APISIX 2.10 β 2.10.4
- Apache Software Foundation / Apache APISIX1.3 β Apache APISIX 1*
Exploits & PoCs
- nucleiApache APISIX - Remote Code Executionby Mr-xn
References
- MAILING_LISThttps://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94
- MAILING_LISThttp://www.openwall.com/lists/oss-security/2022/02/11/3
- EXPLOIThttp://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html
- EXPLOIThttp://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html