GHSA-4jwc-w2hc-78qv

Suggest an improvement
Source
https://github.com/advisories/GHSA-4jwc-w2hc-78qv
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/10/GHSA-4jwc-w2hc-78qv/GHSA-4jwc-w2hc-78qv.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-4jwc-w2hc-78qv
Aliases
Published
2024-10-01T22:27:58Z
Modified
2024-10-02T16:19:58Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L CVSS Calculator
  • 6.9 (Medium) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/U:Green CVSS Calculator
Summary
Tonic has remotely exploitable denial of service vulnerability
Details

Impact

note: this only affects v0.12.0 - v0.12.2

When using tonic::transport::Server there is a remote DoS attack that can cause the server to exit cleanly on accepting a tcp/tls stream. This can be triggered via causing the accept call to error out with errors there were not covered correctly causing the accept loop to exit.

More information can be found here

Patches

Upgrading to tonic 0.12.3 and above contains the fix.

Workarounds

A custom accept loop is a possible workaround.

Database specific
{
    "nvd_published_at": "2024-10-01T21:15:08Z",
    "cwe_ids": [
        "CWE-755"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2024-10-01T22:27:58Z"
}
References

Affected packages

crates.io / tonic

Package

Affected ranges

Type
SEMVER
Events
Introduced
0.12.0
Fixed
0.12.3