CVE-2023-40586
highpriority · track · 30EPSS 0.007 · 54 %ileEUUSEPSS · scored 2026-10-27
OWASP Coraza WAF is a golang modsecurity compatible web application firewall library. Due to the misuse of `log.Fatalf`, the application using coraza crashed after receiving crafted requests from attackers. The application will immediately crash after receiving a malicious request that triggers an error in `mime.ParseMediaType`. This issue was patched in version 3.0.1.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · medium–high · 6.9–7.5
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (6)
Products and version ranges known to be affected.
advisories (2)
Vendor and ecosystem advisories describing this.
- GHSA-c2pj-v37r-2p6hCoraza has potential denial of service vulnerability2023-06-26ghsa · osvUS
### Summary Due to the misuse of `log.Fatalf`, the application using coraza crashed after receiving crafted requests from attackers. ### Details https://github.com/corazawaf/coraza/blob/82157f85f24c6107667bf0f686b71a72aafdf8a5/internal/bodyprocessors/multipart.go#L26-L29 The bodyprocessors of multipart uses `log.Fatalf` to handle errors from the `mime.ParseMediaType`, but `log.Fatalf` calls `os.Exit` directly after logging the error. https://github.com/golang/go/blob/a031f4ef83edc132d5f49382bfef491161de2476/src/log/log.go#L288-L291 This means that the application will immediately crash after receiving a malicious request that triggers an error in `mime.ParseMediaType`. ### PoC The server can be demonstrated by https://github.com/corazawaf/coraza/tree/main/examples/http-server After sending this request ``` POST / HTTP/1.1 Host: 127.0.0.1:8090 User-Agent: curl/8.1.2 Accept: */* Content-Length: 199 Content-Type: multipart/form-data; boundary=------------------------5fa6351b877326a1; a=1; a=2 Connection: close --------------------------5fa6351b877326a1 Content-Disposition: form-data; name="file"; filename="123" Content-Type: application/octet-stream 123 --------------------------5fa6351b877326a1-- ``` The server will crash immediately. The `a=1; a=2` in `Content-Type` makes `mime: duplicate parameter name` error. ### Impact I believe the vulnerability was introduced by the following commit: https://github.com/corazawaf/coraza/commit/24af0c8cf4f10bab558740b595712be3b85493ec. ### Mitigation The error from `mime.ParseMediaType` should return directly.
- GO-2023-1874Denial of service in github.com/corazawaf/coraza/v2 and v32023-07-05vendor · osvUS
Due to the misuse of log.Fatalf, Coraza may crash after receiving crafted requests from attackers.
also known as (5)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (7)
External citations — patches, advisories, analysis.
- https://cxsecurity.com/cveshow/CVE-2023-40586/cnnvd
- https://github.com/corazawaf/coraza/commit/a5239ba3ce839e14d9b4f9486e1b4a403dcade8ccnnvd
- https://github.com/corazawaf/coraza/security/advisories/GHSA-c2pj-v37r-2p6hcnnvd
- https://github.com/corazawaf/coraza/commit/a5239ba3ce839e14d9b4f9486e1b4a403dcade8cenisa_euvd
- https://github.com/corazawaf/coraza/security/advisories/GHSA-c2pj-v37r-2p6henisa_euvd
- https://github.com/corazawaf/coraza/commit/a5239ba3ce839e14d9b4f9486e1b4a403dcade8cPatchnvd
- https://github.com/corazawaf/coraza/security/advisories/GHSA-c2pj-v37r-2p6hMitigationVendor Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan