Public newsroom
Upstream briefs, filed by beat.
Short notes on what landed, what broke, and what to read next.
OpenBSD fw_update could hand an untrusted firmware comment to a privileged helper
OpenBSD's firmware updater could treat a vendor comment as data. On the automatic install path that string could reach a privileged helper without enough checks.
A leftover giant-packet mark on an IP fragment can panic the host
A tap or a guest can attach giant-packet metadata to a single IP fragment. After the host glues the pieces back together, that leftover mark sends the kernel into a BUG that panics the machine.
VAPIC writable window could cover SMRAM or PCI BARs
QEMU mapped the virtual APIC acceleration ROM as high-priority writable RAM. The fix confines the region to option-ROM low memory.
SCSI WRITE SAME can copy host heap into the guest disk
A guest with an emulated SCSI disk can race a block-size change against WRITE SAME so QEMU reads tens of kilobytes past a host heap buffer and writes that memory into the guest's own image. The fix clamps the copy to the buffer that was actually allocated.
Eight stable kernels for Thursday
Eight stable and longterm updates landed, from 7.2.1 down through 5.10.267. The tip tree alone carries dozens of fixes, including use-after-free and out-of-bounds holes in Bluetooth, HID, IPv6, and NFC.
Zram can walk off its table after a shrink reset
Compressed RAM swap keeps a table of slots sized to the device. If the device is reset smaller while writeback or memory tracking is still running, those paths could keep the old size and scan past the new table. Both paths now read the size only after taking the device lock.
OVMF refuses Secure Boot on QEMU pflash without SMM
When UEFI variables sit in QEMU flash and Secure Boot is on, OVMF used to keep booting even if SMM was not guarding that flash. Anything that can rewrite the flash could then change Secure Boot keys. The pflash driver now stops dead on that setup.
Firecracker advertised a broken ACPI PCI hot-plug path
Firecracker's ACPI tables advertised PCI hot-plug for every root-bus slot. The eject path called a helper device the VMM never published, so a Linux guest with ACPI PCI hot-plug saw broken slot entries under sysfs.
Failed TCP live migration can hang Cloud Hypervisor
Live migration over TCP can hang Cloud Hypervisor when the transfer fails or is canceled. The source waits forever for its copy workers to exit, and the destination spins if the sender drops the connection mid-copy.
Cloud Hypervisor aborts on a VHDX header at the sequence max
Cloud Hypervisor's VHDX disk format stores a sequence number in the header and bumps it on write. A disk whose header already sat at the highest 64-bit value made the VMM abort on the first write.
OVMF could hang fetching the SEV-ES encryption mask
SEV-ES is AMD's guest memory encryption. OVMF used to fetch that encryption mask through a path that could turn interrupts back on during a hypervisor exit, and a CPU jump table could overwrite the same early data.
IBM Z protected service-call copy can read past a host heap buffer
On IBM Z, a guest talks to QEMU through a small service-call control block. The protected-virtualization copy of that block could read past the host buffer, because a later rewrite of the request length was used as the copy size.
Guest CHS setup can crash QEMU with a divide by zero
CHS is the old cylinders-heads-sectors way a guest describes a disk. A guest can set sectors-per-track to zero, and the next CHS read or write then divides by that zero and kills the QEMU process.
Disk command-list unmap can point at freed host memory
The AHCI host adapter maps the guest's command list in host memory. If that list sits on an MMIO region, unmapping it frees a bounce buffer, and a later programmed-I/O completion still used the old pointer.
Surprise disk unplug can free host memory under an in-flight request
On a PCIe machine, a guest can power the disk slot off while a read is still in flight. The host then finishes that request against memory it already freed.
Incoming IDE migration can write host heap
QEMU keeps a small buffer for an in-progress disk transfer. A crafted incoming migration stream could point that window off the buffer, and the resumed guest then turns data-port writes into a host heap write.
Cloud Hypervisor can now read virtio-balloon statistics
A virtio balloon is the guest device Cloud Hypervisor uses to reclaim unused memory. The VMM can now pull the balloon's latest statistics over the host control API, and it caches the last sample so the call does not wait on the guest.
AppArmor writes past a profile-name list when a process sets its own confinement
AppArmor builds a list of profile names when a process asks to change its own confinement. The list was one slot short for the terminator, so a long compound name wrote a pointer past the end.
AppArmor can free a process's credentials while they are still in use
AppArmor is the Linux security module that pins a confinement profile to each process. When a profile was replaced or disabled, it swapped that process's credentials from inside filesystem work, so a later lookup could touch freed memory.
Firecracker now lets guests move a virtio-pci BAR
A guest write that reprogrammed a virtio-pci BAR used to be ignored, so the device stayed at the address Firecracker picked. The mapping and the notify events now follow the new base when the guest turns memory decoding back on.
Cloud Hypervisor missed virtio-iommu when translating MSI
MSI interrupts need a guest address turned into a host address. With virtio-iommu that translation skipped the virtual IOMMU, so the interrupt could go to the wrong place.
Cloud Hypervisor could publish a QCOW table before it owned it
QCOW images keep a two-level map of guest disk blocks. A new second-level table could be pointed at from the first level before Cloud Hypervisor owned that table.
Cloud Hypervisor can restore memory copy-on-write
Restoring a snapshot used to write guest memory in place. A new restore mode maps the snapshot copy-on-write so the first write from the guest makes a private copy.
Cloud Hypervisor now kicks a vhost-user backend after reconnect
A vhost-user device talks to a helper process over a socket. After that socket reconnects, the backend was not always notified, so the device could sit idle.
Cloud Hypervisor reserves hugepage memory by default
Huge-page guests need the host to reserve that memory. If you did not set a reserve flag, Cloud Hypervisor now turns reserve on for hugepages.
Cloud Hypervisor now requires a disk image type
Opening a guest disk used to guess the image format. You now have to name the type, and an unspecified type is rejected.
Firecracker now supports AWS Graviton5
Firecracker lists the host machines it officially runs on. Graviton5 metal is now on that list.
Firecracker ARM CPU templates failed on newer host kernels
Custom ARM CPU templates write chip identity registers. On Linux 6.15 and later those writes failed unless the VMM asked KVM for permission.
Firecracker can skip fsync when it writes a snapshot
Taking a snapshot used to always flush the files to disk. A new create-snapshot option lets you skip that flush.
Firecracker can hang when a log write hits a broken pipe
The API thread can get a broken-pipe signal while writing logs. Logging from that handler, plus a missing resume syscall on the filter, could hang or kill the process.
A bad SMB server could free a buffer the client still uses
After a first multi-part reply is accepted, a malformed follow-up can make the client drop the original buffer while the receive path still holds a pointer to it. The next packet then writes into freed memory.
A bad SMB server could make the client write off a reply buffer
The kernel SMB client stitches multi-part replies together using offsets the server chooses. Those offsets were not checked against the buffer, so a hostile or broken server could point the copy below the payload or past the end of the heap object.
A reconnect on the kernel SMB server could use a freed session
Two clients can hold durable handles on the same file. After both drop off, one reconnect can take over the other's lease state and later walk a session that has already been freed.
Two lock requests on the kernel SMB server could free the same memory
A logged-in client can send a batch of lock operations and an unlock at the same time. If a later lock in the batch fails, the server undoes the earlier ones after another request may already have freed them. That is a use-after-free and a double free.
A logged-in SMB client could overflow a control reply
A client that is already on a share can pack a later control request into a bundled message after earlier replies have used up most of the buffer. Two of those control replies were written at full size anyway, past the remaining space, into nearby kernel memory.
The kernel SMB server could write past a Kerberos login reply
When a client logs in with Kerberos as part of a bundled request, the server miscounted how much room was left in its reply. A large login token could then be copied past the end of that buffer into nearby kernel memory.
Cloud Hypervisor VHDX flush did not actually hit disk
A guest flush on a VHDX disk only flushed userspace buffers. It did not sync the file the way raw, VHD, and VMDK already do.
Cloud Hypervisor put gaps back between boot and hotplug RAM
Cloud Hypervisor had stopped leaving a gap between boot RAM and hotplug RAM, so one access could span two host maps. The gap is back.
Cloud Hypervisor identity-maps Grace Blackwell GPU BARs
On NVIDIA Grace Blackwell GPUs, the high-bandwidth memory path skips the SMMU. The guest has to see the host physical BAR address or the GPU driver fails.
Cloud Hypervisor wrote PCI NUMA handles the wrong way
Cloud Hypervisor used to encode a PCI device's NUMA handle with the bus and function bytes repeated. A guest following ACPI 6.6 would not see that device on the node you asked for.
Cloud Hypervisor could die on a large HTTP API body
A large HTTP API request could kill Cloud Hypervisor when the allocator remapped memory. The HTTP thread's syscall filter now allows that remap.
FreeBSD 14.4 told builders they had a newer OpenSSL than they did
The base system ships small files that tell other programs which OpenSSL is installed. On 14.4 those files said 3.5.1 while the library on that branch is 3.0.
find could crash listing a file with a nonsense timestamp
find can print a long directory listing. A file with a garbage timestamp made that listing crash.
A short socket-control buffer could make the kernel write past it
A program can ask the kernel to copy socket control data into a caller buffer. If that length wrapped on a too-short buffer, the kernel wrote past it into user memory.
OVMF now reserves a larger default MMIO window
QEMU's UEFI firmware picks a chunk of guest physical address space for device MMIO. The default dynamic window is now a quarter of that space instead of an eighth, so a guest with several GPUs can map them.
The measured-boot confirm prompt is now a separate library
The firmware prompt that asks a person to confirm a measured-boot change used to live inside the TCG library. That prompt is now its own library so a platform can swap the UI without rewriting the TCG path.
Measured-boot logs can grow when they used to stop
Firmware that records measured-boot events used to stop writing when the event log filled. The SecurityPkg change now grows that log so a long boot with large hashes does not drop events.
EDK II's August 2026 stable is out
Tianocore tagged the quarterly EDK II snapshot that QEMU firmware and other UEFI platforms take. Out-of-tree platforms have to pick up library moves and a shared GPT parser that the tag lists as source-level breaks.
QEMU ships v11.1.1, v11.0.4, and v10.0.13
Three stable point releases landed on the public tree. They bump the version and include the pseries watchdog bound check, but not the VGA or QXL CVEs that landed on master with the graphics pull.
QEMU can use freed serial state if the port is hot-unplugged
The emulated serial port leaves a transmit retry callback armed when the device is removed. If that callback fires after unplug, QEMU can touch memory that is already gone.
A pseries guest can poke one slot before the watchdog table
pseries is the default IBM POWER virtual machine. A guest hypercall that starts the watchdog accepted index zero and then used the slot before the start of the table, which tripped a host sanitizer crash.
A virtio-gpu guest can abort the QEMU process by asking for a huge allocation
virtio-gpu is the virtio display device. A guest could ask for a memory allocation large enough that the host allocator aborted the whole QEMU process instead of returning an error.
QEMU QXL display can read past video RAM on a guest-chosen stride
QXL is the Spice display device many Linux guests use. A guest can create a primary surface whose row width is smaller than the pixel width it declared, and the next host screen refresh then reads past the video buffer.
QEMU VGA can write past the display surface after a mode switch
VGA is the default display chip on a typical PC virtual machine. After a guest flips from graphics to text, QEMU can paint into a too-small surface using colors the guest chose, which writes off the end of host memory on every screen refresh.
Some Intel CPUs never got early microcode on FreeBSD
FreeBSD can load Intel CPU microcode very early in boot. A bad bounds check skipped the extra signature table, so some recent Intel chips kept firmware microcode only.
A shared-memory page-size race can escalate privileges
POSIX shared memory can back an object with large pages. Two callers could set the page size at once, leave the object inconsistent, and escalate privileges.
A terminal ioctl race can escalate privileges
The kernel's terminal layer can drop a lock while attaching a controlling terminal. A local user can race that window and escalate privileges.
Base OpenSSL picks up a batch of memory and protocol bugs
FreeBSD ships OpenSSL in the base system. The signed advisory lists a heap overflow, a double free, and remote paths that can exhaust memory, with impact from denial of service up to possible remote code execution.
A credential-switch policy can set the wheel group on FreeBSD 15
mac_do is an optional policy that lets an admin allow some users to switch identity. A leftover group check can apply the wrong primary group, and with some rules that can become wheel.
The sound driver can escalate privileges when two devices start together
The sound driver can start several audio devices at once. With more than one device, a local user could hit a use-after-free and escalate privileges.
A local socket bug can escalate privileges on FreeBSD 15
Unix sockets are how programs on the same machine pass messages and file descriptors. A receive-path bug could free a message and then still use it, and the advisory says a local user can escalate privileges.
Performance counters could keep watching after a privilege jump
Hardware performance counters are meant to drop when a process becomes privileged. A flipped check let an unprivileged watcher keep monitoring after that jump.
Firecracker snapshot restore could succeed with a dead PCI device
Firecracker snapshot restore could report success even when a PCI virtio device failed to start again. The guest then had a device that never processed a request.
FreeBSD's userland PPP daemon overflowed on a crafted peer option
The userland PPP program is the old dial-up and point-to-point helper still in the base system. A peer could send a malformed endpoint option and the daemon would write past its buffers.
Firecracker hid eIBRS from guests on newer host kernels
Firecracker used to read the host's speculation-defense bits before telling KVM what the guest CPU looked like. On Linux 6.18 those reads came back empty, so the guest thought eIBRS was off and used the slower retpoline path.
Open vSwitch can crash when a flow is deleted
Deleting a flow from Open vSwitch can free packet-match data while the kernel is still building the delete reply. A short race then reads that memory and can crash the host.
Cloud Hypervisor told guests their L3 cache spanned every package
Cloud Hypervisor used to copy the host's last-level cache map into the guest. On a multi-package VM that map could cover every vCPU as one cache, so the guest kernel scheduled as if they all shared last-level cache.
Cloud Hypervisor used to crash when a VFIO DMA range crossed a mapping gap
Cloud Hypervisor used to abort if a pass-through DMA request sat inside a device BAR but spanned two separate host mappings. That is now a failed lookup, not a crash.
Cloud Hypervisor used to reject large VM configs over HTTP
Cloud Hypervisor's HTTP control API used to reject request bodies bigger than about 50 KB. A create for a big VM with lots of disks and per-queue CPU lists could hit that wall, so the cap is now 4 MiB.
Cloud Hypervisor extra PCI buses no longer reserve slot 0
A host bridge is the dummy device firmware expects at slot 0 of the first PCI bus. Extra buses used to get one too, so a real device could not sit at 00:00.0.
OpenBSD 7.8 and 7.9 pick up the XML parser fixes from 2.8.3
The system XML library on the two current releases is taking the 2.8.3 changes. The drop lists fifteen CVEs and keeps the library ABI the same.
Asking a network interface for its stats leaked leftover kernel stack
A program can ask the kernel for a network interface's counters. On most machines that copy included four leftover bytes of kernel stack.
Asking for a process command line could return leftover kernel memory
A caller can ask the kernel for another process's command line. If that copy came back empty, leftover uninitialized kernel memory could still be handed back.
Stable and LTS kernels moved
7.1.9 and six long-term lines moved. These are the first stable drops since 7.1.8, 6.18.44, and 6.12.103.
Linux 7.2 is out
Linus tagged 7.2. The last release candidate was 7.2-rc7.
Unprivileged users could read a DRBD cluster secret
DRBD is the kernel's shared-disk replication. After a netlink rewrite, two status dumps stopped hiding the authentication secret, and those dumps do not require admin rights.
Registered I/O buffers could overflow on 32-bit kernels
The kernel's fast I/O path lets a process register big buffers once and reuse them. On 32-bit machines a size check wrapped around, so the kernel reserved a tiny slot and then wrote a much larger array over the heap.
FreeBSD stables now ship Expat 2.8.3
FreeBSD's built-in XML parser is the copy of Expat that base tools use as the system XML library. The 14 and 15 stables now ship 2.8.3, which the vendor tagged for an out-of-bounds read that can hang a 16-bit-character build.
Some filesystem syscalls could crash if a file lost its mount
A file's kernel object can lose its mount pointer. Some filesystem syscalls did not check and could crash if they followed a null.
A missing pledge flag on a name lookup used to panic the kernel
Pledge is the kernel's per-process syscall filter. A name lookup that arrived with no pledge flag set used to panic the machine.
A crafted dynamic linker could panic OpenBSD instead of failing the exec
The kernel loads a program's dynamic linker when you run a binary. A weirdly built linker file could trip an assert and take the machine down instead of just failing the run.
A QEMU guest can make the Realtek NIC read past a short packet
The old Realtek 8139 NIC that QEMU emulates can over-read a few bytes when a guest loops a short VLAN-tagged packet back to itself. The fix is on master.
Cloud Hypervisor device-remove can be retried when the guest is busy
Under load the guest may miss the ACPI eject interrupt. A second remove then failed because the device was already gone from the config.
Cloud Hypervisor picked up mshv and VFIO crate 0.7.0 bugfixes
The Microsoft Hypervisor and VFIO helper crates are rust-vmm libraries Cloud Hypervisor uses to talk to the host. This bump lands their 0.7.0 bugfixes with no guest-facing feature.
Cloud Hypervisor could crash restoring a VM with an unused virtio device
Restore tried to read a virtio ring for a queue the guest never set up. On ARM that read hits unbacked memory and the VMM panics.
Firecracker could hang if you hot-plugged a device during a guest reset
Adding a PCI device while the guest reset another virtio-pci device could lock the VMM. Two internal locks were taken in opposite order.
Firecracker now tells T2S guests that fill-buffer flush works
T2S is Firecracker's CPU template for Skylake and Cascade Lake. Those guests could miss that a standard flush clears leftover fill-buffer data, and skip a stale-data mitigation.
Firecracker restore can now pick a different huge-page setup
A snapshot remembers how the host backed guest memory. Restore can now keep that setting or choose another page size, instead of matching the original host.
Asking a terminal for its session could crash the kernel
A terminal session is the group of processes tied to a login tty. Looking up that session could follow a pointer that had already been freed, and the kernel crashed.
OpenRISC signal return let a local process drop memory protection
OpenRISC is a small CPU architecture used in QEMU and on FPGA boards. A local process could return from a signal with a crafted frame that turned off memory protection, then read and write any physical address.
OpenBSD's Perl could write past a heap cache during regex matching
Perl is the interpreter OpenBSD ships. Regex matching could read and write past a heap cache that was sized too small.
A QEMU guest display wrap is public, already fixed in 11.1.0
QEMU can show a guest display from a blob of guest memory. A guest-controlled offset could wrap a 32-bit number and point that display at the wrong place in the blob.
Cloud Hypervisor no longer dies when the host tap is not ready
Cloud Hypervisor sends guest packets through a host tap, a virtual ethernet pipe. If that pipe was not ready, one refused write used to shut the guest down.
A guest can abort QEMU through USB storage or a VMware NIC
USB Attached SCSI and VMware's paravirtual NIC are guest devices QEMU emulates. A guest that sent a too-small status buffer or a bogus interrupt number used to kill the QEMU process.
A bad Ceph storage server could make the client kernel read past a reply
The kernel's Ceph client parses replies from storage servers when you mount a Ceph volume or use RBD. A hostile or broken server that already has a session can send a short or garbage reply and make that client read past the end of the buffer.
A dead process-ID namespace could still take new IDs
Process IDs live in a hierarchy of namespaces, the same objects containers use to hide one group's processes from another. A mainline fix now refuses to hand out a new ID when any ancestor namespace in that chain is already dead.
OpenBSD's DHCP client read past its nameserver list when a lease sent too many
OpenBSD's DHCP client keeps a short list of nameservers from the lease. If the lease sent more than eight, verbose debug logging walked the whole buffer instead of the list and read past the end.
OpenBSD's older IKE daemon now exits if its child sends a junk bind
OpenBSD's older IKE daemon used to keep talking after its child sent a short or junk bind, so the two sides were no longer reading the same protocol. The parent now checks the payload and exits.
Cloud Hypervisor now refuses a live migrate if the destination lacks the guest's matrix CPU features
Live migrate moves a running guest to another host. Main now refuses the move if the destination cannot offer the same Intel matrix CPU features the guest already saw.
Cloud Hypervisor ARM snapshots copied one CPU's interrupt state onto the others
On ARM, a Cloud Hypervisor snapshot of a multi-CPU guest saved every CPU's interrupt-controller state as a copy of CPU 0. After restore, pending interrupts could be lost.
After a pause, Firecracker stopped completing new host connections
After a Firecracker pause and resume, new connections started from the host never completed. Guest-to-host still worked.
The kernel read past the end of a small memory map
A small memory map was asked for a field it does not have, and the kernel read one word past the end. The log does not call this a leak or a crash.
The new XML library's CVE may not apply to OpenBSD
OpenBSD -current imported a new XML parser. The CVE in that release only applies if the library is built with 16-bit characters, and the importer did not say OpenBSD ships that build.
Firecracker now rejects a huge memory request
The host control API used to accept a huge memory size and wrap it to zero bytes. Main now rejects that on the way in.
A file copy asked the wrong owner if the source was readable
When copying a file between two stacked filesystems, the kernel asked the destination's mounter if the source was readable. A read that should have been denied can go through.
A namespace admin could rewrite a tunnel that lives somewhere else
Changing a virtual tunnel checked admin rights in the wrong network namespace. A process that is admin where the device sits could rewrite a tunnel whose underlay lives elsewhere.
A stranger can make the kernel SMB server read past a short packet
The in-kernel SMB server skipped its size check on a certain short packet, then read past the request and could send those bytes back. If that server is listening, the sender does not need to log in.
A known peer can free memory the network stack still uses
A known peer can send authenticated address-change messages that free memory the stack still uses. This is not a random packet from the internet.
A load balancer could write off the stack on an error packet
A load balancer rewrites ICMP errors that bounce back through a tunnel. Leftover IPv4 option data let that rewrite copy too much onto the stack.
A timer could fire after a virtual tunnel was already torn down
A virtual tunnel that was already down could still have a cleanup timer armed. When it fired, it could write through memory that had been freed.
A guest can crash QEMU by sending a bad console message
On s390, a guest can send a console message of the wrong length and trip an assert that kills QEMU. That is a crash, not a guest-to-host escape.
A public report says a guest disk copy can smash host heap
A public QEMU bug claims a guest copy command can write off the end of a host buffer when integrity metadata and namespace sizes disagree. There is no fix, and maintainers have not confirmed it.
QEMU 11.1.0 is the security-bearing 11.1 release
QEMU 11.1.0 is out, with isolation fixes for shared folders, virtual GPU, USB, and the usual virtual NIC. This is the first 11.1 tag.
FreeBSD's built-in DNS resolver is now Unbound 1.26.0
FreeBSD moved its built-in DNS resolver to Unbound 1.26.0 on the 14 and 15 stables and on 14.5-BETA. The vendor notes name a heap write and a heap use-after-free.
FreeBSD 14.5-BETA2 is on the release branch
Testers can build 14.5-BETA2 off the release branch. The same window backed out a header change that would have broken the ABI, and announce mail is not up yet.