Headline
GHSA-3mwq-h3g6-ffhm: Vapor's incorrect request error handling triggers server crash
Vapor incorrectly handles errors encountered during parsing of HTTP 1.x requests, triggering a precondition failure in swift-nio due to API misuse and causing immediate termination of the server process.
Impact
This is a denial of service vulnerability, impacting all users of affected versions of Vapor. Because the crash is an explicit assertion failure, there is no corruption of process state and no risk of data leakage or unauthorized code execution. Total impact is limited to an immediately recoverable service interruption.
Patches
The issue is fixed as of Vapor release 4.84.2.
Workarounds
None known at this time.
For more information
If you have any questions or comments about this advisory:
- Open an issue in the Vapor repo
- Ask in Vapor Discord
Acknowledgements
Full credit for reporting this issue goes to @t0rchwo0d, with additional thanks for responsibly disclosing.
Vapor incorrectly handles errors encountered during parsing of HTTP 1.x requests, triggering a precondition failure in swift-nio due to API misuse and causing immediate termination of the server process.
Impact
This is a denial of service vulnerability, impacting all users of affected versions of Vapor. Because the crash is an explicit assertion failure, there is no corruption of process state and no risk of data leakage or unauthorized code execution. Total impact is limited to an immediately recoverable service interruption.
Patches
The issue is fixed as of Vapor release 4.84.2.
Workarounds
None known at this time.
For more information
If you have any questions or comments about this advisory:
- Open an issue in the Vapor repo
- Ask in Vapor Discord
Acknowledgements
Full credit for reporting this issue goes to @t0rchwo0d, with additional thanks for responsibly disclosing.
References
- GHSA-3mwq-h3g6-ffhm
- https://nvd.nist.gov/vuln/detail/CVE-2023-44386
- vapor/vapor@090464a
- https://github.com/vapor/vapor/releases/tag/4.84.2
Related news
Vapor is an HTTP web framework for Swift. There is a denial of service vulnerability impacting all users of affected versions of Vapor. The HTTP1 error handler closed connections when HTTP parse errors occur instead of passing them on. The issue is fixed as of Vapor release 4.84.2.