{"id":"CVE-2026-108981","published":"2026-10-12T03:17:18.503","lastModified":"2026-10-16T19:56:15.773","description":"ngx_cache_purge before 3.0.4 can allow file deletion via a symlink attack in certain situations where nginx and a served application (e.g., WordPress) run under the same user account. The attacker must be able to create a symlink inside the cache path. Version 3.0.4 fixes this for the case of a symlink created at an arbitrary earlier time, but does not resolve an applicable TOCTOU race condition. (The ngx_cache_purge module follows symlinks while walking the cache directory tree during purge operations. The module relies on nginx's ngx_walk_tree(), which relies on stat() and therefore follows symlinks.)","cvssScore":3.6,"cvssSeverity":"LOW","cvssVector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:L","cwes":["CWE-61"],"vendors":[],"products":[],"references":[{"url":"https://github.com/nginx-modules/ngx_cache_purge/commit/a6da1352f52a8a02dd6828e88c39ed42fddcee96","tags":[]},{"url":"https://github.com/nginx-modules/ngx_cache_purge/pull/72","tags":[]},{"url":"https://github.com/nginx-modules/ngx_cache_purge/releases/tag/3.0.4","tags":[]}],"exploitRefs":[{"url":"https://github.com/nginx-modules/ngx_cache_purge/commit/a6da1352f52a8a02dd6828e88c39ed42fddcee96","tags":[]},{"url":"https://github.com/nginx-modules/ngx_cache_purge/pull/72","tags":[]},{"url":"https://github.com/nginx-modules/ngx_cache_purge/releases/tag/3.0.4","tags":[]}],"hasPoc":true,"ai":null}