{"id":"CVE-2026-41510","kind":"vulnerability","aliases":["CVE-2026-41510","GHSA-6r3q-mjv7-xr8m","GO-2026-6668"],"related":[],"title":"Coraza: Silent argument drop at ArgumentLimit allows bypass of ARGS-targeted rules via parameter flooding in github.com/corazawaf/coraza","description":"OWASP Coraza WAF is a golang modsecurity compatible web application firewall library. From 3.0.0 until 3.8.1, Coraza silently drops arguments after SecArgumentsLimit in internal/corazawaf/transaction.go, while internal/bodyprocessors/urlencoded.go writes ARGS_POST without enforcing the cap. The flaw is triggered when an unauthenticated attacker sends more arguments than SecArgumentsLimit or supplies bodies that expand beyond the configured argument and flattening budgets. An unauthenticated attacker can flood requests with arguments so excess values are silently omitted from ARGS, ARGS_GET, ARGS_NAMES, ARGS_GET_NAMES, ARGS_POST, or ARGS_PATH before security rules inspect them; affected urlencoded and JSON processing can also consume excessive memory. The omission can bypass WAF rules protecting the downstream application, and unbounded or amplified argument processing can cause memory consumption and service degradation. This issue is fixed in version 3.8.1.","summary":"Coraza, a Go web application firewall library, silently drops request arguments beyond SecArgumentsLimit, so ARGS-targeted rules never see them. An unauthenticated attacker can flood a request with arguments to hide a payload from WAF rules and also drive excess memory use and service degradation.","severity":"high","cvss":7.2,"epss":0.00496,"exploited":false,"exploited_at":null,"products":[{"name":"github.com/corazawaf/coraza","fixed":[],"affected":"all versions","ecosystem":"go"},{"name":"github.com/corazawaf/coraza/v2","fixed":[],"affected":"all versions","ecosystem":"go"},{"name":"github.com/corazawaf/coraza/v3","fixed":["3.8.1"],"affected":">= 3.0.0, < 3.8.1","ecosystem":"go"}],"ecosystems":["go"],"tags":["coraza","go","package","self-hosted","waf"],"not_affected_if":["not-using-coraza","version-3.8.1-or-later"],"how_to_check":"Check go.mod for github.com/corazawaf/coraza/v3 at a version >= 3.0.0 and < 3.8.1, e.g. go list -m github.com/corazawaf/coraza/v3\nThe sources do not give a command for checking whether the app is exposed to parameter flooding.","fix":"Upgrade github.com/corazawaf/coraza/v3 to 3.8.1 or later.\nThe sources do not say whether the bypass has a configuration-only workaround.","status":"open","published_at":"2026-10-12T20:17:09+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","triaged_at":"2026-10-23T19:56:21+00:00","updated_at":"2026-10-23T19:56:21+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-23T19:56:21Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade github.com/corazawaf/coraza/v3 to 3.8.1 or later.\nThe sources do not say whether the bypass has a configuration-only workaround.","summary":"Coraza, a Go web application firewall library, silently drops request arguments beyond SecArgumentsLimit, so ARGS-targeted rules never see them. An unauthenticated attacker can flood a request with arguments to hide a payload from WAF rules and also drive excess memory use and service degradation.","category":"package","who_cares":["go","coraza","waf","self-hosted"],"confidence":0.8,"analyst_note":"Sources list the go:github.com/corazawaf/coraza and /v2 modules as affected with fixed '?'; confirm whether those unversioned/v2 paths are vulnerable and whether any workaround exists (see GHSA-6r3q-mjv7-xr8m, GO-2026-6668).","how_to_check":"Check go.mod for github.com/corazawaf/coraza/v3 at a version >= 3.0.0 and < 3.8.1, e.g. go list -m github.com/corazawaf/coraza/v3\nThe sources do not give a command for checking whether the app is exposed to parameter flooding.","needs_analyst":true,"not_affected_if":["not-using-coraza","version-3.8.1-or-later"],"severity_if_unknown":"high"},"cost_usd":0.000488,"input_tokens":2499,"output_tokens":476,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':22A,30A,33A '-41510':23A,34A '-6668':31A '/corazawaf/coraza':20A,37A '/corazawaf/coraza/v2':40A '/corazawaf/coraza/v3':43A '3.0.0':110C '3.8.1':112C,227C '6r3q':26A 'affect':188C 'allow':7A 'also':89B,194C 'amplifi':211C 'applic':55B,106C,207C 'arg':11A,66B,124C,170C,171C,173C,175C,178C,181C 'args-target':10A,65B 'argument':3A,61B,80B,116C,140C,151C,162C,212C 'argumentlimit':6A 'attack':74B,137C,157C 'beyond':62B,148C 'bodi':145C 'budget':154C 'bypass':8A,201C 'cap':129C 'caus':215C 'compat':104C 'configur':150C 'consum':195C 'consumpt':217C 'coraza':1A,44B,51B,98C,113C 'cve':21A,32A 'degrad':96B,220C 'downstream':206C 'drive':90B 'drop':4A,59B,115C 'enforc':127C 'excess':91B,164C,196C 'expand':147C 'firewal':56B,107C 'fix':224C 'flatten':153C 'flaw':131C 'flood':16A,76B,159C 'get':172C,176C 'ghsa':25A 'ghsa-6r3q-mjv7-xr8m':24A 'github.com':19A,36A,39A,42A 'github.com/corazawaf/coraza':18A,35A 'github.com/corazawaf/coraza/v2':38A 'github.com/corazawaf/coraza/v3':41A 'go':29A,45B,53B 'golang':102C 'hide':82B 'host':49B 'inspect':186C 'internal/bodyprocessors/urlencoded.go':122C 'internal/corazawaf/transaction.go':120C 'issu':222C 'json':191C 'librari':57B,108C 'memori':92B,197C,216C 'mjv7':27A 'modsecur':103C 'name':174C,177C 'never':69B 'omiss':199C 'omit':168C 'owasp':97C 'packag':46B 'paramet':15A 'path':182C 'payload':84B 'post':125C,179C 'process':192C,213C 'protect':204C 'request':60B,78B,160C 'rule':13A,68B,87B,185C,203C 'secargumentslimit':63B,118C,142C 'secur':184C 'see':70B 'self':48B 'self-host':47B 'send':138C 'servic':95B,219C 'silent':2A,58B,114C,167C 'suppli':144C 'target':12A,67B 'trigger':133C 'unauthent':73B,136C,156C 'unbound':209C 'urlencod':189C 'use':93B 'valu':165C 'version':226C 'via':14A 'waf':50B,86B,99C,202C 'web':54B,105C 'without':126C 'write':123C 'xr8m':28A","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-12T20:17:09+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"govuln","external_id":"GO-2026-6668","url":"https://pkg.go.dev/vuln/GO-2026-6668","severity":null,"published_at":"2026-10-20T00:20:51+00:00","modified_at":"2026-10-20T00:20:51+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","fetched_at":"2026-10-23T19:13:08+00:00","note":null},{"source":"epss","external_id":"CVE-2026-41510","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-41510","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-23T19:13:43+00:00","fetched_at":"2026-10-23T19:13:43+00:00","note":null},{"source":"nvd","external_id":"CVE-2026-41510","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-41510","severity":null,"published_at":"2026-10-12T20:17:09+00:00","modified_at":"2026-10-16T16:00:33+00:00","first_seen_at":"2026-10-23T19:35:23+00:00","fetched_at":"2026-10-23T19:35:23+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}