CVE-2022-25757: Apache APISIX: the body_schema check in request-validation plugin can be bypassed

Published Mar 28, 2022
·
Updated

In Apache APISIX before 2.13.0, when decoding JSON with duplicate keys, lua-cjson will choose the last occurred value as the result. By passing a JSON with a duplicate key, the attacker can bypass the bodyschema validation in the request-validation plugin. For example, {"stringpayload":"bad","stringpayload":"good"} can be used to hide the "bad" input. Systems satisfy three conditions below are affected by this attack: 1. use bodyschema validation in the request-validation plugin 2. upstream application uses a special JSON library that chooses the first occurred value, like jsoniter or gojay 3. upstream application does not validate the input anymore. The fix in APISIX is to re-encode the validated JSON input back into the request body at the side of APISIX. Improper Input Validation vulnerability in COMPONENT of Apache APISIX allows an attacker to IMPACT. This issue affects Apache APISIX Apache APISIX version 2.12.1 and prior versions.

Affected Software

1 affected component
Apache APISIX<2.13.0

Event History

Mar 28, 2022
CVE Published
via MITRE·07:00 AM
Data Sourced
via MITRE·07:00 AM
DescriptionWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is CVE-2022-25757?

CVE-2022-25757 is a vulnerability in Apache APISIX before version 2.13.0 that allows an attacker to bypass the body_schema validation in the request-validation plugin.

2

What is the severity of CVE-2022-25757?

CVE-2022-25757 has a severity rating of 9.8, which is considered critical.

3

How is Apache APISIX before version 2.13.0 affected by CVE-2022-25757?

Apache APISIX before version 2.13.0 is affected by CVE-2022-25757, allowing an attacker to bypass the body_schema validation in the request-validation plugin.

4

How can an attacker exploit CVE-2022-25757?

An attacker can exploit CVE-2022-25757 by passing a JSON with duplicate keys, which lua-cjson will choose the last occurred value as the result, bypassing the body_schema validation.

5

Is there a fix for CVE-2022-25757?

Yes, upgrading to Apache APISIX version 2.13.0 or later will fix CVE-2022-25757.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203