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.
Workaround:
This attack-focused weakness is caused by incorrectly implemented authentication schemes that are subject to spoofing attacks.
Link | Tags |
---|---|
https://lists.apache.org/thread/lcdqywz8zy94mdysk7p3gfdgn51jmt94 | mailing list vendor advisory mitigation |
http://www.openwall.com/lists/oss-security/2022/02/11/3 | mailing list third party advisory mitigation |
http://packetstormsecurity.com/files/166228/Apache-APISIX-Remote-Code-Execution.html | exploit vdb entry third party advisory |
http://packetstormsecurity.com/files/166328/Apache-APISIX-2.12.1-Remote-Code-Execution.html | exploit vdb entry third party advisory |