{ "CVE_data_meta": { "ASSIGNER": "security@apache.org", "ID": "CVE-2021-43557", "STATE": "PUBLIC", "TITLE": "Path traversal in request_uri variable" }, "affects": { "vendor": { "vendor_data": [ { "product": { "product_data": [ { "product_name": "Apache APISIX", "version": { "version_data": [ { "version_affected": ">=", "version_name": "Apache APISIX 1.5", "version_value": "1.5" } ] } } ] }, "vendor_name": "Apache Software Foundation" } ] } }, "data_format": "MITRE", "data_type": "CVE", "data_version": "4.0", "description": { "description_data": [ { "lang": "eng", "value": "The uri-block plugin in Apache APISIX before 2.10.2 uses $request_uri without verification. The $request_uri is the full original request URI without normalization. This makes it possible to construct a URI to bypass the block list on some occasions. For instance, when the block list contains \"^/internal/\", a URI like `//internal/` can be used to bypass it. Some other plugins also have the same issue. And it may affect the developer's custom plugin." } ] }, "generator": { "engine": "Vulnogram 0.0.9" }, "impact": [ { "other": "moderate" } ], "problemtype": { "problemtype_data": [ { "description": [ { "lang": "eng", "value": "Use Nginx's $request_uri variable without verification" } ] } ] }, "references": { "reference_data": [ { "refsource": "MISC", "url": "https://lists.apache.org/thread/18jyd458ptocr31rnkjs71w4h366mv7h", "name": "https://lists.apache.org/thread/18jyd458ptocr31rnkjs71w4h366mv7h" }, { "refsource": "MLIST", "name": "[oss-security] 20211122 CVE-2021-43557: Apache APISIX: Path traversal in request_uri variable", "url": "http://www.openwall.com/lists/oss-security/2021/11/22/1" }, { "refsource": "MLIST", "name": "[oss-security] 20211122 Re: CVE-2021-43557: Apache APISIX: Path traversal in request_uri variable", "url": "http://www.openwall.com/lists/oss-security/2021/11/22/2" }, { "refsource": "MLIST", "name": "[oss-security] 20211123 Re: CVE-2021-43557: Apache APISIX: Path traversal in request_uri variable", "url": "http://www.openwall.com/lists/oss-security/2021/11/23/1" } ] }, "source": { "discovery": "UNKNOWN" }, "work_around": [ { "lang": "eng", "value": "1. Upgrade to APISIX 2.10.2, or apply this commit which provides a normalized $request_uri: https://github.com/apache/apisix/commit/9fc38330e82ce46e2aaabceef7d61708c91782db\n2. Carefully review custom code, find & fix the usage of $request_uri without verification." } ] }