A denial of service is possible from excessive resource consumption in net/http and mime/multipart. Multipart form parsing with mime/multipart.Reader.ReadForm can consume largely unlimited amounts of memory and disk files. This also affects form parsing in the net/http package with the Request methods FormFile, FormValue, ParseMultipartForm, and PostFormValue. ReadForm takes a maxMemory parameter, and is documented as storing "up to maxMemory bytes +10MB (reserved for non-file parts) in memory". File parts which cannot be stored in memory are stored on disk in temporary files. The unconfigurable 10MB reserved for non-file parts is excessively large and can potentially open a denial of service vector on its own. However, ReadForm did not properly account for all memory consumed by a parsed form, such as map entry overhead, part names, and MIME headers, permitting a maliciously crafted form to consume well over 10MB. In addition, ReadForm contained no limit on the number of disk files created, permitting a relatively small request body to create a large number of disk temporary files. With fix, ReadForm now properly accounts for various forms of memory overhead, and should now stay within its documented limit of 10MB + maxMemory bytes of memory consumption. Users should still be aware that this limit is high and may still be hazardous. In addition, ReadForm now creates at most one on-disk temporary file, combining multiple form parts into a single temporary file. The mime/multipart.File interface type's documentation states, "If stored on disk, the File's underlying concrete type will be an *os.File.". This is no longer the case when a form contains more than one file part, due to this coalescing of parts into a single file. The previous behavior of using distinct files for each form part may be reenabled with the environment variable GODEBUG=multipartfiles=distinct. Users should be aware that multipart.ReadForm and the http.Request methods that call it do not limit the amount of disk consumed by temporary files. Callers can limit the size of form data with http.MaxBytesReader.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade critUpgrade podman-dockerUpgrade go-toolsetUpgrade crunUpgrade skopeo-testsUpgrade runcUpgrade python3-criuUpgrade golang-binUpgrade podman-remoteUpgrade delveUpgrade podman-pluginsUpgrade container-selinuxUpgrade udicaUpgrade criu-develUpgrade toolbox-testsUpgrade golang-docsUpgrade containernetworking-pluginsUpgrade podman-catatonitUpgrade skopeoUpgrade python3-podmanUpgrade buildah-testsUpgrade podmanUpgrade golang-miscUpgrade aardvark-dnsUpgrade netavarkUpgrade golang-raceUpgrade containers-commonUpgrade golangUpgrade cockpit-podmanUpgrade buildahUpgrade golang-testsUpgrade conmonUpgrade criu-libsUpgrade podman-testsUpgrade podman-gvproxyUpgrade criuUpgrade libslirpUpgrade oci-seccomp-bpf-hookUpgrade toolboxUpgrade fuse-overlayfsUpgrade golang-srcUpgrade libslirp-develUpgrade slirp4netns | May 23, 2023 | Feb 28, 2023 |
| Alpine Linux | — | Upgrade go | Aug 22, 2024 | Feb 28, 2023 |
| Amazon Linux Ami 2 | — | Upgrade containerd-debuginfoUpgrade golang-testsUpgrade containerd-stressUpgrade golang-sharedUpgrade golang-docsUpgrade containerdUpgrade golang-binUpgrade golang-miscUpgrade golang-srcUpgrade golangUpgrade golang-race | Apr 21, 2023 | Feb 28, 2023 |
| Amazon_linux | — | Upgrade golang | Apr 21, 2023 | Feb 14, 2023 |
| Amazon_linux_2023 | — | Upgrade golang-sharedUpgrade golang-srcUpgrade golang-docsUpgrade golang-raceUpgrade golang-testsUpgrade golang-binUpgrade golangUpgrade golang-misc | Feb 17, 2025 | Feb 15, 2023 |
| Centos_linux | — | Upgrade criu-debuginfoUpgrade toolbox-debuginfoUpgrade udicaUpgrade podman-debuginfoUpgrade podman-plugins-debuginfoUpgrade slirp4netns-debuginfoUpgrade libslirp-debuginfoUpgrade podman-gvproxyUpgrade podman-gvproxy-debuginfoUpgrade golang-miscUpgrade skopeo-debugsourceUpgrade python3-criuUpgrade slirp4netnsUpgrade runc-debugsourceUpgrade buildah-testsUpgrade toolbox-testsUpgrade libslirpUpgrade podman-testsUpgrade buildah-tests-debuginfoUpgrade go-toolsetUpgrade fuse-overlayfs-debugsourceUpgrade golangUpgrade golang-srcUpgrade golang-docsUpgrade skopeo-debuginfoUpgrade aardvark-dnsUpgrade buildahUpgrade cockpit-podmanUpgrade criu-debugsourceUpgrade container-selinuxUpgrade buildah-debuginfoUpgrade critUpgrade podman-dockerUpgrade podman-debugsourceUpgrade conmon-debuginfoUpgrade crun-debuginfoUpgrade libslirp-develUpgrade crunUpgrade conmon-debugsourceUpgrade slirp4netns-debugsourceUpgrade podman-remote-debuginfoUpgrade golang-testsUpgrade runcUpgrade delveUpgrade toolbox-debugsourceUpgrade netavarkUpgrade criu-develUpgrade skopeo-testsUpgrade criuUpgrade podman-pluginsUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade golang-binUpgrade delve-debugsourceUpgrade podman-remoteUpgrade criu-libs-debuginfoUpgrade containernetworking-pluginsUpgrade golang-raceUpgrade fuse-overlayfsUpgrade containers-commonUpgrade containernetworking-plugins-debuginfoUpgrade buildah-debugsourceUpgrade toolboxUpgrade fuse-overlayfs-debuginfoUpgrade oci-seccomp-bpf-hookUpgrade runc-debuginfoUpgrade podman-catatonit-debuginfoUpgrade podmanUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade libslirp-debugsourceUpgrade conmonUpgrade skopeoUpgrade podman-catatonitUpgrade criu-libsUpgrade containernetworking-plugins-debugsourceUpgrade python3-podmanUpgrade delve-debuginfoUpgrade crun-debugsource | May 17, 2023 | Feb 28, 2023 |
| Debian | — | Upgrade golang-1.19 | Jul 30, 2024 | Feb 28, 2023 |
| Freebsd | — | Upgrade go119Upgrade go120 | Feb 17, 2023 | Feb 15, 2023 |
| Gentoo Linux | — | Upgrade dev-lang/go. | Nov 27, 2023 | Feb 28, 2023 |
| Huawei Euleros 2_0_sp10 | — | Upgrade golangUpgrade golang-develUpgrade golang-help | May 9, 2023 | Feb 28, 2023 |
| Huawei Euleros 2_0_sp11 | — | Upgrade golang-develUpgrade golangUpgrade golang-help | Jul 5, 2023 | Feb 28, 2023 |
| Huawei Euleros 2_0_sp9 | — | Upgrade golangUpgrade golang-helpUpgrade golang-devel | May 10, 2023 | Feb 28, 2023 |
| Oracle_linux | — | Upgrade containers-commonUpgrade golang-raceUpgrade podman-pluginsUpgrade conmonUpgrade podman-testsUpgrade skopeo-testsUpgrade aardvark-dnsUpgrade criu-develUpgrade cockpit-podmanUpgrade python3-podmanUpgrade slirp4netnsUpgrade podman-gvproxyUpgrade delveUpgrade libslirp-develUpgrade golangUpgrade golang-miscUpgrade netavarkUpgrade oci-seccomp-bpf-hookUpgrade golang-srcUpgrade go-toolsetUpgrade container-selinuxUpgrade criu-libsUpgrade libslirpUpgrade podmanUpgrade criuUpgrade podman-catatonitUpgrade podman-dockerUpgrade critUpgrade buildah-testsUpgrade golang-binUpgrade golang-docsUpgrade podman-remoteUpgrade runcUpgrade containernetworking-pluginsUpgrade crunUpgrade udicaUpgrade buildahUpgrade skopeoUpgrade golang-testsUpgrade fuse-overlayfsUpgrade python3-criu | May 25, 2023 | Feb 15, 2023 |
| Redhat Openshift | — | Upgrade conmonUpgrade skopeoUpgrade openshift-clientsUpgrade podman | May 19, 2023 | Feb 15, 2023 |
| Redhat_linux | — | Upgrade podman-gvproxyUpgrade podman-dockerUpgrade runcUpgrade aardvark-dnsUpgrade udicaUpgrade libslirpUpgrade fuse-overlayfs-debugsourceUpgrade conmon-debugsourceUpgrade golang-srcUpgrade criu-debugsourceUpgrade golang-testsUpgrade skopeo-debugsourceUpgrade toolbox-debugsourceUpgrade buildahUpgrade fuse-overlayfsUpgrade golang-miscUpgrade golang-binUpgrade toolbox-testsUpgrade criuUpgrade conmon-debuginfoUpgrade runc-debugsourceUpgrade podman-catatonitUpgrade criu-libs-debuginfoUpgrade golangUpgrade slirp4netnsNo solution existsUpgrade buildah-testsUpgrade cockpit-podmanUpgrade netavarkUpgrade python3-podmanUpgrade skopeo-debuginfoUpgrade buildah-debuginfoUpgrade buildah-tests-debuginfoUpgrade criu-debuginfoUpgrade go-toolsetUpgrade podman-testsUpgrade criu-develUpgrade criu-libsUpgrade podman-remote-debuginfoUpgrade buildah-debugsourceUpgrade crunUpgrade libslirp-develUpgrade podman-remoteUpgrade containernetworking-plugins-debuginfoUpgrade crun-debugsourceUpgrade containers-commonUpgrade podman-gvproxy-debuginfoUpgrade podman-plugins-debuginfoUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade libslirp-debuginfoUpgrade conmonUpgrade container-selinuxUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade slirp4netns-debuginfoUpgrade golang-raceUpgrade slirp4netns-debugsourceUpgrade podmanUpgrade containernetworking-pluginsUpgrade delveUpgrade libslirp-debugsourceUpgrade toolboxUpgrade podman-catatonit-debuginfoUpgrade runc-debuginfoUpgrade containernetworking-plugins-debugsourceUpgrade python3-criuUpgrade toolbox-debuginfoUpgrade oci-seccomp-bpf-hookUpgrade skopeo-testsUpgrade skopeoUpgrade critUpgrade crun-debuginfoUpgrade golang-docsUpgrade podman-debugsourceUpgrade fuse-overlayfs-debuginfoUpgrade podman-pluginsUpgrade delve-debugsourceUpgrade delve-debuginfoUpgrade podman-debuginfo | May 17, 2023 | Feb 28, 2023 |
| Rocky_linux | — | Upgrade buildah-tests-debuginfoUpgrade runcUpgrade go-toolsetUpgrade fuse-overlayfsUpgrade podman-gvproxyUpgrade runc-debugsourceUpgrade aardvark-dnsUpgrade buildah-debuginfoUpgrade slirp4netnsUpgrade criu-debugsourceUpgrade crun-debuginfoUpgrade critUpgrade golangUpgrade conmon-debuginfoUpgrade podman-plugins-debuginfoUpgrade criu-libs-debuginfoUpgrade python3-criuUpgrade conmon-debugsourceUpgrade criu-debuginfoUpgrade podman-testsUpgrade buildah-testsUpgrade podman-catatonitUpgrade libslirp-debuginfoUpgrade netavarkUpgrade criuUpgrade libslirpUpgrade buildahUpgrade buildah-debugsourceUpgrade libslirp-debugsourceUpgrade slirp4netns-debugsourceUpgrade delve-debugsourceUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade podman-pluginsUpgrade podmanUpgrade delve-debuginfoUpgrade podman-remote-debuginfoUpgrade criu-libsUpgrade podman-catatonit-debuginfoUpgrade slirp4netns-debuginfoUpgrade podman-debuginfoUpgrade containers-commonUpgrade podman-remoteUpgrade criu-develUpgrade golang-binUpgrade fuse-overlayfs-debugsourceUpgrade fuse-overlayfs-debuginfoUpgrade oci-seccomp-bpf-hookUpgrade crun-debugsourceUpgrade delveUpgrade podman-gvproxy-debuginfoUpgrade libslirp-develUpgrade golang-raceUpgrade runc-debuginfoUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade crunUpgrade containernetworking-plugins-debugsourceUpgrade containernetworking-plugins-debuginfoUpgrade containernetworking-pluginsUpgrade conmonUpgrade podman-debugsource | Mar 5, 2024 | Feb 28, 2023 |
| Suse | — | Upgrade container-suseconnectUpgrade go1.20-docUpgrade go1.18-opensslUpgrade go1.20-raceUpgrade go1.18-openssl-docUpgrade go1.19Upgrade go1.18Upgrade go1.18-docUpgrade go1.19-docUpgrade go1.20Upgrade go1.18-raceUpgrade go1.18-openssl-raceUpgrade go1.19-race | Mar 15, 2023 | Feb 28, 2023 |
| Ubuntu | — | Upgrade golang-1.19Upgrade golang-1.19-goUpgrade golang-1.18-go (Ubuntu Pro)Upgrade golang-1.17-goUpgrade golang-1.17-srcUpgrade golang-1.18-srcUpgrade golang-1.18-goUpgrade golang-1.18Upgrade golang-1.19-srcUpgrade golang-1.18 (Ubuntu Pro)Upgrade golang-1.17Upgrade golang-1.18-src (Ubuntu Pro) | Jun 7, 2023 | Feb 28, 2023 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Feb 28, 2023 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub