GHSA-mgc4-wqv7-4pxm json
SwiftNIO vulnerable to HTTP request smuggling using malformed Transfer-Encoding header
published 3y ago modified 3y ago
- cvss
- 9.8
- version 3.1, GitHub
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
### Impact
Affected SwiftNIO systems are vulnerable to request smuggling attacks, in which they parse a given HTTP message differently from other network parties, potentially seeing a different number of requests than other servers. This can lead to failures of authentication, routing, and other issues.
This vulnerability can be found in the bundled copy of the Node.JS HTTP parser used in the `NIOHTTP1` module.
### Workarounds
No workaround is available, users must upgrade.
### References
https://nodejs.org/en/blog/vulnerability/february-2020-security-releases/#http-request-smuggling-using-malformed-transfer-encoding-header-critical-cve-2019-15605
Patch / fix
- swift github.com/apple/swift-nio 1.14.2, 2.13.1
- github.com/apple/swift-nio@8da5c5a commit
- github.com/apple/swift-nio@bfde40c commit
- github.com/apple/swift-nio@df93900 commit
- github.com/apple/swift-nio@f94b22b commit
- github.com/apple/swift-nio#1387 pull request
- github.com/apple/swift-nio#1388 pull request
Is GHSA-mgc4-wqv7-4pxm in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| swift | github.com/apple/swift-nio | >=1.0.0, <1.14.2 >=2.0.0, <2.13.1 |
1.14.2 2.13.1 |
Classification
- Weakness
-
- CWE-444 Inconsistent Interpretation of HTTP Requests
References
-
github.com
/apple/swift-nio/pull/1387
web
-
github.com
/apple/swift-nio/pull/1388
web
-
github.com
/apple/swift-nio/commit/8da5c5a4e6c5084c296b9f39dc54f00be146e0fa
web
-
github.com
/apple/swift-nio/commit/bfde40cac8eca25ce021552513b20ee23fc6e306
web
-
github.com
/apple/swift-nio/commit/df9390006bce7da1b6273f804d3acbbfdfcc6154
web
-
github.com
/apple/swift-nio/commit/f94b22b506e3557cb1b325534fa9bbcd39c90246
web
-
github.com
/apple/swift-nio/security/advisories/GHSA-mgc4-wqv7-4pxm
web
-
github.com
/apple/swift-nio
package
Sources
- GitHub Advisory GHSA-mgc4-wqv7-4pxm
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.