Multipart form parsing can consume large amounts of CPU and memory when processing form inputs containing very large numbers of parts. This stems from several causes: 1. mime/multipart.Reader.ReadForm limits the total memory a parsed multipart form can consume. ReadForm can undercount the amount of memory consumed, leading it to accept larger inputs than intended. 2. Limiting total memory does not account for increased pressure on the garbage collector from large numbers of small allocations in forms with many parts. 3. ReadForm can allocate a large number of short-lived buffers, further increasing pressure on the garbage collector. The combination of these factors can permit an attacker to cause an program that parses multipart forms to consume large amounts of CPU and memory, potentially resulting in a denial of service. This affects programs that use mime/multipart.Reader.ReadForm, as well as form parsing in the net/http package with the Request methods FormFile, FormValue, ParseMultipartForm, and PostFormValue. With fix, ReadForm now does a better job of estimating the memory consumption of parsed forms, and performs many fewer short-lived allocations. In addition, the fixed mime/multipart.Reader imposes the following limits on the size of parsed forms: 1. Forms parsed with ReadForm may contain no more than 1000 parts. This limit may be adjusted with the environment variable GODEBUG=multipartmaxparts=. 2. Form parts parsed with NextPart and NextRawPart may contain no more than 10,000 header fields. In addition, forms parsed with ReadForm may contain no more than 10,000 header fields across all parts. This limit may be adjusted with the environment variable GODEBUG=multipartmaxheaders=.
CVSS Details
- CVSS 3.1 Base Score: 7.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade skopeoUpgrade containers-commonUpgrade oci-seccomp-bpf-hookUpgrade skopeo-testsUpgrade netavarkUpgrade python3-podmanUpgrade criu-develUpgrade criuUpgrade podmanUpgrade toolboxUpgrade criu-libsUpgrade podman-catatonitUpgrade podman-pluginsUpgrade runcUpgrade podman-remoteUpgrade fuse-overlayfsUpgrade containernetworking-pluginsUpgrade libslirp-develUpgrade crunUpgrade conmonUpgrade critUpgrade python3-criuUpgrade aardvark-dnsUpgrade podman-testsUpgrade slirp4netnsUpgrade libslirpUpgrade podman-dockerUpgrade cockpit-podmanUpgrade container-selinuxUpgrade buildah-testsUpgrade podman-gvproxyUpgrade buildahUpgrade udicaUpgrade toolbox-tests | Nov 16, 2023 | Apr 6, 2023 |
| Alpine Linux | — | Upgrade go | Aug 22, 2024 | Apr 6, 2023 |
| Amazon Linux Ami 2 | — | Upgrade containerd-stressUpgrade golang-sharedUpgrade golang-docsUpgrade golang-binUpgrade containerd-debuginfoUpgrade containerdUpgrade golangUpgrade golang-miscUpgrade golang-srcUpgrade golang-testsUpgrade golang-race | Apr 21, 2023 | Apr 6, 2023 |
| Amazon_linux | — | Upgrade golang | Apr 21, 2023 | Apr 6, 2023 |
| Amazon_linux_2023 | — | Upgrade golang-sharedUpgrade golang-docsUpgrade golang-raceUpgrade golang-binUpgrade golang-testsUpgrade golangUpgrade golang-miscUpgrade golang-src | Feb 17, 2025 | Apr 4, 2023 |
| Centos_linux | — | Upgrade containernetworking-plugins-debugsourceUpgrade slirp4netnsUpgrade podman-gvproxyUpgrade crun-debuginfoUpgrade buildahUpgrade golang-raceUpgrade conmon-debuginfoUpgrade libslirp-develUpgrade toolboxUpgrade aardvark-dnsUpgrade oci-seccomp-bpf-hookUpgrade podman-testsUpgrade skopeo-debuginfoUpgrade criu-libsUpgrade buildah-debugsourceUpgrade netavarkUpgrade conmonUpgrade podman-catatonit-debuginfoUpgrade cockpit-podmanUpgrade buildah-debuginfoUpgrade golang-srcUpgrade libslirpUpgrade criu-debuginfoUpgrade python3-podmanUpgrade runc-debuginfoUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade criu-debugsourceUpgrade fuse-overlayfsUpgrade delve-debuginfoUpgrade fuse-overlayfs-debugsourceUpgrade podman-remote-debuginfoUpgrade conmon-debugsourceUpgrade golang-miscUpgrade go-toolsetUpgrade buildah-tests-debuginfoUpgrade crun-debugsourceUpgrade fuse-overlayfs-debuginfoUpgrade golangUpgrade buildah-testsUpgrade containers-commonUpgrade podman-remoteUpgrade podmanUpgrade criuUpgrade runc-debugsourceUpgrade toolbox-debugsourceUpgrade golang-testsUpgrade criu-develUpgrade golang-docsUpgrade podman-debuginfoUpgrade container-selinuxUpgrade slirp4netns-debugsourceUpgrade toolbox-testsUpgrade toolbox-debuginfoUpgrade python3-criuUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade libslirp-debuginfoUpgrade containernetworking-pluginsUpgrade slirp4netns-debuginfoUpgrade crunUpgrade delveUpgrade podman-plugins-debuginfoUpgrade udicaUpgrade skopeo-debugsourceUpgrade containernetworking-plugins-debuginfoUpgrade podman-gvproxy-debuginfoUpgrade podman-catatonitUpgrade critUpgrade skopeo-testsUpgrade skopeoUpgrade golang-binUpgrade podman-dockerUpgrade criu-libs-debuginfoUpgrade runcUpgrade podman-pluginsUpgrade libslirp-debugsourceUpgrade delve-debugsourceUpgrade podman-debugsource | Oct 23, 2023 | Apr 6, 2023 |
| Debian | — | Upgrade golang-1.19 | Jul 30, 2024 | Apr 6, 2023 |
| Freebsd | — | Upgrade go119Upgrade go120 | Apr 14, 2023 | Apr 7, 2023 |
| Gentoo Linux | — | Upgrade dev-lang/go. | Nov 27, 2023 | Apr 6, 2023 |
| Huawei Euleros 2_0_sp10 | — | Upgrade golang-helpUpgrade golang-develUpgrade golang | Jul 18, 2023 | Apr 6, 2023 |
| Huawei Euleros 2_0_sp11 | — | Upgrade golangUpgrade golang-develUpgrade golang-help | Jan 10, 2024 | Apr 6, 2023 |
| Huawei Euleros 2_0_sp9 | — | Upgrade golangUpgrade golang-develUpgrade golang-help | Mar 18, 2025 | Apr 6, 2023 |
| Oracle_linux | — | Upgrade podman-remoteUpgrade python3-criuUpgrade container-selinuxUpgrade fuse-overlayfsUpgrade critUpgrade cockpit-podmanUpgrade podman-gvproxyUpgrade buildah-testsUpgrade podman-dockerUpgrade slirp4netnsUpgrade aardvark-dnsUpgrade buildahUpgrade runcUpgrade crunUpgrade podman-catatonitUpgrade python3-podmanUpgrade criuUpgrade podmanUpgrade skopeoUpgrade libslirpUpgrade conmonUpgrade criu-develUpgrade udicaUpgrade podman-testsUpgrade criu-libsUpgrade skopeo-testsUpgrade oci-seccomp-bpf-hookUpgrade containers-commonUpgrade containernetworking-pluginsUpgrade libslirp-develUpgrade netavarkUpgrade podman-plugins | Nov 16, 2023 | Apr 4, 2023 |
| Redhat Openshift | — | Upgrade cri-oUpgrade openshift-clientsUpgrade conmonUpgrade skopeoUpgrade podmanUpgrade microshift | Jun 15, 2023 | Apr 4, 2023 |
| Redhat_linux | — | Upgrade delve-debugsourceUpgrade udicaUpgrade podman-remoteUpgrade fuse-overlayfs-debuginfoNo solution existsUpgrade containernetworking-pluginsUpgrade golang-miscUpgrade crun-debugsourceUpgrade criu-libs-debuginfoUpgrade podman-dockerUpgrade toolbox-debugsourceUpgrade buildah-debugsourceUpgrade podman-catatonitUpgrade runcUpgrade toolboxUpgrade podman-pluginsUpgrade conmonUpgrade golang-srcUpgrade toolbox-testsUpgrade fuse-overlayfs-debugsourceUpgrade golang-binUpgrade skopeoUpgrade golang-raceUpgrade buildah-testsUpgrade podmanUpgrade containernetworking-plugins-debugsourceUpgrade golangUpgrade podman-catatonit-debuginfoUpgrade buildah-debuginfoUpgrade buildah-tests-debuginfoUpgrade podman-remote-debuginfoUpgrade skopeo-debugsourceUpgrade buildahUpgrade fuse-overlayfsUpgrade golang-testsUpgrade conmon-debugsourceUpgrade aardvark-dnsUpgrade criuUpgrade python3-podmanUpgrade criu-debuginfoUpgrade netavarkUpgrade runc-debuginfoUpgrade libslirpUpgrade critUpgrade container-selinuxUpgrade containers-commonUpgrade delve-debuginfoUpgrade runc-debugsourceUpgrade crunUpgrade oci-seccomp-bpf-hookUpgrade golang-docsUpgrade libslirp-debuginfoUpgrade criu-develUpgrade delveUpgrade slirp4netnsUpgrade podman-testsUpgrade go-toolsetUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade podman-gvproxyUpgrade skopeo-testsUpgrade conmon-debuginfoUpgrade slirp4netns-debuginfoUpgrade slirp4netns-debugsourceUpgrade skopeo-debuginfoUpgrade podman-debuginfoUpgrade podman-debugsourceUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade podman-plugins-debuginfoUpgrade python3-criuUpgrade toolbox-debuginfoUpgrade criu-libsUpgrade crun-debuginfoUpgrade containernetworking-plugins-debuginfoUpgrade criu-debugsourceUpgrade libslirp-debugsourceUpgrade libslirp-develUpgrade cockpit-podmanUpgrade podman-gvproxy-debuginfo | Oct 23, 2023 | Apr 6, 2023 |
| Rocky_linux | — | Upgrade conmon-debuginfoUpgrade runc-debugsourceUpgrade criu-debuginfoUpgrade criu-debugsourceUpgrade fuse-overlayfsUpgrade podman-debuginfoUpgrade buildah-testsUpgrade python3-criuUpgrade conmon-debugsourceUpgrade containers-commonUpgrade criu-libs-debuginfoUpgrade podmanUpgrade runcUpgrade podman-remote-debuginfoUpgrade buildah-tests-debuginfoUpgrade podman-gvproxy-debuginfoUpgrade libslirp-develUpgrade libslirp-debuginfoUpgrade oci-seccomp-bpf-hook-debugsourceUpgrade fuse-overlayfs-debugsourceUpgrade crun-debugsourceUpgrade oci-seccomp-bpf-hookUpgrade runc-debuginfoUpgrade criu-libsUpgrade buildah-debuginfoUpgrade criuUpgrade aardvark-dnsUpgrade podman-catatonitUpgrade podman-remoteUpgrade podman-plugins-debuginfoUpgrade critUpgrade containernetworking-pluginsUpgrade buildahUpgrade containernetworking-plugins-debugsourceUpgrade podman-debugsourceUpgrade slirp4netns-debugsourceUpgrade fuse-overlayfs-debuginfoUpgrade criu-develUpgrade buildah-debugsourceUpgrade libslirp-debugsourceUpgrade podman-testsUpgrade podman-pluginsUpgrade containernetworking-plugins-debuginfoUpgrade netavarkUpgrade conmonUpgrade libslirpUpgrade slirp4netnsUpgrade slirp4netns-debuginfoUpgrade podman-gvproxyUpgrade oci-seccomp-bpf-hook-debuginfoUpgrade podman-catatonit-debuginfoUpgrade crun-debuginfoUpgrade crun | Dec 1, 2025 | Nov 28, 2025 |
| Suse | — | Upgrade go1.20-docUpgrade go1.19-docUpgrade go1.20-raceUpgrade go1.19Upgrade go1.20Upgrade go1.19-race | Apr 10, 2023 | Apr 6, 2023 |
| Ubuntu | — | Upgrade golang-1.18-src (Ubuntu Pro)Upgrade golang-1.17Upgrade golang-1.18 (Ubuntu Pro)Upgrade golang-1.17-srcUpgrade golang-1.18-goUpgrade golang-1.17-goUpgrade golang-1.18-go (Ubuntu Pro)Upgrade golang-1.18Upgrade golang-1.18-src | Nov 15, 2024 | Apr 6, 2023 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Apr 6, 2023 |
Prioritise with Active Threat Intelligence
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