Skip to content

net/http: handle server errors after sending GOAWAY #54658

Closed

Description

@neild

A closing HTTP/2 server connection could hang forever waiting for a clean shutdown that was preempted by a subsequent fatal error. This failure mode could be exploited to cause a denial of service.

Thanks to Bahruz Jabiyev, Tommaso Innocenti, Anthony Gavazzi, Steven Sprecher, and Kaan Onarlioglu for reporting this.

This was a PRIVATE issue for CVE-2022-27664 tracked in http://b/219507101.

Backport issues: #53977 #54376

(I forgot to create the non-backport issue when making the backports, doing so now.)

Activity

  1. added this to the Go1.20 milestone on Aug 24, 2022
  2. added
    NeedsFixThe path to resolution is known, but the work has not been done.
    on Aug 29, 2022
  3. gopherbot commented on Sep 6, 2022

    @gopherbot
    Contributor

    Change https://go.dev/cl/428655 mentions this issue: [release-branch.go1.19] net/http: update bundled golang.org/x/net/http2

  4. gopherbot commented on Sep 6, 2022

    @gopherbot
    Contributor

    Change https://go.dev/cl/428635 mentions this issue: [release-branch.go1.18] net/http: update bundled golang.org/x/net/http2

  5. changed the title [-]security: fix CVE-2022-27664[/-] [+]net/http: handle server errors after sending GOAWAY[/+] on Sep 6, 2022
  6. gopherbot commented on Sep 6, 2022

    @gopherbot
    Contributor

    Change https://go.dev/cl/428736 mentions this issue: [internal-branch.go1.18-vendor] http2: handle server errors after sending GOAWAY

  7. gopherbot commented on Sep 6, 2022

    @gopherbot
    Contributor

    Change https://go.dev/cl/428737 mentions this issue: [internal-branch.go1.19-vendor] http2: handle server errors after sending GOAWAY

  8. gopherbot commented on Sep 6, 2022

    @gopherbot
    Contributor

    Change https://go.dev/cl/428717 mentions this issue: all: update vendored golang.org/x/net

  9. 2 remaining items

  10. tangxi666 commented on Sep 9, 2022

    @tangxi666
    Contributor
  11. gkurz commented on Sep 15, 2022

    @gkurz

    @neild does this affect older versions of go like 1.16 or 1.17 ?

  12. gkurz commented on Nov 2, 2022

    @gkurz

    @neild does this affect older versions of go like 1.16 or 1.17 ?

    Assuming that the thumbs up added by other people mean yes, is there a backport for 1.17 of this fix ? @neild any inputs ?

  13. seankhliao commented on Nov 2, 2022

    @seankhliao
    Member
  14. locked and limited conversation to collaborators on Nov 2, 2023
  15. added a commit that references this issue on Feb 20, 2024
    29af494
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions