How many CVEs does the NVD list for my BusyBox version?
Counted are CVEs whose NVD configuration lists the version as vulnerable, queried on 4 November 2026 through the NVD API without rejected entries, each hit re-checked against its configuration. The NVD lists BusyBox as cpe:2.3:a:busybox:busybox. The column “Shipped in” names which build system or distribution ships that version.
The count does not fall steadily. 1.36.1 has more than 1.35.0, because the NVD lists four awk vulnerabilities from 2023 (CVE-2023-42363 to -42366) only for exactly 1.36.1. Yocto patches them in 1.35.0 as well.
| Version | Released | Shipped in | CVEs according to the NVD, of which CVSS 9.0 or higher |
|---|---|---|---|
| 1.38.0 | 13 May 2026 | newest version; Yocto 6.1, Buildroot 2026.08 | 3 CVEs, none at 9.0 or higher. The NVD lists all three only for exactly 1.38.0 (awk and ash). |
| 1.37.0 | 27 Sep 2024 | Yocto 6.0, OpenWrt 25.12, Buildroot 2025.02 and 2026.02, Debian 13 | 2 CVEs, none at 9.0 or higher. Plus CVE-2026-29004 without NVD mapping, 8.1 (CNA), fixed in 1.38.0. |
| 1.36.1 | 19 May 2023 | Yocto 5.0, OpenWrt 23.05 and 24.10, Buildroot 2024.02 | 7 CVEs, 1 at 9.0 or higher: CVE-2022-48174. |
| 1.35.0 | 26 Dec 2021 | Yocto 4.0, OpenWrt 22.03, Debian 12 | 5 CVEs, 1 at 9.0 or higher. |
| 1.33.2 | 30 Nov 2021 | OpenWrt 21.02 | 6 CVEs, 1 at 9.0 or higher. |
| 1.31.1 | 25 Oct 2019 | Yocto 3.1 | 15 CVEs, 1 at 9.0 or higher. |
| 1.30.1 | 14 Feb 2019 | 16 CVEs, 1 at 9.0 or higher. | |
| 1.27.2 | 17 Aug 2017 | 20 CVEs, 2 at 9.0 or higher. | |
| 1.24.2 | 17 Mar 2016 | 20 CVEs, 3 at 9.0 or higher. |
curl -s "https://services.nvd.nist.gov/rest/json/cves/2.0?virtualMatchString=cpe:2.3:a:busybox:busybox:1.36.1&noRejected" \
| jq .totalResults7curl -s "https://services.nvd.nist.gov/rest/json/cves/2.0?virtualMatchString=cpe:2.3:a:busybox:busybox:1.38.0&noRejected" \
| jq .totalResults3Which BusyBox CVEs have CVSS 9.0 or higher?
| CVE, CVSS (NVD) | What, affected versions, fix |
|---|---|
| CVE-2022-48174, 9.8 | Stack overflow in the ash shell, triggered by crafted input to the shell. Up to 1.36.1 according to the NVD. The description says “before 1.35”, but the fix (commit d417193 of 12 June 2023, bug 15216) is only included from 1.37.0 on. |
| CVE-2018-1000517, 9.8 | Buffer overflow in wget. Before 1.29.0. |
| CVE-2016-2148, 9.8 | Heap overflow in the DHCP client udhcpc, triggerable from the network. Up to 1.24.2, fix in 1.25.0. |
Which BusyBox vulnerabilities does 1.38.0 not fix either?
For these five vulnerabilities there is no BusyBox release with a fix on 4 November 2026. The fixes sit in the development branch, as a submission to the project, or only as a patch of the build systems, and Yocto or Buildroot add each of them to their 1.38.0 themselves. The NVD count does not reflect this: it does not count four of the five for 1.38.0.
| CVE, CVSS | What, affected according to the NVD, who patches |
|---|---|
| CVE-2022-28391, 8.8 (NVD) | netstat prints DNS names from PTR records to the terminal unfiltered. Up to 1.35.0 according to the NVD. The patch is submitted (bug 15001) and not merged; Yocto and Buildroot carry it for 1.38.0 too. According to Debian only exploitable with musl libc, not with glibc. |
| CVE-2026-38754, 7.5 (CISA), 5.1 (CNA) | Heap overflow in ifsbreakup() of the ash shell. Only 1.38.0 according to the NVD. Fix in the development branch since 6 July 2026; Yocto also patches it in 1.36.1 and 1.37.0. |
| CVE-2025-60876, 6.5 (CISA) | wget passes control characters in the path through, so an attacker can inject header lines into the request. Up to 1.37.0 according to the NVD. wget.c is unchanged in 1.38.0; Yocto and Buildroot patch 1.38.0 too. |
| CVE-2023-42366, 5.5 (NVD) | Heap overflow in next_token() of awk. Only 1.36.1 according to the NVD. Buildroot also patches it in 1.37.0 and 1.38.0. |
| CVE-2024-58251, 2.5 (CNA) | Control characters in a program name block the terminal when netstat prints it. No NVD mapping. Yocto and Buildroot patch 1.38.0. |
Which BusyBox CVEs are missing from the version query?
On 4 November 2026, 20 BusyBox CVEs have no NVD configuration (status “Awaiting Analysis” or “Deferred”) and appear in no version query. 15 of them were published between 23 September and 21 October 2026, 14 with Red Hat as CNA. They concern httpd, the TLS code, udhcpc, tar, dpkg and mount, among others. Debian lists all 15 as open in its 1.38.0 package, one of them as unimportant.
BusyBox has published no release since 1.38.0. Fixes for tar and httpd from October 2026 sit only in the development branch.
| CVE, score (CNA) | What, affected according to the record |
|---|---|
| CVE-2026-29004, 8.1 | Heap overflow in the DHCPv6 client udhcpc6 via the DNS_SERVERS option, triggerable from the local network. Fixed in 1.38.0 (commit 42202bf). |
| CVE-2026-90954, 7.8 | dpkg-deb writes files outside the target directory via a crafted .deb archive. |
| CVE-2026-88830, 7.5 | Heap overflow in the TLS code before any authentication, via a crafted ClientKeyExchange message. |
| CVE-2026-88832, 7.3 | Heap overflow when detecting a romfs file system from crafted metadata. |
| CVE-2026-88829, 7.2 | The httpd reverse proxy rewrites only the first request of a connection; a second one reaches the backend unchecked. |
| CVE-2026-26157 and -26158, 7.0 each | tar writes outside the target directory via hard links and symlinks. Fixed in 1.38.0. |
| CVE-2026-88833, 6.5 | Integer underflow in udhcpc on raw DHCP packets; a device on the same network crashes the DHCP client. |
| CVE-2026-108119, 6.3 | Via a symlink to “..” and a hard link, tar creates a file outside the target directory. |
Which BusyBox version do Yocto, OpenWrt and Buildroot ship?
Read from the recipes at the release tags and branches, as of 4 November 2026: Yocto meta/recipes-core/busybox/busybox_<version>.bb, OpenWrt package/utils/busybox/Makefile, Buildroot package/busybox/busybox.mk. Counted are patches that carry a CVE in their name or header.
The patches do not change the version line. A Yocto 5.0 build reports “BusyBox v1.36.1”, and CVE-2022-48174 is fixed in it. An OpenWrt 24.10 build reports the same version, and none of its twelve patches is for ash. A match by version alone cannot tell the two apart. Buildroot 2026.02.3 carries fewer BusyBox patches than 2025.02.19: the fixes for CVE-2026-29004, -26157 and -26158 are missing there.
| Build system, release | BusyBox, patches with a CVE |
|---|---|
| Yocto 6.1 Blacksail | 1.38.0, patches for 4 CVEs: CVE-2022-28391, CVE-2024-58251, CVE-2025-60876, CVE-2026-38754 |
| Yocto 6.0 Wrynose (LTS until April 2030) | 1.37.0, patches for 7 CVEs, among them CVE-2026-29004 |
| Yocto 5.0 Scarthgap (LTS until April 2028) | 1.36.1, patches for 13 CVEs, among them CVE-2022-48174 and CVE-2026-29004 |
| Yocto 4.0 Kirkstone (maintenance ended April 2026) | 1.35.0, patches for 11 CVEs |
| OpenWrt 25.12.6 | 1.37.0, 16 patches, none names a CVE |
| OpenWrt 24.10.8 | 1.36.1, 12 patches, none names a CVE |
| OpenWrt 23.05.6 | 1.36.1, 11 patches, none names a CVE |
| OpenWrt 22.03.7 | 1.35.0, patch for CVE-2022-30065 |
| Buildroot 2026.08.1 | 1.38.0, patches for 4 CVEs: CVE-2022-28391, CVE-2023-42366, CVE-2024-58251, CVE-2025-60876 |
| Buildroot 2026.02.3 | 1.37.0, patches for 4 CVEs: CVE-2022-28391, CVE-2023-42366, CVE-2025-46394, CVE-2025-60876 |
| Buildroot 2025.02.19 (LTS until March 2028) | 1.37.0, patches for 9 CVEs |
| Buildroot 2024.02.13 (no longer maintained) | 1.36.1, patches for 5 CVEs |
| Debian 13 trixie | 1:1.37.0-6 |
| Debian 12 bookworm | 1:1.35.0-4+deb12u1 |
Where is the BusyBox version in the binary?
BusyBox writes its version into the binary as one contiguous string, in bb_banner from libbb/messages.c: “BusyBox v”, the version and a suffix in brackets. In the original the suffix is the build time in the format YYYY-MM-DD hh:mm:ss UTC. Distributions set text of their own, Debian for example the package version. On the device, busybox without arguments prints the same line, followed by “multi-call binary.”
The line names the upstream version. Patches of the build system are not in it; they are in the build's recipe.
curl -s https:/ / raw.githubusercontent.com/ mirror/ busybox/ 1_38_0/ libbb/ messages.c \
| grep -n -E "bb_banner\[\]|define BB_EXTRA_VERSION"Output
11:#define BB_EXTRA_VERSION " ("AUTOCONF_TIMESTAMP")"
14:const char bb_banner[] ALIGN1 = "BusyBox v" BB_VER BB_EXTRA_VERSION;strings -a usr/bin/busybox | grep -m1 "^BusyBox v"Output
BusyBox v1.37.0 (Debian 1:1.37.0-6+b9)How do I check this by hand?
- 1
Read the version:
strings -a bin/busybox | grep -m1 "^BusyBox v"in the unpacked file system, on the devicebusybox | head -1. - 2
Clarify the origin: Yocto, Buildroot, OpenWrt or a build of your own. For Yocto and Buildroot read the patches in the recipe; they are not in the version line.
- 3
Determine the applets:
busybox --liston the device or the build's.config. A vulnerability in httpd, udhcpc6, tar or dpkg only affects builds that contain that applet. - 4
Network applets first: udhcpc, udhcpc6, httpd, wget and ntpd are reachable from the network, awk and the shell mostly only through local input.
- 5
Query the NVD with
cpe:2.3:a:busybox:busybox:<version>, then read the CVEs without NVD mapping against your version, for example in Debian's security tracker for busybox. - 6
Check the CISA KEV catalogue for actively exploited vulnerabilities.
Can this run automatically?
LegacyMind reads BusyBox, the kernel and the packages with their versions from the image and checks each against the public vulnerability sources, with the place in the image where it was found and a note whether a vulnerability is actively exploited. If the image proves no version, the field stays empty.
Questions
How many CVEs does BusyBox 1.36.1 have?
The NVD lists seven on 4 November 2026, one of them with CVSS 9.8 (CVE-2022-48174). On top come BusyBox CVEs without NVD mapping, such as CVE-2026-29004 in the DHCPv6 client, which only 1.38.0 fixes, and CVE-2022-28391, which the NVD lists only up to 1.35.0.
Is BusyBox 1.38.0 free of known vulnerabilities?
No. The NVD counts three CVEs. Yocto and Buildroot additionally patch 1.38.0 against CVE-2022-28391, CVE-2024-58251 and CVE-2025-60876, and Debian lists 15 BusyBox CVEs from September and October 2026 as open for its 1.38.0 package.
Which BusyBox version is the stable one?
The last release the project marked as stable is 1.36.1 of 19 May 2023. 1.37.0 and 1.38.0 were published as “unstable”, without bug-fix releases of the form 1.37.1.
Why does my Yocto build report 1.36.1 although vulnerabilities are fixed?
Yocto 5.0 ships 1.36.1 with patches for 13 CVEs. The version line in the binary stays “BusyBox v1.36.1”. Which vulnerabilities are fixed is in the recipe busybox_1.36.1.bb of your layer.
Is a BusyBox vulnerability actively exploited?
As of 4 November 2026 no BusyBox vulnerability is in the CISA catalogue of known exploited vulnerabilities (catalogue version 2026.11.03, 1,767 entries).
Does BusyBox belong in the SBOM?
Yes, as a component with its version. Which applets are built and which patches the build system applied decides which of the CVEs actually hit the device.
Sources
- [1]BusyBox: releases and changes
- [2]NVD: CVE-2022-48174
- [3]NVD: CVE-2022-28391
- [4]CVE.org: CVE-2026-29004
- [5]Debian: Security Tracker busybox
- [6]Yocto Project: Releases
- [7]Buildroot: busybox.mk, release 2026.08.1
- [8]OpenWrt: BusyBox package, release 24.10.8
- [9]NIST NVD: CVE API 2.0
- [10]CISA: Known Exploited Vulnerabilities Catalog