| DF-5825 |
High |
8.8 |
kdmsg_state_msgrx() rxcmd REPLY-direction injection unlinks transaction state from the wrong red-black tree β peer-triggered UAF with fully controlled kernel pointer dereference
sys/kern/kern_dmsg.c:810 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5833 |
High |
7.8 |
generic_elf_coredump note-size precompute race: LWP insertions between the DRYRUN and WRITE passes overflow the header reservation, the swallowed elf_putallnotes error leaves target->off past off_max, elf_puttextvp computes vnh_max from a size_t-underflowed (off_max - off), and cb_put_fp writes attacker-sized vn_hdr records past the kmalloc'd core-header buffer
sys/kern/imgact_elf.c:1012 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5844 |
Medium |
5.8 |
sysctl_sysctl_next_ls(): unbounded recursion level writes past newoid[CTL_MAXNAME] β value-controlled kernel stack smash from an unprivileged MIB walk
sys/kern/kern_sysctl.c:727 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5809 |
Medium |
5.5 |
vfs_export_lookup() returns an unref'd netcred after dropping NE_LOCK; consumers keep it across the NFS request while DELEXPORT frees it (use-after-free of the authorization credential)
sys/kern/vfs_subr.c:2297 |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5792 |
High |
5.3 |
closef() filedesc_to_leader chain walk vs fdfree() unlink+kfree: cross-lock use-after-free (unprivileged kernel fatal trap at closef+0x80)
sys/kern/kern_descrip.c:3071 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5812 |
Medium |
5.3 |
swaponvp() rounds swap size UP to the stripe boundary, publishing up to 63 pages of phantom swap per device: OOB swap I/O past device EOF and an unkillable pageout retry livelock under swap pressure
sys/vm/swap_pager.c:537 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5791 |
Low |
5.2 |
Async-attach thread races driver deregistration/device deletion: device_t has no refcount and device_detach() short-circuits DS_INPROGRESS to success, allowing device_set_driver() to free the softc/kobj while device_attach_thread() is inside DEVICE_ATTACH()
sys/kern/subr_bus.c:2005 |
latent UAF write into freed softc/device |
untested |
not_testable |
untriaged |
β |
β |
| DF-5807 |
Medium |
5.1 |
vop_write_dirent() performs an unbounded source bcopy; UFS OFSFMT readdir passes an unvalidated namlen β crafted old-format FFS image reads up to 255 bytes past the buffer-cache buffer
sys/kern/vfs_subr.c:2566 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5822 |
Medium |
4.7 |
sysctl_kern_proc() uses an unreferenced curproc->p_ucred (cr1) across blocking copyouts β ucred UAF read defeats ps_showallprocs=0 visibility filtering (unprivileged info disclosure)
sys/kern/kern_proc.c:1669 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5798 |
Low |
4.7 |
unmount_allproc_cb() mutates p->p_textnch without p->p_token, racing exec's drop/copy β namecache reference underflow to UAF potential
sys/kern/vfs_syscalls.c:777 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5788 |
Low |
3.6 |
kern_getcwd() reads fd_ncdir completely unlocked and walks the mount topology holding no mount reference β latent use-after-free racing chdir() and umount -f
sys/kern/vfs_cache.c:5076 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5826 |
Info |
3.1 |
Reader never validates DMSGF_SIZE against the base command β undersized extended headers reach command dispatch (latent type confusion)
sys/kern/kern_dmsg.c:348 |
latent type confusion |
untested |
not_testable |
untriaged |
β |
β |
| DF-5803 |
Medium |
2.5 |
expand_name() logs an unterminated, uninitialized kmalloc buffer via %s β recycled kernel-heap bytes disclosed into the user-readable kernel log
sys/kern/kern_sig.c:2453 |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5810 |
Low |
2.5 |
vtruncbuf() caches the separately-allocated nc_name pointer across unlocked blocking work, then prints it (narrow UAF read)
sys/kern/vfs_subr.c:531 |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5814 |
Low |
2.5 |
vm_pageout_page(): object->flags use-after-free READ on the failed-vget error path β page hold parks the page on PQ_HOLD but pins neither the vm_object nor (on vget failure) the vnode
sys/vm/vm_pageout.c:1254 |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5823 |
Low |
2.5 |
KERN_PROC_PGRP/KERN_PROC_TTY sysctl filters dereference the p_pgrp->pg_session->s_ttyp->t_dev chain with no p_token/pgref β TOCTOU use-after-free read against pgrp teardown (dead p_session NULL guard)
sys/kern/kern_proc.c:1736 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3157 |
High |
10.0 |
msdosfs_fhtovp feeds fully attacker-controlled NFS file-handle fields into deget/readep/deupdat: 31-byte kernel heap OOB read+write, arbitrary in-volume device-offset read/write via stat()/SETATTR, deterministic fatal kernel panic (3/3) and nfsd wedge β remotely reachable on any NFS-exported msdosfs, no crafted image needed
sys/vfs/msdosfs/msdosfs_denode.c:363 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2748 |
High |
9.1 |
Full-duplex journal ack-path loss permanently wedges all writers in uninterruptible, SIGKILL-immune kernel sleep β and mountctl -d frees the journal out from under the sleepers (demonstrated wake-through-reuse UAF)
sys/kern/vfs_journal.c:330 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3423 |
High |
9.1 |
gre_mobile_input(): neither M_HASH nor M_LENCHECKED cleared, inner ip_len double-counts the outer IP header (ANY valid mobile-GRE packet panics INVARIANTS kernels), and a truncated datagram yields a negative-length bcopy β reproduced as an unbounded kernel-heap overwrite (mbuf-metadata smash, secondary panic in m_free)
sys/net/gre/if_gre.c:237 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3398 |
High |
9.0 |
Outbound-ICMP NAT heap OOB write: byte-swapped alias_port used as icmp_in[] index (distinct generator from DF-0569/0570)
sys/net/ipfw3_nat/ip_fw3_nat.c:310 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2675 |
Critical |
8.8 |
allocbuf() maps 17 pages into the 16-page MAXBSIZE per-header KVA slot when (loffset & PAGE_MASK)+size > MAXBSIZE β PTE written into the next buffer header's slot, aliasing one page between two live kernel buffers (cross-buffer R/W, info leak, panic)
sys/kern/vfs_bio.c:3039 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3156 |
Critical |
8.8 |
Dangling RRIP NM-CONTINUE chain: cd9660_rrip_defname fallback writes the ISO name at the un-reset advanced ana->outbuf β OOB write past altname[NAME_MAX] (kernel stack, lookup) and past the isoreaddir d_name area (kernel heap, readdir); verified unprivileged uid=0
sys/vfs/isofs/cd9660/cd9660_rrip.c:276 Β· pass 2 Β· new |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3879 |
Critical |
8.8 |
dsp_mmap_single 64-bit offset-overflow bounds bypass + 32-bit truncation in sndbuf_getbufofs maps arbitrary kernel memory (b->buf + attacker-chosen ofs) read/write into user PTEs
sys/dev/sound/pcm/dsp.c:2342 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5845 |
Critical |
8.8 |
FW_ASYREQ bcopy writes to address-of-pointer xfer->send.payload - user-controlled kernel heap overwrite
sys/bus/firewire/fwdev.c:560 Β· pass 2 Β· new |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2707 |
High |
8.8 |
Duplicate transmitted DELETE re-runs the state close sequence: double RB_REMOVE on a stale node plus phantom rbtree refcount drop β state-tree corruption and premature kdmsg_state_free (UAF), peer-driven on production kernels
sys/kern/kern_dmsg.c:1667 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2755 |
High |
8.8 |
TIOCSCTTY reassignment performs unsynchronized read-modify-write of session->s_ttyvp in vn_ioctl/devfs_fo_ioctl: racing twins double-vrele() the old controlling-tty vnode β v_refcnt underflow β premature vnode destruction β use-after-free
sys/kern/vfs_vnops.c:1049 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2922 |
High |
8.8 |
proplib type confusion: unvalidated "arguments" object mtx_lock()ed as an array before type check β unprivileged kernel corruption / panic / livelock
sys/kern/vfs_quota.c:242 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3015 |
High |
8.8 |
ufs_symlink controlled kernel heap overflow via unvalidated on-disk fs_maxsymlinklen β bcopy of up to 1023 attacker bytes into the 60-byte i_shortlink, ~919 bytes past the struct inode slab chunk
sys/vfs/ufs/ufs_vnops.c:1562 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3137 |
High |
8.8 |
Unvalidated on-disk ab_freeoff used as insertion offset: controlled 12-byte kernel-heap OOB write at attacker-chosen offset (hpfs_addextent:452 / hpfs_addextentr:643 / hpfs_concatalsec:278)
sys/vfs/hpfs/hpfs_alsubr.c:278 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3138 |
High |
8.8 |
AE_SPLIT parent-fixup bcopy(ranp, AB_LASTANP(rabp), 16) writes one alnode past the entry array; split source bcopy reads past the buffer (hpfs_addextent:410 / hpfs_addextentr:599 / hpfs_splitalsec:229)
sys/vfs/hpfs/hpfs_alsubr.c:229 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4036 |
High |
8.8 |
Unclamped VBIOS SCLK/MCLK DPM counts overflow polaris10 SMC GraphicsLevel[8]/MemoryLevel[4] and the 384-byte STACK MC-arb timing table entries[8][4]
sys/dev/drm/amd/powerplay/smumgr/polaris10_smumgr.c:1000 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4475 |
High |
8.8 |
IOCATAREQUEST unclamped timeout: 1-tick completion-wait fallback completes and frees a channel-owned ata_request (UAF -> Fatal trap 12 in ata_start)
sys/dev/disk/nata/ata-all.c:486 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4515 |
High |
8.8 |
drm_prime fd_to_handle: port's dma_buf_get() drops its file reference before returning, making drm_prime.c's trailing dma_buf_put() an unbalanced fdrop β refcount underflow, premature free of dma_buf+GEM object while the prime fd and rb-tree handle are still live, and an unreference'd dma_buf* used across the whole ioctl (racing-close UAF)
sys/dev/drm/drm_prime.c:802 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4569 |
High |
8.8 |
drm_ioctl() dispatches on cmd&0xff only β never validates the user ioctl command (size/dir/group) against the canonical table entry; port dropped upstream's cmd=ioctl->cmd + canonical-size guard: kernel stack OOB write via DRM_IOCTL_GET_STATS and kernel-stack disclosure oracle via any 0-returning unauthenticated ioctl
sys/dev/drm/drm_ioctl.c:801 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4587 |
High |
8.8 |
ttm_bo_release_mmap drops an unowned OBJT_MGTDEVICE object reference on every BO revocation β premature vm_object termination under live mappings plus early ttm_bo_unref (kernel UAF)
sys/dev/drm/ttm/ttm_bo_vm.c:821 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5308 |
High |
8.8 |
usb_filter_detach() error path leaves the destroyed knote linked in the live usb_fifo klist β KNOTE() then walks freed memory and dispatches kn->kn_fop->f_event through attacker-reclaimed heap (unprivileged kernel UAF with controlled indirect call)
sys/bus/u4b/usb_dev.c:1239 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5320 |
High |
8.8 |
ucom unplug lifecycle UAF: driver softc kfree'd while the never-freed tty keeps dangling t_sc/t_oproc/t_param/t_stop and in-flight cdev dispatch follows si_drv1 into freed memory (multi-port adapters leave orphaned openable device nodes)
sys/bus/u4b/serial/usb_serial.c:543 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5752 |
High |
8.8 |
netbt hands rx mbufs to netisr_queue() (embedded netmsg) and frees them while still port-queued: the lwkt netisr port queue is operated through freed mbuf memory and corrupts (deterministic panic; same-node double-link on chunk reuse)
sys/netbt/hci_unit.c:437 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3597 |
High |
8.7 |
gfx_v8_0_parse_ind_reg_list: trailing-entry heap OOB read/write past the RLC register-list copy plus post-write BUG_ON panic
sys/dev/drm/amd/amdgpu/gfx_v8_0.c:4001 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3748 |
High |
8.3 |
STA-mode AIDβWCID truncation: rt2860_newassoc writes node pointer past wcid2ni[254] into txq[0] (remote OOB write via rogue AP)
sys/dev/netif/ral/rt2860.c:885 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3003 |
High |
8.2 |
hammer_update_itimes() in-place atime/mtime update writes past the inode record's 16KB block on crafted HAMMER1 images β no data_len validation at extraction and hammer_crc_test_leaf() accepts any wrong-length INODE record via the 0-return CRC bypass
sys/vfs/hammer/hammer_inode.c:1446 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3078 |
High |
8.2 |
ffs_reload (MNT_RELOAD) adopts the re-read superblock's geometry without validating it against the mount-time allocations β heap OOB write with attacker-controlled length and content, divide-by-zero, and heap OOB read disclosed to the media
sys/vfs/ufs/ffs_vfsops.c:484 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3106 |
High |
8.2 |
ufs_direnter compaction loop heap OOB write via crafted d_namlen (DIRSIZ >> d_reclen) with debug.dircheck=0 β attacker-controlled kernel heap corruption past directory fragment buffers
sys/vfs/ufs/ufs_lookup.c:808 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3164 |
High |
8.2 |
Failed MNT_UPDATE remount leaves mp->mnt_data dangling: use-after-free of struct udf_mnt on the live mount (double free at unmount)
sys/vfs/udf/udf_vfsops.c:153 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3167 |
High |
8.2 |
hammer_reblock_data() bcopy OOB kernel write/read: unvalidated on-disk leaf data_len/data_offset plus >16KB allocations that are not buffer-contained
sys/vfs/hammer/hammer_reblock.c:464 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3168 |
High |
8.2 |
rebalance_node trusts unvalidated on-disk B-Tree node counts: avg_elms pack loop writes past the 63-element elms[] array of the kmalloc'd 4096-byte node copies β attacker-controlled heap overflow (observed slab-metadata smash), OOB reads, and count>63 persisted to disk
sys/vfs/hammer/hammer_rebalance.c:330 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3321 |
High |
8.2 |
gif(4) decapsulation keeps the outer packet's M_LENCHECKED β inner IPv4 header never length-validated on requeue into ip_input(): one-packet unauthenticated panic on default INVARIANTS kernels, lying-length corruption on production kernels (mpls label-0 and ip_mroute X_ipip_input decaps clear neither flag)
sys/netinet/ip_input.c:489 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3381 |
High |
8.2 |
catchpacket() bh_caplen unsigned underflow: BPF_MINBUFSIZE(32) < bif_hdrlen(34/36) on x86-64 gives a ~4GiB copy into kmalloc(32) (heap overflow, deterministic panic)
sys/net/bpf.c:794 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3382 |
High |
8.2 |
Stale undersized store buffers: BIOCSBLEN after bpfdetach (bd_bif==NULL, bd_sbuf allocated) desynchronizes bd_bufsize from the kmalloc'd buffers -> ~512KiB controlled overflow past kmalloc(4096)
sys/net/bpf.c:795 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3439 |
High |
8.2 |
ipfw3 skipto stale next_rule cache: rule deletion leaves a dangling cached target; packet matching executes the freed rule (deny-all blackhole, wild filter_funcs dispatch, deterministic panic)
sys/net/ipfw3_basic/ip_fw3_basic.c:181 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3444 |
High |
8.2 |
bpf_filter() executes unvalidated BPF programs via ipfw3_layer4 check_bpf: BPF_LD|BPF_MEM/BPF_ST/BPF_STX with unchecked pc->k give arbitrary-offset kernel stack read/write and full RIP control
sys/net/bpf_filter.c:365 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4132 |
High |
8.2 |
tokenize() writes one pointer per token into the fixed 64-entry static token[] with no bound: kernel static-data overflow β control-flow hijack (kernel executes attacker bytes)
sys/dev/raid/vinum/vinumconfig.c:78 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4133 |
High |
8.2 |
vinum_scandisk() copies on-disk config lines into config_line[2048] with no length bound: ~129 KB kernel heap overflow from crafted media, before any validation
sys/dev/raid/vinum/vinumconfig.c:1621 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4140 |
High |
8.2 |
Drive free list grows without bound: OOB write past the 16-entry (256-byte) drive->freelist heap array with attacker-chosen u64 pairs from ordinary config
sys/dev/raid/vinum/vinumconfig.c:436 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4147 |
High |
8.2 |
Arbitrary kernel read/write from the CUSE server: proc_rwmem_dfly uses the server-controlled peer_ptr as the raw kernel side of copyin()/copyout()
sys/dev/misc/cuse/cuse.c:881 Β· pass 2 Β· new |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4466 |
High |
8.2 |
dm-crypt: use-after-free of target config - async completions race table destroy (suspend/reload/resume and remove paths have no in-flight drain)
sys/dev/disk/dm/crypt/dm_target_crypt.c:698 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4842 |
High |
8.2 |
kthread_stop() sleeps a fixed 1 second then lwkt_free_thread()s a struct thread DragonFly kthreads reclaim themselves β free of a live TDF_RUNNING thread (panic) or thread_cache double-entry (same struct thread handed to two owners) on every drm_sched_fini
sys/dev/drm/linux_kthread.c:89 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2739 |
Medium |
8.2 |
linker_file_unload() veto path drops the caller's reference on a failed unload β refcount underflow on a live linker_file β premature teardown under a live dependent β use-after-free
sys/kern/kern_linker.c:514 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3255 |
Medium |
8.2 |
nfs_clientd() use-after-free and double-free of the nfsmount on non-KERB NFS mounts: nfs_unmount() frees nmp (and the EINTR path's own dounmount frees both nmp and mp) while the clientd loop keeps executing against the freed memory β reproduced kernel double-free panic 2/2
sys/vfs/nfs/nfs_kerb.c:106 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4063 |
Medium |
8.2 |
fdformat() 20 s timeout double-completes its bio and recycles the pbuf under the fdc driver -> double-linked bio in fdc->bio_queue -> kernel panic (queue corruption / UAF)
sys/dev/disk/fd/fd.c:2276 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4623 |
Medium |
8.2 |
virtqueue: used-ring completion ownership never validated at runtime β duplicate/foreign (in-bounds) id underflows ndescs, cycles the descriptor free list, aliases in-flight descriptors and mis-attributes driver completion cookies
sys/dev/virtual/virtio/virtio/virtqueue.c:544 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4654 |
Medium |
8.2 |
twa: unchecked CAM cdb_len overflows the 16-byte firmware CDB field (heap/DMA-pool overflow)
sys/dev/raid/twa/tw_osl_cam.c:276 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4741 |
Medium |
8.2 |
drm_sched_fini returns without cancelling the armed work_tdr or draining ring_mirror_list β delayed-work/callout executes on the freed scheduler after driver teardown (softclock panic)
sys/dev/drm/scheduler/sched_main.c:652 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5443 |
Medium |
8.2 |
pnp_read_bytes() error path abandons the grown buffer β caller frees the stale pre-growth pointer: kernel heap double free + leak of the replacement
sys/bus/isa/pnp.c:506 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3035 |
High |
8.1 |
FFS allocator uses unvalidated on-disk cylinder-group header fields as kernel-memory offsets/indexes β crafted image gives attacker-offset OOB read/write on first allocation
sys/vfs/ufs/ffs_alloc.c:1010 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3192 |
High |
8.1 |
fuse_mount() never cross-checks args.fd with the looked-up /dev/fuse name: devfs_get_cdevpriv() returns ANY driver's per-fd private data, so a foreign fd (cuse/netmap/evdev/ipmi/nvmm) is type-confused with struct fuse_mount and a fuse_mount layout is written into the foreign live object
sys/vfs/fuse/fuse_vfsops.c:140 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3264 |
High |
8.1 |
pf_state use-after-free: pf_send_tcp() drops pf_token mid-state-operation, letting the purge thread free the in-flight state
sys/net/pf/pf.c:2254 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3272 |
High |
8.1 |
Remote peer heap out-of-bounds write via IPCP VJ Max-Slot-Id: sl_compress_init(sp->pp_comp, p[4]) unclamped, tstate[16] loop runs to peer-chosen 255
sys/net/sppp/if_spppsubr.c:2976 Β· pass 2 Β· new |
memcorrupt |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4634 |
High |
8.1 |
snd_clone_gc()/snd_clone_destroy() free pending-INVOKE clone entries under stalled openers: UAF write/read in snd_clone_acquire/ref plus a persistent unprivileged cdev+devfs-node leak that pins sound.ko unloadable
sys/dev/sound/clone.c:381 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2875 |
High |
8.0 |
Pipelined BLK_WRITE in one transaction: single-slot iost->data aux tracking frees the most-recent aux while its bio is still in flight (deterministic UAF on bp->b_data) and leaks all earlier aux
sys/kern/subr_diskiocom.c:440 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4106 |
High |
8.0 |
vge_rxeof SOF branch ignores vge_newbuf() failure: the mbuf is left referenced by BOTH the head chain and vge_rx_mbuf[]/descriptor -> double-free in vge_stop, use-after-free via if_input, NIC DMA into live/freed cluster, and RX-ring wedge -> serializer-held vge_intr livelock
sys/dev/netif/vge/if_vge.c:1294 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5737 |
Medium |
8.0 |
Event-context link teardown races the syscall transmit path with no shared locking -> use-after-free write in hci_acl_send (forged RESET completion / CREATE_CON status / discon_compl frees links a send(2) is still touching)
sys/netbt/hci_event.c:271 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2687 |
High |
7.9 |
TIOCSCTTY reassignment orphans the old tty's t_session, yielding an unprivileged use-after-free of struct session (deterministic panic; ctty hijack of recycled sessions)
sys/kern/tty.c:1190 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2857 |
High |
7.9 |
shm_deallocate_segment keeps the segment findable during its own blocking teardown: racing IPC_RMID double-deallocates the vm_object (guaranteed panic; kfree double-free door)
sys/kern/sysv_shm.c:180 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3514 |
High |
7.9 |
ng_ID_rehash/ng_name_rehash migrate hash entries only under #ifdef INVARIANTS (double-insert on production/module builds) and ng_ID_rehash destroys the old table with the WRONG mask -> 'hashdestroy: hash not empty' kernel panic (list-corruption UAF) β root cause of DF-3271's fix_failed mystery
sys/netgraph7/netgraph/ng_base.c:953 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5688 |
High |
7.9 |
idr_remove()/idr_get_node() conflate per-leaf state with the cumulative Fenwick counter: phantom decrement yields duplicate-id issuance with silent kernel-object pointer overwrite and a deterministic KKASSERT panic
sys/libkern/linux_idr.c:187 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3672 |
Medium |
7.9 |
MPT_TAG_2_REQ production macro indexes tgt_cmd_ptrs[tag_id>>18] with no bounds check β user-controlled XPT_CONT_TARGET_IO tag_id gives heap OOB read + wild request_t* dereference
sys/dev/disk/mpt/mpt_cam.c:4355 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3017 |
Critical |
7.8 |
devfs node/cdev lifetime hole: nresolveβdevfs_allocv drops devfs_lock on a raw devfs_node; concurrent unpriv pty teardown frees node+cdev β UAF write + sysref_get on freed cdev (proven panic 2/2)
sys/vfs/devfs/devfs_vnops.c:474 Β· pass 2 Β· new |
uid0 β root |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3996 |
Critical |
7.8 |
Unclamped phase offset in the envy24 DMA emulators: second-channel start writes/reads up to ~2x past the shared play/record DMA buffers β controlled 32-bit kernel heap write (S32_LE) and kernel heap disclosure to userspace
sys/dev/sound/pci/envy24.c:1414 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4012 |
Critical |
7.8 |
mps MPTIOCTL_REG_ACCESS: unvalidated u32 RegOffset gives operator-group users arbitrary kernel read/write in the 4 GiB window above the register BAR
sys/dev/raid/mps/mps_user.c:1958 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4020 |
Critical |
7.8 |
mpr MPTIOCTL_REG_ACCESS: unvalidated u32 RegOffset gives operator-group users arbitrary kernel read/write in the 4 GiB window above the register BAR (twin of DF-4012)
sys/dev/raid/mpr/mpr_user.c:2194 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2691 |
High |
7.8 |
EVFILT_SIGNAL knote use-after-free: knote stays linked into struct proc after the target is reaped; kqueue teardown runs SLIST_REMOVE on freed kernel memory
sys/kern/kern_sig.c:2667 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2778 |
High |
7.8 |
mq_notify_proc is an unreferenced struct proc *: registrant exit with an inherited descriptor leaves a dangling pointer consumed by mq_send1 (PHOLD + ksignal on freed kernel heap) β deterministic UAF with cross-process signal injection
sys/kern/sys_mqueue.c:988 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2826 |
High |
7.8 |
elf_getfiles() drops an unowned reference on the checkpoint file when fdalloc() fails: struct file refcount underflow, premature fo_close/vrele/ffree, UAF, success-masking, tempfp leak
sys/kern/kern_checkpoint.c:664 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2869 |
High |
7.8 |
tq_running single-slot with unlocked clear breaks taskqueue_cancel/drain under concurrent runners β premature-free UAF
sys/kern/subr_taskqueue.c:407 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2996 |
High |
7.8 |
nfs_sillyrename consumes nfs_lookitup() result with no error check, uninitialized np, and no identity/type validation β wild-pointer write and VDIR n_cookies type confusion; deterministic kernel panic from unprivileged unlink() against a mounted share
sys/vfs/nfs/nfs_vnops.c:3036 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3216 |
High |
7.8 |
ext2 MNT_RELOAD adopts a new block size without re-deriving um_nindir/um_bptrtodb/um_seqinc/f_iosize β mis-mapped I/O (deterministic panic), OOB read, and 4-byte-granular OOB heap write in the indirect-block walks of ext2_bmaparray/ext2_getlbns/ext2_balloc
sys/vfs/ext2fs/ext2_bmap.c:126 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3232 |
High |
7.8 |
Unvalidated fs_fragshift scales ffs_subr.c block-bitmap byte indexes up to 8x past the cylinder-group bitmap β OOB read plus single-byte 0x00/0xff OOB write at attacker-chosen offset, from one unprivileged ftruncate() on a crafted mount (silent write persisted to media)
sys/vfs/ufs/ffs_subr.c:195 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3233 |
High |
7.8 |
ffs_blkatoff hands directory code an out-of-bounds *res pointer on crafted-geometry mounts (blkoff via unvalidated fs_qbmask vs blksize-derived buffer) β unprivileged creat/touch reads and writes directory-entry data tens of KB past the buffer; deterministic fatal supervisor-write trap
sys/vfs/ufs/ffs_subr.c:80 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3250 |
High |
7.8 |
ext2_alloc_vnode EBUSY-collision handler double-frees the inode (kernel heap double-free/UAF, deterministic panic) β v_data published before ext2_ihashins, synchronous reclaim frees the handler's inode first; plus permanent lost-wakeup D-state hang in the same hand-rolled ext2fs_inode_hash_lock
sys/vfs/ext2fs/ext2_ihash.c:1313 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3368 |
High |
7.8 |
nm_bdg_preflush: unbounded NS_MOREFRAG fragment chains overrun the nkr_ft forwarding table β linear heap OOB write with attacker-chosen pointer values, u_int-wrap wild write ~4GiB above the object, and uint8 ft_frags truncation livelock
sys/net/netmap/netmap_vale.c:984 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3619 |
High |
7.8 |
Heap OOB write in ci_get_svi2_voltage_table: VBIOS dependency-table count (u8, up to 255) copied into fixed entries[32] before any trim
sys/dev/drm/amd/amdgpu/ci_dpm.c:2264 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3683 |
High |
7.8 |
Heap OOB write in phm_get_svi2_voltage_table_v0: VBIOS V0 dependency count (u8, up to 255) copied into fixed entries[32] before any trim
sys/dev/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:219 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3684 |
High |
7.8 |
Kernel stack overflow: smu7_get_sclks/smu7_get_mclks copy up to 255 VBIOS entries into amd_pp_clocks.clock[16]/latency[16] held in the caller's stack frame
sys/dev/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:4613 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3701 |
High |
7.8 |
vega10 clock getters overflow the caller's 16-entry stack array: unbounded VBIOS dep-table counts (DF-3684 twin)
sys/dev/drm/amd/powerplay/hwmgr/vega10_hwmgr.c:4115 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3703 |
High |
7.8 |
vega10 ODN tables are fixed entries[8] but filled/iterated with unbounded VBIOS dep-table counts β heap overflow of struct vega10_hwmgr
sys/dev/drm/amd/powerplay/hwmgr/vega10_hwmgr.c:310 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3705 |
High |
7.8 |
vega10 SMC PPTable populate loops write 8-entry SMC arrays (CksEnable/CksVidOffset, StaticVoltageOffsetVid, UvdDpmVoltageIndex, SocVid) with unbounded dep-table counts
sys/dev/drm/amd/powerplay/hwmgr/vega10_hwmgr.c:1700 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3783 |
High |
7.8 |
BT848SCLIP / capture geometry β unbounded RISC program emission overflows the fixed 8-page dma_prog/odd_dma_prog buffers (up to 37Γ; also clip-less via 2046-row odd-only YUV4:2:2)
sys/dev/video/bktr/bktr_core.c:1219 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3787 |
High |
7.8 |
METEORSSIGNAL stores td->td_proc without a reference and video_close() never clears it β frame-completion interrupt ksignal()s a freed struct proc (UAF from interrupt context)
sys/dev/video/bktr/bktr_core.c:1485 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3789 |
High |
7.8 |
METEORSETGEO accepts frames=0 β bigbuf resize block skipped entirely β oversized rows/cols stored β 626,696-byte OOB RISC-DMA write and OOB read() heap disclosure with the default RGB16 format (no SACTPIXFMT; distinct trigger from DF-1216)
sys/dev/video/bktr/bktr_core.c:1642 Β· pass 2 Β· new |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3790 |
High |
7.8 |
bktr_filter_detach() calls knote_insert() instead of knote_remove() β destroyed knote left on (or self-looped into) the VBI klist β KNOTE() from the frame interrupt dereferences freed memory / hard hang (root cause bktr_os.c, sink bktr_core.c:705)
sys/dev/video/bktr/bktr_core.c:705 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3796 |
High |
7.8 |
ena_down tears down IO queues and frees RX buffers without draining the deferred RX cleanup task (mbuf UAF / double free)
sys/dev/virtual/amazon/ena/ena.c:2611 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3797 |
High |
7.8 |
Device-supplied register offsets from CREATE_SQ/CREATE_CQ replies cached unvalidated β every doorbell/unmask becomes an arbitrary-offset kernel write by the guest CPU
sys/dev/virtual/amazon/ena/ena.c:1049 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3838 |
High |
7.8 |
32-bit wraparound family in evergreen CS surface-size validation ((slice+1)*64 wrap β nby=0/layer_size=0; layer_size*mslice u32 product wrap; <<8 base-offset truncation vs 40-bit GPU addresses; htile nbx*nby*4 wrap; streamout <<8 and *4 wrapped before the u64 check) β CS validator bypass β GPU OOB read/write past BO, cross-process GPU memory corruption
sys/dev/drm/radeon/evergreen_cs.c:404 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3914 |
High |
7.8 |
Unbounded firmware NumSlots heap OOB write in the direct-attached enclosure reservation path (_mapping_get_dev_info/_mapping_get_pcie_dev_info)
sys/dev/raid/mpr/mpr_mapping.c:1243 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4009 |
High |
7.8 |
NVMe-encapsulated pass-thru: unvalidated u32 DataSize drives PRP walk past the 8MiB arena (deterministic OOB write); kmalloc result unchecked
sys/dev/raid/mpr/mpr_user.c:904 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4013 |
High |
7.8 |
mps FW-diag state machine: shared DMA trio + stale per-type size yields OOB kernel disclosure, cross-type free, UAF read, and double free (DF-4008 mpr twin, worse)
sys/dev/raid/mps/mps_user.c:1376 Β· pass 2 Β· new |
panic |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4028 |
High |
7.8 |
CS validator rewrites ib[0] after validation: cb_color_size_idx defaults to 0 (full r600 CS validator bypass)
sys/dev/drm/radeon/r600_cs.c:309 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4031 |
High |
7.8 |
Tracked offsets wrap in u32 while the GPU addresses 40 bits: streamout size raw*4 and base<<8 truncation validate the WRONG offset
sys/dev/drm/radeon/r600_cs.c:721 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4085 |
High |
7.8 |
Unvalidated IOC-pg8 MaxNumPhysicalMappedIDs used as num_slots: heap OOB write in _mapping_process_dpm_pg0 reservation loop
sys/dev/raid/mps/mps_mapping.c:1512 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4092 |
High |
7.8 |
Unvalidated IOC-pg8 MaxNumPhysicalMappedIDs used as num_slots: heap OOB write in mpr _mapping_process_dpm_pg0 reservation loop (twin of DF-4085)
sys/dev/raid/mpr/mpr_mapping.c:2216 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4231 |
High |
7.8 |
txp(4) trusts NIC-fed rxd->rx_len: unbounded m_copydata heap OOB read+write past mbuf clusters
sys/dev/netif/txp/if_txp.c:676 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4233 |
High |
7.8 |
txp_init() ignores txp_rxring_fill() failure and enables RX over a stale buffer ring: firmware DMA into freed clusters + NULL deref
sys/dev/netif/txp/if_txp.c:1127 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4329 |
High |
7.8 |
i915 request-object RCU lifetime protocol is a no-op on DragonFly: empty synchronize_rcu()/cond_synchronize_rcu(), ignored SLAB_TYPESAFE_BY_RCU, unconditional dma_fence_get_rcu β lockless readers (GEM_BUSY) race freed-and-reused request memory and chase attacker-influenced pointers
sys/dev/drm/i915/i915_request.c:732 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4363 |
High |
7.8 |
mps_config_get_man_pg10 allocates a fixed 0x5C-byte buffer but DMAs firmware PageLength*4 bytes into it - kernel heap overflow (the file's only fixed-size page allocation)
sys/dev/raid/mps/mps_config.c:249 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4412 |
High |
7.8 |
radeon_vm_get_bos() TOCTOU on vm->max_pde_used β kernel heap out-of-bounds write via racing GEM_VA/CS
sys/dev/drm/radeon/radeon_vm.c:135 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4451 |
High |
7.8 |
Heap out-of-bounds write (4 sites) from temporal divergence of _CRS/_PRS evaluations β pl_links sized by one evaluation, indexed by a later one
sys/dev/acpica/acpi_pci_link.c:235 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4506 |
High |
7.8 |
i915_gem_context unlocked handle lookups race idr_grow's synchronous kfree of the IDR node array (DragonFly shim has no RCU) -> use-after-free read returns attacker-groomed contents as struct i915_gem_context *
sys/dev/drm/i915/i915_gem_context.c:831 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4510 |
High |
7.8 |
drm_syncobj: lockless drm_syncobj_fence_get() races drm_syncobj_replace_fence()'s outside-the-lock dma_fence_put() of the old fence β rcu_read_lock() is only preempt_disable() on DragonFly and the last put kfree()s synchronously, so a cross-CPU waiter kref_get()s freed memory and then dispatches through the freed fence's ops: unprivileged kernel heap UAF (read+write) via render-node syncobj ioctls on i915/amdgpu
sys/dev/drm/drm_syncobj.c:182 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4531 |
High |
7.8 |
drm_clients_info() walks dev->filelist under the wrong lock with a sleeping kmalloc between a count pass and an unbounded copy pass: concurrent open()/close() yields a kernel heap OOB write (or UAF read)
sys/dev/drm/drm_file.c:268 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4559 |
High |
7.8 |
sassc->targets[] sized facts->MaxTargets but IR volume mapping IDs run to MaxTargets+MaxVolumes-1: mpssas_volume_add and the IR-config REMOVED branch write out of bounds (fw-controlled u64 at fixed offset)
sys/dev/raid/mps/mps_sas_lsi.c:847 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4604 |
High |
7.8 |
radeon_gem_va_ioctl: bo_va use-after-free β set_addr() drops the BO reservation internally, then radeon_gem_va_update_vm() dereferences bo_va unprotected while a racing GEM_CLOSE on the same DRM fd frees it
sys/dev/drm/radeon/radeon_gem.c:693 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4631 |
High |
7.8 |
radeon MST destroy_connector frees a kref-counted drm_connector raw (drm_connector_cleanup+kfree from the topology worker): UAF for in-flight ioctls, double kfree via the kref release path, and an unbounded per-flap fake-encoder leak
sys/dev/drm/radeon/radeon_dp_mst.c:288 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4635 |
High |
7.8 |
radeon_audio: enc_priv type confusion β radeon_encoder_lvds* consumed as radeon_encoder_atom_dig* on LCD-carrying digital encoders (eDP) β dig->pin/dig->afmt OOB read/write into the ADJACENT 288-byte slab chunk + wild MMIO deref
sys/dev/drm/radeon/radeon_audio.c:262 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4646 |
High |
7.8 |
nvme(4) device teardown vs in-flight data-path I/O: use-after-free of the namespace softc and I/O queues -> kernel divide-by-zero panic (Fatal trap 18 in nvme_get_request)
sys/dev/disk/nvme/nvme_disk.c:115 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4665 |
High |
7.8 |
smu_get_voltage_dependency_table_ppt_v1 copies VBIOS-controlled count records into callers' fixed entries[8] ODN tables β heap OOB write of struct smu7_hwmgr (up to 6916 attacker-controlled bytes)
sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c:675 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4740 |
High |
7.8 |
drm_sched_job_recovery re-runs completed jobs across its unlocked run_job() window racing drm_sched_job_finish β UAF (job + drm_sched_fence freed, parent write and cb armed inside freed heap, panic on signal)
sys/dev/drm/scheduler/sched_main.c:368 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4748 |
High |
7.8 |
Use-after-free of amdgpu_dm_connector via stale dc_sink->priv in the dm MST payload/DPCD helpers (connector kfree'd while an enabled stream's dc_sink keeps the back-pointer alive)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c:197 Β· pass 2 Β· new |
memcorrupt |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4853 |
High |
7.8 |
evergreen_hdmi_enable / evergreen_dp_enable consume lvds-typed enc_priv as radeon_encoder_atom_dig on the eDP dpms path: dig->afmt OOB read at +288 into the adjacent slab chunk β guard falls through β wild deref feeding six WREG32 MMIO sites + dig->afmt->enabled write-through (DF-4635/DF-4828 family, new sinks; corrects DF-4828's dpms-route dismissal)
sys/dev/drm/radeon/evergreen_hdmi.c:429 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4864 |
High |
7.8 |
amdgpu_vm_clear_bo() 64-byte IB overrun: the ATS root-PD clear emits two 10-dword set_pte_pde packets + SDMA pad (24 dwords) into a 16-dword (64-byte) SA sub-allocation β deterministic 32-byte kernel heap OOB write per GPU-VM create on every AMD Raven APU
sys/dev/drm/amd/amdgpu/amdgpu_ring.c:107 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5008 |
High |
7.8 |
amdgpu_vram_mgr_new: non-power-of-two pages_per_node breaks the num_nodes bound β one-struct heap OOB write past the kvmalloc_array node array, unprivileged via GEM_CREATE in.alignment
sys/dev/drm/amd/amdgpu/amdgpu_vram_mgr.c:183 Β· pass 2 Β· new |
heap-oob-write (kernel-space primitive reproduced: verbatim amdgpu_vram_mgr_new loop + real in-kernel drm_mm wrote a live drm_mm_node 184 bytes past a 1-element kvmalloc_array and clobbered a neighboring heap object; full unpriv-ioctl entry point hardware-gated - amdgpu binds only on AMD ASICs, QEMU guest has none, amdgpu.ko confirmed buildable+loadable module on DF) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5169 |
High |
7.8 |
i915_clflush_work() self-frees its container inside the work callback; DFly LinuxKPI process_all_work() then UAF-reads/writes the freed struct (work->worker=NULL 8-byte NULL write, work->running=false 1-byte zero write, wakeup on dangling channel)
sys/dev/drm/i915/i915_gem_clflush.c:89 Β· pass 2 Β· new |
kernel heap UAF write (memory corruption): 8-byte NULL write at freed-object +16 (work->worker) and 1-byte zero at +25 (work->running) into attacker-reclaimable M_DRM-class memory, plus wakeup() on a dangling wait channel; deterministic primitive proof without panic; reliable uid=0 chain not developed (trigger needs pre-LLC Intel GPU, not emulatable in QEMU) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5200 |
High |
7.8 |
kthread_park() provides no quiescence: returns without waiting for the target to park while kthread_parkme() never deschedules - the park/unpark contract drm_sched_entity_fini() and amdgpu GPU-reset rely on is void, giving a deterministic use-after-free on entity teardown
sys/dev/drm/linux_kthread.c:103 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5271 |
High |
7.8 |
cdgetpage/find_mode_page_* trust device-controlled mode-header blk_desc_len: heap OOB read+write in all CD audio ioctls
sys/bus/cam/scsi/scsi_cd.c:3437 Β· pass 2 Β· new |
device-directed kernel heap OOB write + OOB read (4 fully user-chosen bytes per ioctl at any offset up to ~64KB past a 32-byte kmalloc chunk, device-chosen offset via 16-bit blk_desc_len, unlimited repetitions; OOB read returns 4 heap bytes per ioctl to userland). Root-gated entry (caps_priv_check_self SYSCAP_RESTRICTEDROOT at cdopen) with attacker-controlled SCSI/USB 'CD-ROM' hardware - same threat model as known DF-0987/DF-2268. |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5292 |
High |
7.8 |
Beacon mbuf write-after-free across disjoint lock domains: rum_update_beacon's unlocked ieee80211_beacon_update window vs m_freem in rum_newstate/rum_vap_delete
sys/bus/u4b/wlan/if_rum.c:2825 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5413 |
High |
7.8 |
FW_SSTBUF -> 32-bit nchunk*npacket wrap in fwdev_allocbuf -> 0-segment fwdma buffer -> fwdma_v_addr() OOB seg[0] -> controlled kernel write (and read) via production fw_write/fw_read
sys/bus/firewire/fwdev.c:504 Β· pass 2 Β· new |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5434 |
High |
7.8 |
REQBUFS-while-streaming frees bq->mem without draining product/consumer queues or resetting descriptors: USB completion engine writes frame data into freed kernel memory (UAF write) and, after a frame-size shrink, stale vbuf.bytesused underflows the bulk maxlen giving a controlled-offset heap OOB write
sys/bus/u4b/uvc/uvc_buf.c:517 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5740 |
High |
7.8 |
hci_socket.c mutates socket buffers from the NETISR thread with no synchronization (hci_mtap sbappendaddr vs soreceive, hci_drop sbdroprecord vs sbappendrecord) and hands the TX-completion callback a reference-free socket pointer that survives teardown (cmdwait ctx TOCTOU β post-detach hci_drop UAF)
sys/netbt/hci_socket.c:1004 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5780 |
High |
7.8 |
hci_memo_find/hci_memo_new/hci_memo_free operate on unit->hci_memos with zero synchronization while concurrently reachable from unprivileged user context, netisr-0 and softclock β double-free and write-after-free of 48-byte hci_memo records
sys/netbt/hci_misc.c:124 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2949 |
Medium |
7.8 |
cttyclose() takes its tty-vnode reference with vref() racing the terminal vrele() of concurrent ctty teardowns β vref: bad refcnt panic (INVARIANTS) / freelist vnode resurrection (stock)
sys/kern/tty_tty.c:153 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3481 |
Medium |
7.8 |
ng_ppp mutates its entire private state (frag TAILQ, qlen, mseq/xseq, activeLinks, conf) with zero synchronization across concurrent v1 execution contexts β double TAILQ_REMOVE/kfree/m_freem (UAF-class) if raced; empirically contained on stock socket-fed topologies but one feeder refactor away
sys/netgraph/ppp/ng_ppp.c:1144 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3845 |
Medium |
7.8 |
OCR return-to-CAM flush races the lock-free ISR completion path: only a 1-second DELAY heuristic separates two unsynchronized mrsas_cmd_done callers (double xpt_done / duplicated free-list entry); timeout callout re-arms 600 s on recycled commands
sys/dev/raid/mrsas/mrsas.c:2324 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4054 |
Medium |
7.8 |
SMU-firmware-fed DPM level count stored unclamped: vega12_setup_single_dpm_table fill loop writes past dpm_levels[16] β firmware-controlled linear heap overflow of the kzalloc'd vega12_hwmgr backend
sys/dev/drm/amd/powerplay/hwmgr/vega12_hwmgr.c:481 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4148 |
Medium |
7.8 |
UAF/double-free race: in-flight cuse_client_open vs final cuse_server_unref (async destroy_dev, refs++ after the final decrement)
sys/dev/misc/cuse/cuse.c:1509 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4255 |
Medium |
7.8 |
agp_i915_write_gtt programs GTT PTEs into the MMADR register BAR (sc_res[0]) instead of GTTADR (sc_res[1]): GPU-register corruption incl. PGTBL_CTL hijack at PTE index 0x808, and OOB writes past the mapped MMADR resource for PTE indices >= 32768
sys/dev/agp/intel-gtt.c:998 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4325 |
Medium |
7.8 |
sf_txeof() trusts DMA-written 15-bit TX completion index: OOB descriptor read feeds arbitrary pointer to m_freem(), OOB NULL write, and sf_tx_cnt underflow
sys/dev/netif/sf/if_sf.c:998 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4326 |
Medium |
7.8 |
sf_rxeof() trusts DMA-written 11-bit endidx: sf_newbuf() OOB-writes mbuf pointer + DMA address up to 12KB past the entire contigmalloc'd descriptor block
sys/dev/netif/sf/if_sf.c:940 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4439 |
Medium |
7.8 |
drm_atomic_state holds no drm_device reference while nonblocking commits outlive the ioctl on system_unbound_wq β missing backport of Linux 4e076c73e4f6 (stable-fix use-after-free)
sys/dev/drm/drm_atomic.c:77 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4469 |
Medium |
7.8 |
drm_crtc_helper_set_config() sizes save_connector_encoders with the racy num_connector while iterating the live list β concurrent DP-MST connector registration (spinlock-only) writes one pointer past the kcalloc'd array, and the fail path reads the OOB slot back into connector->encoder (heap OOB write + forged-pointer injection)
sys/dev/drm/drm_crtc_helper.c:571 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4497 |
Medium |
7.8 |
sbsh: deactivate() drops xq/rq mbufs but leaves stale pointers - TXS/RXS/UFL processing after carrier loss (or after ifconfig down) double-frees / uses freed mbufs
sys/dev/netif/sbsh/if_sbsh.c:726 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5033 |
Medium |
7.8 |
UAF/OOB-read race in amdgpu_bo_list_get(): DragonFly's idr_find() is lockless while idr_grow() kfree()s the node array synchronously (Linux RCU-safe-idr assumption does not hold)
sys/dev/drm/amd/amdgpu/amdgpu_bo_list.c:167 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5186 |
Medium |
7.8 |
DRM_UNLOCKED dumb-buffer MAP_DUMB races the unsynchronized legacy GEM offset-hash publication: live-key free_unr double-free, same-node dual-bucket hlist link, and wrong-object resolution in the mmap path (cross-object / UAF-class mapping ceiling)
sys/dev/drm/drm_dumb_buffers.c:115 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5337 |
Medium |
7.8 |
userenter() ucred cache race β vkernel twin missing pc64's p_spin interlock: unlocked crhold races cratom_proc's swap+crfree, giving crhold-on-freed (M_CRED UAF) from unprivileged in-vkernel userland
sys/platform/vkernel64/x86_64/trap.c:167 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5370 |
Medium |
7.8 |
bus_dmamap_destroy() frees a map still queued for a deferred load (EINPROGRESS) -> write-after-free with attacker-followed map->dmat pointer and permanent zone wedge (vkernel twin of pc64 DF-5347)
sys/platform/vkernel64/platform/busdma_machdep.c:383 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5420 |
Medium |
7.8 |
pmap_inval_smp()/pmap_inval_smp_cmpset() shortcut samples pmap->pm_active outside the CPULOCK_EXCL interlock (and takes none for non-PMAP_MULTI pmaps); originator also returns before target done-bits drain
sys/platform/pc64/x86_64/pmap_inval.c:282 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4629 |
Low |
7.8 |
mpt_user: DMA page buffer freed on ioctl timeout while the deliberately-abandoned request still points at it β late IOC completion DMAs into freed kernel heap
sys/dev/disk/mpt/mpt_user.c:259 Β· pass 2 Β· new |
Kernel heap corruption by device DMA: late IOC completion writes up to len bytes into freed (reallocatable) heap |
untested |
not_testable |
untriaged |
β |
β |
| DF-2902 |
High |
7.6 |
mbrinit/mbr_extended trust device-reported d_media_blksize β up to 2 GiB synchronous read into a MAXPHYS (128 KB) pbuf: assertion-cast bypass (all kernels) or INVARIANTS panic; proven OOB write with attacker-controlled content/length
sys/kern/subr_diskmbr.c:127 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3881 |
High |
7.6 |
Unbounded MST topology depth (LCT) -> OOB stack/heap writes and unbounded kernel recursion from malicious hub
sys/dev/drm/drm_dp_mst_topology.c:1052 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5276 |
High |
7.6 |
pci_read_vpd(): zero-length VPD identifier string causes unbounded sequential kernel heap overflow (device-controlled content and length)
sys/bus/pci/pci.c:1108 Β· pass 2 Β· new |
memcorrupt |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5392 |
High |
7.6 |
PnP isa_config count fields trusted unvalidated at the ISA_ADD_CONFIG boundary; pnp_check_quirks' unbounded ic_nport++ defeats pnpparse's == clamps β attacker-indexed OOB kernel-heap writes at boot (persisted by isa_add_config, panic via count consumer)
sys/bus/isa/isa_common.c:938 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5396 |
High |
7.6 |
urndis(4) bulk RX: device-controlled rm_datalen up to MCLBYTES copied after m_adj(ETHER_ALIGN) β 2-byte kernel heap overflow past a 2048-byte slab chunk (fixed upstream in FreeBSD 11 years ago, never synced)
sys/bus/u4b/net/if_urndis.c:859 Β· pass 2 Β· new |
memcorrupt |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5406 |
High |
7.6 |
HID report-descriptor Push/Pop items drive the parser's pushlevel out of range; hid_get_item() re-derives c = &s->cur[pushlevel] out of bounds on the next call β kernel heap read/write with device-chosen offset and content
sys/bus/u4b/usb_hid.c:248 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2998 |
High |
7.5 |
Server attributes freely retype live vnodes in nfs_loadattrcache (VREGβVDIR observed live; VCHR/VBLK with server-chosen rdev via addaliasu + v_ops switch) β device-node injection and buffer-cache type confusion through every attribute load in this file
sys/vfs/nfs/nfs_vnops.c:2903 Β· pass 2 Β· new |
kernel type confusion -> deterministic panics (two new independent memory-corruption sinks) + server-driven device-node injection into the local namespace |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3061 |
High |
7.5 |
nfs_namei() retry protocol leaks locked namecache state and nfsrv_rename()'s retry drives double-releases β remote NFS client can panic the kernel
sys/vfs/nfs/nfs_subs.c:1003 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3172 |
High |
7.5 |
ffs_indirtrunc wild and attacker-aimed kernel bzero via unvalidated on-disk fs_nindir and unclamped lastbn
sys/vfs/ufs/ffs_inode.c:535 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3388 |
High |
7.5 |
wg peer teardown races in-flight noise consumers: wg_peer freed via uncounted r_arg and r_index re-linked after handshake_clear (use-after-free)
sys/net/wg/wg_noise.c:596 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3843 |
High |
7.5 |
mrsas_sync_map_info writes firmware-controlled ldCount Γ 4-byte entries into a fixed 172,200-byte RAID-map DMA buffer β unbounded linear kernel heap overflow (computed bound size_sync_info is dead code)
sys/dev/raid/mrsas/mrsas.c:3207 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3886 |
High |
7.5 |
drm_dp_sideband_msg_build msg[256] accumulation overrun: up to 61 hub-controlled bytes past msg_rx->msg (distinct sink from DF-1264)
sys/dev/drm/drm_dp_mst_topology.c:371 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3908 |
High |
7.5 |
Kernel stack OOB write in tonga_program_memory_timing_parameters: VBIOS-controlled SCLK/MCLK DPM counts index fixed stack table arb_regs.entries[8][4]
sys/dev/drm/amd/powerplay/smumgr/tonga_smumgr.c:1492 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-3909 |
High |
7.5 |
Heap OOB writes into smc_state_table.GraphicsLevel[8]/MemoryLevel[4] via unclamped VBIOS SCLK/MCLK DPM counts (incl. unguarded MemoryLevel[count-1] store)
sys/dev/drm/amd/powerplay/smumgr/tonga_smumgr.c:709 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-3939 |
High |
7.5 |
Kernel stack OOB write in ci_program_memory_timing_parameters: VBIOS SCLK/MCLK DPM counts index fixed stack table arb_regs.entries[8][6] (DF-3908 twin)
sys/dev/drm/amd/powerplay/smumgr/ci_smumgr.c:1653 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3940 |
High |
7.5 |
Heap OOB writes into kzalloc'd struct ci_smumgr via unclamped VBIOS MCLK DPM count vs SMU7_MAX_LEVELS_MEMORY=6: MemoryLevel[6..7], unguarded MemoryLevel[count-1], mc_regs->data[6..7], mclk_levels[MemoryDpmLevelCount] (DF-3909 twin)
sys/dev/drm/amd/powerplay/smumgr/ci_smumgr.c:1314 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4000 |
High |
7.5 |
Unclamped VBIOS SCLK/MCLK DPM counts overflow the iceland SMC state tables and the 384-byte stack MC-arb table: GraphicsLevel[8], MemoryLevel[4], arb_regs.entries[8][4] (kernel STACK), mc_regs.data[4] β DF-3908/3909/3939/3940 family with iceland's tighter mclk bound (count 5 suffices)
sys/dev/drm/amd/powerplay/smumgr/iceland_smumgr.c:980 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-5254 |
High |
7.5 |
Beacon mbuf use-after-free write: urtwn_update_beacon's unlocked ieee80211_beacon_update window races setup_beacon/vap_delete across disjoint lock domains
sys/bus/u4b/wlan/if_urtwn.c:2206 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5288 |
High |
7.5 |
USB_FS_UNINIT racing USB_FS_START/STOP/COMPLETE on a shared ugen fd: f->fs_xfer array kfree'd/NULLed without priv_lock while consumers snapshot f->fs_xfer[ep_index] unlocked β kernel page-fault/GPF panic (groomable use-after-free)
sys/bus/u4b/usb_transfer.c:972 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5314 |
High |
7.5 |
USB_FS_CLOSE is unserialized: concurrent closes double-run usbd_transfer_unsetup() on one xfer (kernel panic via setup_refcount assert; refcount_alloc underflow β permanent endpoint lockout on no-assert kernels) and CLOSEΓSTART leaves stale-xfer UAF writes into freed memory
sys/bus/u4b/usb_generic.c:1558 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3180 |
Medium |
7.5 |
tmpfs_fhtovp passes an unpinned tmpfs_node to tmpfs_alloc_vp; blocking releases the mount token and reclaim frees the node under the caller (window proven by on-guest panic from fhopen race; stock kernels reach a use-after-free at tmpfs_subr.c:382)
sys/vfs/tmpfs/tmpfs_vfsops.c:453 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3547 |
Medium |
7.5 |
Use-after-free of struct ngd_private in all cdevsw methods: disconnect frees priv immediately after DragonFly's asynchronous destroy_dev()
sys/netgraph7/ng_device.c:299 Β· pass 2 Β· new |
none |
build_failed |
not_testable |
untriaged |
β |
β |
| DF-3679 |
Medium |
7.5 |
igb_rxeof trusts NIC-DMA'd descriptor length with no posted-buffer bound: unbounded m_len/m_pkthdr.len β heap OOB read up to 63,487 bytes past the 2046/2048-byte RX cluster (DF-3604/3639/3663/3667 family)
sys/dev/netif/igb/if_igb.c:2744 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4053 |
Medium |
7.5 |
Sense-data memcpy has dst/src swapped vs FreeBSD: autosense never delivered (all-zero sense + CAM_AUTOSNS_VALID) and device-controlled copy length overflows struct vtscsi_request when a pass CCB carries sense_len > 96
sys/dev/virtual/virtio/scsi/virtio_scsi.c:1383 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4454 |
Medium |
7.5 |
evdev driver teardown frees evdev_dev under open clients and in-flight writes: use-after-free with cross-object event injection and kernel wedge
sys/dev/misc/evdev/evdev.c:98 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5165 |
Medium |
7.5 |
request_irq admits duplicate (irq,dev_id) registration and its failure path releases/NULLs pdev-global IRQ state owned by live registrations β armed handler left on released resource/MSI vectors (interrupt-time UAF), orphaned handler with dangling dev_id, NULL-resource crash on retry, double-release at teardown
sys/dev/drm/linux_irq.c:75 Β· pass 2 Β· new |
interrupt-context UAF / orphaned armed handler / cross-device teardown |
untested |
not_testable |
untriaged |
β |
β |
| DF-2740 |
Low |
7.5 |
Inconsistent locking of linker shared state: sys_kldload userrefs++/id read outside kld_lock (UAF-write window), unlocked refs mutations, and unlocked linker_files/found_modules traversals racing KPI loaders
sys/kern/kern_linker.c:814 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5162 |
Low |
7.5 |
bktr_mem stored-address registry is never invalidated when the METEORSETGEO grow path frees the frame buffer β driver reload reinstalls the freed KVA, bzeros ~3.5 MB and RISC-DMAs video into reallocated kernel memory (write-after-free)
sys/dev/video/bktr/bktr_mem.c:103 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3938 |
Info |
7.5 |
Latent device-controlled-length memcpy in ena_com_get_hash_function(): keys_num (u32 in device-DMA buffer) << 2 as copy size
sys/dev/virtual/amazon/ena/ena-com/ena_com.c:2354 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3344 |
High |
7.4 |
lagg port-detach handler registered on never-fired ifnet_departure_event: persistent kernel UAF after member interface destroy
sys/net/lagg/if_lagg.c:218 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3520 |
High |
7.4 |
Negative-length bcopy in ng_pptpgre ack processing: one in-window ack converts the DF-0596 window violation into an unbounded kernel OOB read+write
sys/netgraph/pptpgre/ng_pptpgre.c:641 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3962 |
High |
7.4 |
mvfrey CCB-timeout callout runs iop_intr without the adapter lock, racing the locked hard-IRQ drain: double srb completion (double free to freelist + double xpt_done β CAM UAF); plus 60s DELAY busy-loop in softclock and the timed-out CCB is never completed
sys/dev/raid/hptiop/hptiop.c:2647 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4066 |
High |
7.4 |
ti_rxeof indexes the mbuf chain arrays with the NIC-DMA'd uint16_t return-descriptor ti_idx and no bounds check: OOB pointer read used as struct mbuf (wild-pointer stores at :1690 + if_input type confusion) and OOB 8-byte NULL write up to +512KB past the chain arrays inside struct ti_softc
sys/dev/netif/ti/if_ti.c:1638 Β· pass 2 Β· new |
none observed (hardware-gated); source-level: kernel OOB write (8-byte NULL store up to +512KB past chain array) + wild-pointer mbuf writes + type confusion into ether_input via NIC-DMA'd uint16_t descriptor index |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4797 |
High |
7.4 |
nata ad(4) teardown race: ad_strategy/ad_done (and the disk-layer close path) vs ad_detach β use-after-free of the ad_softc/struct disk and near-NULL writes; reproduced fatal trap 12
sys/dev/disk/nata/ata-disk.c:167 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5240 |
High |
7.4 |
xpt_scan_bus() create-path failure branch frees the in-flight XPT_SCAN_LUN CCB and scan_info (kernel UAF, deterministic panic)
sys/bus/cam/cam_xpt.c:5394 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5258 |
High |
7.4 |
sc_epq[MTW_BULK_RX] is a zero-length array: the 6 TX endpoint queues alias 14 KB of live mtw_softc fields; every ifconfig-up stamps over them and every channel change (sc_chan_group) forges the upper dword of epq[0].tx_data[3].ni, a live ieee80211_node pointer
sys/bus/u4b/wlan/if_mtw.c:4466 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5738 |
High |
7.4 |
hci_link_free() ignores the SCO->ACL anchor reference: anchored ACL teardown leaves hl_refcnt==1 -> KKASSERT panic on INVARIANTS kernels, silent kfree + dangling SCO->hl_link (fatal UAF demonstrated) on production GENERIC kernels
sys/netbt/hci_link.c:810 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3518 |
Medium |
7.4 |
ng_pptpgre priv UAF: rmnode kfree(priv) races in-flight rcvdata/rcvmsg dispatched inline without a node reference
sys/netgraph/pptpgre/ng_pptpgre.c:437 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3519 |
Medium |
7.4 |
Non-atomic node->refs++ / priv->timers++ in ng_pptpgre timer start vs ng_unref β lost update frees live ng_node (UAF)
sys/netgraph/pptpgre/ng_pptpgre.c:768 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3961 |
Medium |
7.4 |
SG-capacity heap overflow: firmware-fed max_sg_count writes scatter-gather entries past the 34-entry capacity of srb->req[600] into srb->hba/ccb/next/dma_map (itl non-highmem, mv, mvfrey paths)
sys/dev/raid/hptiop/hptiop.c:2471 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5242 |
Medium |
7.4 |
xpt_release_device() uses non-joining callout_stop before kfree(device) β xpt_release_devq_timeout can already be blocked on CAM_SIM_LOCK(device->sim) and then operate on the freed cam_ed (UAF; upstream defers the free)
sys/bus/cam/cam_xpt.c:4790 Β· pass 2 Β· new |
heap OOB comparison oracle / race-gated UAF / accounting drift |
untested |
not_testable |
untriaged |
β |
β |
| DF-4421 |
Low |
7.4 |
ich_pci_attach() publishes the 0666 /dev/mixerN (mixer_init) before five failure paths whose bad: unwind frees the AC97 codec and softc β dangling mixer cdev UAF on open/ioctl (DF-4156/4193/4299/4334/4344 family, 6th instance, widest window in family)
sys/dev/sound/pci/ich.c:1031 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4726 |
Low |
7.4 |
aureal: BAR loop stores tags/handles for up to 6 BARs into au->st[3]/au->sh[3] β OOB kernel write over sh[], parent_dmat and lock at attach (crafted-PCI-device threat model)
sys/dev/sound/pci/aureal.c:571 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4568 |
Info |
7.4 |
CT teardown frees the shared CT page while GuC interrupts are still enabled and guc->handler still points at CT code β interrupt-context use-after-free read+write of the released descriptor mapping
sys/dev/drm/i915/intel_guc_ct.c:898 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3146 |
High |
7.3 |
RRIP NM length underflow in cd9660_rrip_altname: u_short wrap rewinds the name output pointer by 65536*N β controlled OOB write at a wild kernel address (heap via readdir, kstack via lookup) or bcopy((size_t)-1) panic
sys/vfs/isofs/cd9660/cd9660_vnops.c:542 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3195 |
High |
7.3 |
nfs_inactive/nfs_reclaim discriminate the n_un3 union (sillyrename vs dir-cookie list) by the runtime-mutable v_type β a server-side VREGβVDIR retype of a sillyrenamed file makes reclaim walk the struct sillyrename as an nfsdmap list: kfree(M_NFSREQ block as M_NFSDIROFF), then kfree of the live s_cred ucred, then wild-pointer deref β deterministic kernel panic (verified 2/2), fix validated on rebuilt kernel
sys/vfs/nfs/nfs_node.c:392 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3690 |
High |
7.3 |
Adaptec parser: unbounded 16-bit total_disks zeroing loop β massive deterministic kernel heap OOB write at first metadata parse
sys/dev/disk/nata/ata-raid.c:1685 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3691 |
High |
7.3 |
No parser validates array width β RAID0/5 strategy indexes disks[] OOB via user-chosen LBA (wild device_t deref); RAID1/01 paths OOB-write disks[width].last_lba and composite->request[]
sys/dev/disk/nata/ata-raid.c:3248 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3785 |
High |
7.3 |
BT848_REEPROM: signed (offset+count) guard bypassed with negative offset β readEEProm() writes up to 32767 bytes into eeProm.bytes[256] (~32 KiB kernel heap overflow of the 260-byte M_IOCTLOPS ioctl argument, content attacker-controllable via DF-1217's raw I2C write)
sys/dev/video/bktr/bktr_core.c:2086 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3786 |
High |
7.3 |
BT848_SIGNATURE: signCard() has no bound on count β single-bit OOB read-modify-write up to ~3.8 KiB past the 260-byte ioctl argument (bit-OR heap corruption primitive)
sys/dev/video/bktr/bktr_core.c:2094 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4330 |
High |
7.3 |
mr_update_span_set writes firmware-indexed strip_offset[count] OOB - linear kernel-heap overflow past sc->log_to_span[] (last softc member)
sys/dev/raid/mrsas/mrsas_fp.c:949 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4846 |
High |
7.3 |
feed_format_feed sizes its byte window with the inexact generated SND_FXROUND/SND_FXDIV table: misround-up within the claimed [1,65536] domain writes up to oalign-1 bytes past the destination window (or before it via the ialign path) and over-reports the return into sndbuf_acquire (ring overflow)
sys/dev/sound/pcm/feeder_format.c:220 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4847 |
High |
7.3 |
feed_matrix_feed FXROUND misrounds: entry rounding sizes the matrixing pass past the destination window and the ialign>oalign path computes a source window that starts before the buffer
sys/dev/sound/pcm/feeder_matrix.c:479 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4848 |
High |
7.3 |
feed_volume_feed divides the USER-PACED source return with inexact SND_FXDIV: frame overcount writes past the window and count -= j*align underflows to ~4GiB, re-arming the loop to pull a directed, user-length-controlled write past the window end
sys/dev/sound/pcm/feeder_volume.c:277 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4849 |
High |
7.3 |
feed_mixer_feed FXROUND past the caller's free space (persistent sndbuf ring overflow) and mcnt = count - rcnt unsigned underflow arming a ~4GiB memset at b+rcnt when any child feeder over-returns
sys/dev/sound/pcm/feeder_mixer.c:299 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3781 |
Medium |
7.3 |
update_rxhead path: unchecked 10-bit rxcd->qid produces OOB MMIO write up to 0x29F0 past the 4KB vmxnet3 BAR0 (panic / cross-device MMIO corruption)
sys/dev/virtual/vmware/vmxnet3/if_vmx.c:2321 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4321 |
Medium |
7.3 |
ath_hal_getregdump(): signed/unsigned comparison break + unchecked do-while first write => unbounded attacker-length kernel-heap overflow with attacker-known register values
sys/dev/netif/ath/ath_hal/ah.c:848 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4836 |
Medium |
7.3 |
Firmware-facing frame->hdr.sge_count never reconciled with the validated user_ioc->sge_count: FW consumes stale SGEs (device DMA to freed ioctl buffers) and can read its SGL past the 1024-byte frame allocation
sys/dev/raid/mrsas/mrsas_ioctl.c:205 Β· pass 2 Β· new |
corruption |
untested |
not_testable |
untriaged |
β |
β |
| DF-4854 |
Low |
7.3 |
vega10_ih: unvalidated device-DMA'd IH wptr (DF-4843 twin) β permanent amdgpu interrupt-thread spin on misaligned wptr, plus 20-byte OOB ring read via RB_OVERFLOW recovery
sys/dev/drm/amd/amdgpu/vega10_ih.c:194 Β· pass 2 Β· new |
dos |
untested |
not_testable |
untriaged |
β |
β |
| DF-5297 |
High |
7.2 |
umass autosense REQUEST SENSE uses user-controlled csio.sense_len (up to 255) as the DMA length into the fixed 32-byte csio.sense_data inside the kernel CCB β malicious USB disk overwrites the rest of ccb_scsiio with device-controlled bytes
sys/bus/u4b/storage/umass.c:2602 Β· pass 2 Β· new |
kernel memory corruption (device-controlled intra-object write into live kernel CCB; trigger gated on root-only /dev/pass* for the >32 length, content fully device-controlled) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3018 |
Low |
7.2 |
spec VOP dispatch (devfs_spec_read/write/ioctl/kqfilter, D_QUICK close) calls dev_d* on vp->v_rdev with no cdev reference and the vnode unlocked β vfs_timestamp(&node->atime) after teardown is a UAF write if the device dies during the dispatch
sys/vfs/devfs/devfs_vnops.c:1099 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4759 |
Low |
7.2 |
Module teardown is unsynchronized: vinum_inactive() TOCTOU vs vinumopen(), the state > volume_down gap skips open-but-down volumes, and VF_OPEN/VF_DAEMONOPEN are refcount-free booleans (UAF-class teardown window)
sys/dev/raid/vinum/vinum.c:171 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4567 |
Info |
7.2 |
CTB ring math trusts GuC-firmware-written descriptor fields with only compiled-out GEM_BUG_ON validation β desc->size==0 gives divide-by-zero panic, inflated size/tail gives FW-offset wild write past the 1-page CT object
sys/dev/drm/i915/intel_guc_ct.c:324 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2920 |
High |
7.1 |
Beyond-EOF VM pages retained for the last buffer remain faultable: nvnode_pager_setsize()'s unmap is the only EOF enforcement, so mmap reads/writes past EOF succeed on every filesystem, pre-truncate content (incl. recycled disk-block residue) is served during the truncate zero-fill window, and on tmpfs beyond-EOF writes become file data
sys/kern/vfs_vm.c:42 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2940 |
High |
7.1 |
mpipe_done() tears down the malloc pipeline with no synchronization against in-flight users β its only teardown caller (dm-crypt) destroys tables while bios still hold mpipe buffers: KKASSERT panic / UAF write on production kernels / reproduced permanent kernel wedge
sys/kern/kern_mpipe.c:122 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3011 |
High |
7.1 |
btree_remove() unbounded recursion β kernel stack overflow from crafted deep B-trees with all-valid counts/types/CRCs (bypasses DF-0776 hardening)
sys/vfs/hammer/hammer_btree.c:1979 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3141 |
High |
7.1 |
sizeof(struct fnode)=520 > FNODESIZE=512: unconditional 8-byte out-of-bounds write past the buffer in hpfs_update, mirror OOB read in hpfs_vget β cross-file page-cache corruption with attacker-crafted content, or deterministic kernel page-fault panic
sys/vfs/hpfs/hpfs_subr.c:735 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3190 |
High |
7.1 |
Unvalidated superblock fragment-mask fields (fs_fmask/fs_qfmask) let fragroundup() round DOWN in ffs_balloc β undersized kernel buffer handed to ffs_write for an attacker-sized/-contented overrun copy, and deterministic unprivileged-triggered kernel panic
sys/vfs/ufs/ffs_balloc.c:119 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3376 |
High |
7.1 |
Lockless nd6_ra_input tail races nd6_timer expiry-sweep frees: UAF on nd_prefix/nd_defrouter (M_IP6NDP) with fatal route-replication panic; single-site fix empirically falsified
sys/netinet6/nd6_rtr.c:403 Β· pass 2 Β· new |
dos |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-3749 |
High |
7.1 |
wcid2ni[] never cleared on node free β TX-status drain use-after-free (hostap remote)
sys/dev/netif/ral/rt2860.c:887 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3882 |
High |
7.1 |
drm_dp_mst_handle_down_rep txmsg use-after-free race vs drm_dp_mst_wait_tx_reply timeout kfree
sys/dev/drm/drm_dp_mst_topology.c:2337 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3686 |
Medium |
7.1 |
Zero-count DPM tables (ignored setup failures) drive unsigned index 0xFFFFFFFF into dpm_levels[]: wild read/write ~48 GB out plus OOB reads and divide-by-zero across OD paths
sys/dev/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:3588 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3712 |
Medium |
7.1 |
2-byte DMA heap overflow in em(4) RX when MTU in (1500, 2028]: ETHER_ALIGN front-trim coexists with RCTL_LPE long-frame reception on 2048-byte hardware buffers
sys/dev/netif/em/if_em.c:3378 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3930 |
Medium |
7.1 |
mly_cam_complete() INQUIRY rewrite writes vendor/product/revision at data_ptr[8..36) regardless of dxfer_len β heap OOB write via short pass(4) INQUIRY CCB on a logical device
sys/dev/raid/mly/mly.c:2341 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4008 |
Medium |
7.1 |
mpr diag-buffer registration: shared DMA trio + stale per-type size yields OOB kernel disclosure, cross-type free, and NULL-deref/UAF
sys/dev/raid/mpr/mpr_user.c:1508 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2853 |
High |
7.0 |
rman_reserve_resource alignment-roundup unsigned wrap grants resources outside the scanned free fragment β overlapping allocations with live owners and free-fragment inflation across neighbors
sys/kern/subr_rman.c:247 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2938 |
High |
7.0 |
OBJT_DEVICE pager objects never reference the cdev: device teardown while a mapping persists leaves a dangling object->handle β cdev use-after-free in old_dev_pager_fault (indirect call via freed si_ops) and old_dev_pager_dtor (assert + NULL write)
sys/vm/device_pager.c:124 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2990 |
High |
7.0 |
newblk hash chains mutated without the softdep lock: lock-free insert/lookup races locked remove+kfree on shared chains (list corruption, UAF write into freed M_NEWBLK, 'lost block' panics)
sys/vfs/ufs/ffs_softdep.c:1003 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3188 |
High |
7.0 |
Unlocked pfsm RB-tree lookup-vs-final-remove race: hammer_load_pseudofs/hammer_rel_pseudofs lack any serialization β UAF + double free + RB tree corruption, sprayable unprivileged via the ungated HAMMERIOC_GET_PSEUDOFS on a nonexistent PFS
sys/vfs/hammer/hammer_pfs.c:68 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3248 |
High |
7.0 |
hpfs_genlookupbyname's unvalidated dirent walk drives hpfs_updateparent into a 20-byte OOB heap write past a 2048-byte dirblk chunk β attacker-chosen bytes (utimes mtime/atime u64 + crafted fn_size u32) at attacker-chosen offset (<=64KB of u16 reclen hops), unprivileged trigger on a crafted HPFS mount; silent corruption + livelock-DoS variants (write side of DF-0927's read walk)
sys/vfs/hpfs/hpfs_lookup.c:73 Β· pass 2 Β· new |
high |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3728 |
High |
7.0 |
ciss_notify_complete: fatal-error path leaves ciss_periodic_notify dangling -> double-ownership, double post, xpt_done twice (CAM UAF)
sys/dev/raid/ciss/ciss.c:3619 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3729 |
High |
7.0 |
ciss_notify_rescan_logical: unbounded ndrives + unchecked LUN_TO_BUS/TARGET -> OOB heap read and write
sys/dev/raid/ciss/ciss.c:3866 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3813 |
High |
7.0 |
mpr_wait_command()/mpr_request_polled() miss the realloc check on the concurrent-reinit wakeup/poll path β use-after-free on struct mpr_command
sys/dev/raid/mpr/mpr.c:3578 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3880 |
High |
7.0 |
dsp_oss_syncstart use-after-free: lksleep drops the syncgroup lock mid-walk; timeout wake resumes SLIST_FOREACH over sm/sg freed by a concurrent SYNCSTART
sys/dev/sound/pcm/dsp.c:3027 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3995 |
High |
7.0 |
dc_link_is_dp_sink_present frees a BORROWED struct ddc on DDC-open failure: use-after-free on every later DDC/AUX transaction plus stale-pointer double free at connector teardown
sys/dev/drm/amd/display/dc/core/dc_link.c:348 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4014 |
High |
7.0 |
mps_user_pass_thru frees the in-flight command and its DMA buffer the instant mps_wait_command() times out (use-after-free with device DMA writeback)
sys/dev/raid/mps/mps_user.c:975 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4026 |
High |
7.0 |
/dev/dsp mmap vs chn_resizebuf use-after-free: dsp_mmap_single maps bufsoft inside chn_resizebuf's lock-drop windows and the resize then kfrees the mapped buffer β persistent userland RW over freed M_DEVBUF kernel heap
sys/dev/sound/pcm/channel.c:1762 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4165 |
High |
7.0 |
VBIOS retimer HdmiRegNum/Hdmi6GRegNum (u8, unclamped) drive heap OOB write past kzalloc'd struct integrated_info in get_integrated_info_v11
sys/dev/drm/amd/display/dc/bios/bios_parser2.c:1441 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4395 |
High |
7.0 |
Heap OOB write in get_dcefclk_voltage_dependency_table pioneer path: allocation capped at min(ucNumEntries+1, 8) but copy loop runs raw ucNumEntries β up to 6916 bytes of VBIOS-controlled records past a 228-byte kernel heap object
sys/dev/drm/amd/powerplay/hwmgr/vega10_processpptables.c:721 Β· pass 2 Β· new |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4834 |
High |
7.0 |
mrsas_passthru operates on the raw userland ioctl pointer: validationβuse TOCTOU on sge_count walks past the 16-entry stack arrays (kernel stack OOB write + OOB stack reads); unmapped arg panics the kernel
sys/dev/raid/mrsas/mrsas_ioctl.c:150 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4840 |
High |
7.0 |
Use-after-free race on non-refcounted DRM_MODE_OBJECT_MODE objects in drm_mode_obj_set_property_ioctl β freed mode reclaimed with attacker data drives a fully controlled properties/property/dispatch chain ending in a controlled indirect call (plane->funcs->set_property)
sys/dev/drm/drm_mode_object.c:515 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4919 |
High |
7.0 |
cancel_work_sync()/flush_work() decide 'work is idle' from lockless flag reads β premature return while the work is between dequeue and start (or while an insert is publishing), violating the free-after-cancel contract β UAF/arbitrary-call ceiling
sys/dev/drm/linux_workqueue.c:331 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4927 |
High |
7.0 |
radeon_sa_bo_next_hole leaves dangling borrowed fence pointers across inner-loop iterations β UAF write, UAF read, and double kfree in radeon_sa_bo_new (missing upstream fix 0381ac3ca2e7)
sys/dev/drm/radeon/radeon_sa.c:267 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-5013 |
High |
7.0 |
mfi LD lifetime UAF: device_delete_child frees the mfi_disk softc under open descriptors and in-flight bios (AEN offline path has no gate at all)
sys/dev/raid/mfi/mfi_disk.c:178 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5016 |
High |
7.0 |
syscons history ring UAF: scroll-path appends (syscons_lock) are not serialized against ring realloc/free (vga_token)
sys/dev/misc/syscons/schistory.c:94 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5049 |
High |
7.0 |
mfi syspd lifetime UAF: AEN PD removal (MR_EVT_PD_REMOVED) deletes the syspd locklessly with no gate and mfi_syspd_detach frees the softc under open descriptors and bios parked on the controller bioq (DF-5013's syspd twin)
sys/dev/raid/mfi/mfi_syspd.c:155 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5059 |
High |
7.0 |
drm_clients_info walks dev->filelist under struct_mutex instead of filelist_mutex: count/copy TOCTOU heap overflow (write) and close-race UAF (read) via hw.dri.N.clients
sys/dev/drm/drm_sysctl.c:268 Β· pass 2 Β· new |
heap-overflow-write + UAF-read (kernel-space primitive reproduced with the verbatim drm_sysctl.c:260-301 walk/copy body, real M_DRM allocator and real struct drm_file[544B]: opens landing between the count walk (:271) and copy walk (:281) made the copy write 544B-elem structs past the exact-size kmalloc; 138 organic hits per 100k unprivileged sysctl reads with no forced interleave; a groomed exact-size allocation clobbered an adjacent kernel heap object (guard[9]) - real cross-object corruption; end-to-end hw.dri path hardware-gated: QEMU guest has no GPU/device, so no real drm clients exist and a uid0 chain on the live path was not exercisable) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5106 |
High |
7.0 |
emu_midi_detach() ignores mpu401_uninit() failure: with the 0666 MIDI cdev open, detach reports success while newbus kfrees the softc the still-live cdev/mpu401/callout keep using (UAF + deterministic kldunload panic)
sys/dev/sound/pci/emu10kx-midi.c:229 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5125 |
High |
7.0 |
synchronize_rcu() expands to zero instructions β zero-length grace period lets drm callers kfree objects under live readers (UAF β kernel RIP control, demonstrated)
sys/dev/drm/linux_rcu.c:94 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5126 |
High |
7.0 |
rcu_read_lock() is cpu_ccfence() (no exclusion) and reclaim is a fixed 1s delay line β __kfree_rcu/call_rcu free objects while readers are still inside their critical sections (deterministic 3/3 UAF + RIP control, demonstrated)
sys/dev/drm/linux_rcu.c:81 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5177 |
High |
7.0 |
hrtimer_cancel() is not atomic against concurrent hrtimer_start(): releases timer_token before the delete/drain and start() falsifies running/gd β cancel returns while the callback is still executing, so the caller's kfree turns the __hrtimer_task epilogue into a deterministic use-after-free write
sys/dev/drm/linux_hrtimer.c:112 Β· pass 2 Β· new |
kernel use-after-free write (memory corruption), deterministic: hrtimer_cancel() returns while timer->function is still executing (Linux requires exclusion), so the caller's kfree() is followed by __hrtimer_task epilogue writes (lwkt token ops + running/active byte clears) into freed-then-reallocated memory; same interleave with a RESTART-returning callback reaches systimer_init_oneshot() on the freed chunk (bzero + insertion into a live per-cpu systimer queue, ending in a timer->function call from attacker-reclaimed memory); uid=0 chain not completed (drm hrtimer callers are GPU-gated on this guest) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5259 |
High |
7.0 |
Beacon mbuf use-after-free write: mtw_update_beacon manipulates rvp->beacon_mbuf with no MTW_LOCK (the port dropped FreeBSD's RUN_LOCK), racing m_freem in mtw_newstate(S_RUN)/mtw_vap_delete under the disjoint sc-lock domain
sys/bus/u4b/wlan/if_mtw.c:3855 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5321 |
High |
7.0 |
fw_xfer/tlabel use-after-free and double completion: firewire_xfer_timeout() vs fw_rcv() + FW_ASYREQ waiter β no cross-CPU serialization of the completion/tlabel lifetime
sys/bus/firewire/firewire.c:336 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5347 |
High |
7.0 |
bus_dmamap_destroy() frees a map still queued for deferred load (EINPROGRESS) -> UAF with arbitrary-call/RIP control from freed memory
sys/platform/pc64/x86_64/busdma_machdep.c:440 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5378 |
High |
7.0 |
Use-after-free of the UVC control graph in uvc_query_v4l2_ctrl()/uvc_query_v4l2_menu(): detach frees sc->ctrl before destroy_dev, giving a racing unprivileged VIDIOC_QUERYCTRL/QUERYMENU a 1-byte write into freed kernel heap plus a 31-byte-per-query kernel-heap disclosure
sys/bus/u4b/uvc/uvc_ctrls.c:1065 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5414 |
High |
7.0 |
fw_read frees the FWACT_CH xfer while it stays linked in ir->q (dequeue is #if 0) -> use-after-free + double free on every subsequent read
sys/bus/firewire/fwdev.c:304 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5467 |
High |
7.0 |
vga_pci_unmap_bios() re-evaluates vga_pci_is_boot_display() and tears down a ROM-BAR mapping with the 128K shadow size: kernel page-table teardown + kernel_map VA free beyond the mapping, plus a leaked live ROM resource
sys/bus/pci/vga_pci.c:288 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5548 |
High |
7.0 |
Unsynchronized si_drv1/refcount lifecycle in fwmem open/close/ioctl/strategy β live-race kernel panic, post-race NULL write, and an 8-byte controlled UAF write over the slab freelist pointer (arbitrary-address allocation / double allocation)
sys/bus/firewire/fwmem.c:266 Β· pass 2 Β· new |
unsynchronized si_drv1/refcount lifecycle: live open/close race -> Fatal trap 12 (NULL+offsetof(refcount) deref in production fwmem_close, fwmem.c:292); post-race NULL-si_drv1 state -> supervisor WRITE at 0x0 in fwmem_ioctl (fwmem.c:410); racing ioctl/close -> 8 fully attacker-controlled bytes at offset 0 of a freed 16-byte-zone chunk == DragonFly SLAB freelist next pointer -> kmalloc hands out the attacker-chosen address / silently duplicates a live chunk (on this INVARIANTS kernel: deterministic allocator-assert panics; on production builds: silent double allocation) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5550 |
High |
7.0 |
camq_resize() shrink-below-entries: heap OOB write + persistent entries>array_size queue corruption β guard is #ifdef DIAGNOSTIC only (compiled out of stock kernels); in-tree trigger via xpt_remove_periph shrinking a drvq whose periph is still queued
sys/bus/cam/cam_queue.c:116 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5613 |
High |
7.0 |
Unsynchronized iso-xferq claim (FW_STSTREAM/FW_SRSTREAM) and teardown (fw_close -> fwdma_free_multiseg) β shared queue, bulkxfer heap overflow with chosen ints, and in-flight fw_write/fw_read UAF write/read on freed fwdma buffers
sys/bus/firewire/fwdma.c:100 Β· pass 2 Β· new |
memcorrupt: controlled kernel UAF write (attacker iso payload into fwdma segment pages freed by the concurrent teardown) + linear heap overflow past the bulkxfer kmalloc with chosen poffset ints; fatal supervisor-write variant on >=4GB-RAM hosts (panic.txt) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2692 |
Medium |
7.0 |
lwpsignal() writes p->p_sigacts->ps_frominfo[] on the token-swapped delivery path holding only the lwp token, racing kern_execve()'s sigacts replacement/free (UAF write)
sys/kern/kern_sig.c:1425 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2842 |
Medium |
7.0 |
vnode_pager_reference() lacks the vpβobject interlock β TOCTOU use-after-free on vm_object ref_count
sys/vm/vnode_pager.c:203 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2872 |
Medium |
7.0 |
taskqueue_free() ignores the write-only tq_callouts counter: armed timeout callout fires into freed/reallocated queue (UAF)
sys/kern/subr_taskqueue.c:150 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3394 |
Medium |
7.0 |
vlan SIOCGIFMEDIA uses an unpinned parent ifnet pointer across a serializer drop: UAF (indirect if_ioctl call through freed ifnet) racing privileged parent destroy
sys/net/vlan/if_vlan.c:951 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3755 |
Medium |
7.0 |
Dangling rdev->pm.dpm.ps after alloc-failure kfree in ni_parse_power_table: ignored-error UAF publication, ps_priv leak, and teardown double free (use-after-free kfree of a live foreign object)
sys/dev/drm/radeon/ni_dpm.c:4020 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3800 |
Medium |
7.0 |
mprsas_realloc_targets resizes the target array to stale pre-reset IOC facts and never updates sassc->maxtargets while the mapping layer is rebuilt from new facts: heap OOB write past sassc->targets[] (and past mapping_table[] in the opposite direction)
sys/dev/raid/mpr/mpr_sas.c:3911 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3928 |
Medium |
7.0 |
Unvalidated firmware channel counts overflow mly_cam_sim[6] and mly_btl[6][16] at attach (~4KB pointer writes + ~290KB strided flag writes past the softc)
sys/dev/raid/mly/mly.c:1947 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4007 |
Medium |
7.0 |
eb_move_to_gpu error path double-unreserves vmas: pin/fence/GEM-object refcount underflow β UAF
sys/dev/drm/i915/i915_gem_execbuffer.c:1864 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4069 |
Medium |
7.0 |
Unclamped VBIOS SCLK DPM count overflows GraphicsLevel[8] in vegam_populate_all_graphic_levels (heap OOB write past vegam_smumgr)
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:886 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4070 |
Medium |
7.0 |
Unclamped VBIOS MCLK DPM count overflows MemoryLevel[4] in vegam_populate_all_memory_levels β count=5 already OOB
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:1047 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4071 |
Medium |
7.0 |
Kernel STACK overflow in vegam_program_memory_timing_parameters: unclamped sclk x mclk counts fill a 640B stack SMU75_Discrete_MCArbDramTimingTable (entries[8][4])
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:1291 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4157 |
Medium |
7.0 |
ADC DMA-ring completion feed uses the raw APU CURPTR register as its only bound β desync/power-state race yields unbounded kernel OOB write
sys/dev/sound/pci/maestro.c:1066 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4356 |
Medium |
7.0 |
postclose teardown order reversed: amdgpu_vm_fini before amdgpu_ctx_mgr_fini (DF-port divergence) - VM page tables freed under still-live context jobs (device-side UAF / GPU loss)
sys/dev/drm/amd/amdgpu/amdgpu_kms.c:1073 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5064 |
Medium |
7.0 |
drm_device_detach never unregisters or releases the drm_device: /dev/dri minors stay live and dispatch into unloaded driver-module memory after kldunload (UAF-class) plus unbounded drm_device leak; i915 never runs any driver teardown
sys/dev/drm/drm_dragonfly.c:251 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5191 |
Medium |
7.0 |
sio_pccard_detach mutates com->gone/com->tp/com->ibuf and calls ttyclose without tty_token, racing siopen/sioclose/siosetwater into kernel heap UAF and double-free of com->ibuf
sys/dev/serial/sio/sio_pccard.c:117 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5260 |
Medium |
7.0 |
Deferred mtw_cmdq entries hold raw vap/ni pointers; mtw_vap_delete frees the mtw_vap without draining sc->cmdq_task - mtw_update_beacon_cb/mtw_newassoc_cb/mtw_key_set_cb execute on freed objects
sys/bus/u4b/wlan/if_mtw.c:909 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5262 |
Medium |
7.0 |
Lockless mtw_cmdq[] ring: producers store .func before the args with no barrier while mtw_cmdq_cb consumes concurrently under MTW_LOCK (which producers never take) - torn publish executes callbacks with stale pointers
sys/bus/u4b/wlan/if_mtw.c:1937 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2959 |
Low |
7.0 |
ucom_get_data TX path passes unclamped request length to clist_qtob β latent heap OOB write past USB page-cache segment (consumer-side defect found in tty_subr.c pass-2 API sweep)
sys/bus/u4b/serial/usb_serial.c:1898 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2961 |
Low |
7.0 |
kobj_class_free() reclaims the compiled ops table with no grace period while the lock-free dispatch hot path reads it (force multiplier turning any consumer refcount slip into a freed function-pointer table call)
sys/kern/subr_kobj.c:179 Β· pass 2 Β· new |
corruption |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3316 |
Low |
7.0 |
tcp_pcblist marker-dance walks per-cpu inpcb lists from a preemptible user thread with no synchronization β DF-3315's non-atomic advance race, here with fully unprivileged churn (UAF read/write on struct inpcb)
sys/netinet/tcp_subr.c:1271 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3588 |
Low |
7.0 |
Double free of adev->pm.dpm.ps on allocation-failure path in si_parse_power_table (plus leak of already-parsed si_ps states)
sys/dev/drm/amd/amdgpu/si_dpm.c:7256 Β· pass 2 Β· new |
OOM-gated double free |
untested |
not_testable |
untriaged |
β |
β |
| DF-3811 |
Low |
7.0 |
intel_ddi_init error path kfrees intel_dig_port while a fully-registered DP connector still references it (OOM-gated UAF)
sys/dev/drm/i915/intel_ddi.c:3863 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4156 |
Low |
7.0 |
agg_attach() error path frees the AC97 codec while the 0666 /dev/mixerN mixer_init() created survives β post-failure mixer ioctl UAF through freed kobj
sys/dev/sound/pci/maestro.c:1894 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4334 |
Low |
7.0 |
via_attach() pcm_register()-failure path destroys the AC97 codec while the 0666 /dev/mixerN mixer_init() created survives β dangling mixer devinfo UAF on open/ioctl
sys/dev/sound/pci/via8233.c:1335 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4344 |
Low |
7.0 |
atiixp_chip_post_init mixer_init/pcm_register error-path asymmetry leaves a live 0666 /dev/mixerN over freed codec+softc β UAF on open/ioctl and NULL-deref suspend (DF-4156 family, 5th instance)
sys/dev/sound/pci/atiixp.c:1085 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-4457 |
Low |
7.0 |
cmi_attach error path after mixer_init leaves a live 0666 /dev/mixerN pointing at freed sc β UAF on open/ioctl (DF-4156 family, 7th instance)
sys/dev/sound/pci/cmi.c:986 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4504 |
Low |
7.0 |
t4dwave: attach-failure paths after mixer_init() leave a live 0666 /dev/mixerN over freed codec/tr_info β mixer-UAF family (9th instance)
sys/dev/sound/pci/t4dwave.c:882 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4537 |
Low |
7.0 |
cs4281: attach-failure path after mixer_init() leaves a live 0666 /dev/mixerN over freed codec/softc - mixer-UAF family (10th instance)
sys/dev/sound/pci/cs4281.c:845 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4550 |
Low |
7.0 |
als_pci_attach error path after mixer_init leaves a live 0666 /dev/mixerN pointing at freed sc β dangling mixer devinfo UAF on open/ioctl (DF-4156 family, 11th instance)
sys/dev/sound/pci/als4000.c:842 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4610 |
Low |
7.0 |
nm_pci_attach failure paths after mixer_init() leave a live 0666 /dev/mixerN over freed codec+softc β mixer-UAF family, 13th instance (DF-4156/4193/4299/4334/4344/4421/4457/4468/4504/4537/4550)
sys/dev/sound/pci/neomagic.c:695 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4724 |
Low |
7.0 |
aureal: attach failure after mixer_init() leaves the live 0666 /dev/mixerN over the freed au softc β DF-4156 mixer-UAF family, 15th instance (premise live-verified on the guest)
sys/dev/sound/pci/aureal.c:634 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4743 |
Low |
7.0 |
via_attach(): five failure paths after mixer_init() free the AC97 codec while the 0666 /dev/mixerN survives β dangling mixer devinfo UAF on unprivileged open/ioctl (DF-4156 mixer-UAF family, 16th instance)
sys/dev/sound/pci/via82c686.c:548 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3585 |
High |
6.8 |
Heap OOB write in si_get_svi2_voltage_table (and lowSMIO sink in si_populate_smc_voltage_table): BIOS dependency-table count (u8, up to 255) copied into fixed entries[32]/lowSMIO[32] arrays
sys/dev/drm/amd/amdgpu/si_dpm.c:4410 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-3981 |
High |
6.8 |
login_callout never cancelled when sbp_dev is freed (stale-LUN invalidation, !VALID_LUN loop, post_explore GC) β softclock fires sbp_login_callout on the kfree'd sdev and runs sbp_mgm_orb writes into freed slab + fwdma_free'd ORB pages
sys/dev/disk/sbp/sbp.c:625 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4207 |
High |
6.8 |
Wild OOB heap write in eepromExpandPower5112(): 0xDEAD sentinel xgainList[0] used as pDataPerXPD[] index when device EEPROM xpdMask has no set bits
sys/dev/netif/ath/ath_hal/ah_eeprom_v3.c:195 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3887 |
Medium |
6.8 |
VBIOS usVoltageIndex (USHORT 0..65535) OOB heap write in sumo_construct_vid_mapping_table β up to 5 chosen-offset 16-bit-pair writes into/after the kv_power_info heap object
sys/dev/drm/amd/amdgpu/kv_dpm.c:167 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2904 |
Low |
6.8 |
mbr_extended()'s signed int slice counter can wrap negative after 2^31 accepted EBR entries, defeating the `slice >= MAX_SLICES` guard β OOB write of attacker-controlled ds_offset/ds_size before dss_slices[]
sys/kern/subr_diskmbr.c:423 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3402 |
Low |
6.8 |
slstart drains sc_fastq/ifsq under tty locks while sloutput fills them under the ifsq serializer β no common lock, concurrent ifqueue corruption
sys/net/sl/if_sl.c:494 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2741 |
High |
6.7 |
DIOCGSLICEINFO: dsioctl bcopy uses runtime dss_nslices (GPT disks: up to 130) against the 16-record ioctl type β 29,184-byte kernel heap OOB write per ioctl
sys/kern/subr_disk.c:1196 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3229 |
High |
6.7 |
fuse_ipc_tx() error paths free a still-linked fuse_ipc: fuse_ipc_wait returns ENOTCONN without fuse_ipc_remove at :163-167 (dead-at-entry, fip linked on BOTH queues) and :198-201 (dead-after-blind-reply, fip still on request_head)
sys/vfs/fuse/fuse_ipc.c:163 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3426 |
High |
6.7 |
Generic netmap TX pool mbufs are dispatched with no retained reference: tx_pool slots alias driver-owned and then freed memory (controlled UAF write + double free)
sys/net/netmap/netmap_generic.c:504 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3644 |
High |
6.7 |
Heap OOB write in ci_get_svi2_voltage_table: VBIOS dependency-table count (u8, up to 255) copied into fixed entries[32] before any trim
sys/dev/drm/radeon/ci_dpm.c:2159 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3739 |
High |
6.7 |
BIOS-count-driven OOB pointer write past rdev->i2c_bus[16] in radeon_atombios_i2c_init
sys/dev/drm/radeon/radeon_atombios.c:172 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3740 |
High |
6.7 |
Stack buffer overflow in radeon_atom_get_mclk_range_table: uncapped (u8) num_entries fill of mclk[16] into a caller stack local
sys/dev/drm/radeon/radeon_atombios.c:3938 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5376 |
High |
6.7 |
targwrite() forwards raw user abort_ccb pointer when targusermerge() returns ESRCH ('!= EFAULT' check): fake-CCB arbitrary-address kernel write and kernel-global cam_simq corruption β RIP-control chain
sys/bus/cam/scsi/scsi_target.c:626 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2808 |
Medium |
6.7 |
Cross-segment mapsize under-sizing: mapsize derives only from segs[0]'s start and segs[1]'s end, so segs[0]'s extent is never covered β file-controlled kernel heap overflow (DF-2771 analogue in the EXEC loader)
sys/kern/link_elf.c:541 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2832 |
Medium |
6.7 |
Syncer-trigger API (trigger_syncer*/speedup_syncer) has no lifetime interlock against vn_syncer_thr_stop β UAF atomic-write on freed syncer ctx (and NULL-ctx / freed-mount reads)
sys/kern/vfs_sync.c:561 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2894 |
Medium |
6.7 |
kenv_init() ingests unbounded bootloader env strings; kgetenv() strcpy() overflows a 258-byte kernel stack buffer, detonable by any unprivileged user via kenv(2) KENV_GET
sys/kern/kern_environment.c:580 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2984 |
Medium |
6.7 |
syscall_deregister() writes sysent[*offset] through an unvalidated index with an unvalidated value: MOD_LOAD-failure rollback destroys a live syscall slot (EEXIST) β any unprivileged user's syscall(N) is a kernel NULL function call β deterministic persistent panic; EINVAL variant = arbitrary-index 24-byte kernel zero-write; ENFILE variant = sysent[-1] OOB write
sys/kern/kern_syscalls.c:72 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3260 |
Medium |
6.7 |
Unvalidated rule act_ofs escalates DF-0261's OOB read to a 4-byte heap OOB write, a deterministic packet-triggered kernel panic, and an F_LEN==0 netisr infinite loop
sys/net/ipfw/ip_fw2.c:4515 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3314 |
Medium |
6.7 |
Node teardown dereferences the freed ieee80211vap when the last node reference outlives vap destruction: _ieee80211_free_node AID_CLR wild write + node_free ratectl/cleanup UAF
sys/netproto/802_11/wlan/ieee80211_node.c:1786 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3698 |
Medium |
6.7 |
cu_info walkers index bitmap[4][4]/ao_cu_bitmap[4][4] with unclamped max_shader_engines/max_sh_per_se taken from gpu_info firmware or VBIOS β heap OOB write + read
sys/dev/drm/amd/amdgpu/gfx_v9_0.c:937 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4967 |
Medium |
6.7 |
radeon_gart_bind/unbind take a 32-bit `unsigned offset`: GTT aperture offsets >= 4 GiB truncate and alias GART entries across buffer objects (cross-process GPU data redirection)
sys/dev/drm/radeon/radeon_gart.c:241 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5289 |
Medium |
6.7 |
pmap_enter/pmap_unwire UKSMAP wire-accounting corruption: mlock() of /dev/upmap wires a transient stack-fictitious page with no vm_page wire, pmap_unwire() then returns the real kmalloc'd slab page which vm_fault_unwire unwires β slab page loses its only wire (silent corruption) and panics deterministically on the second cycle
sys/platform/vkernel64/platform/pmap.c:2429 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5293 |
Medium |
6.7 |
Deferred rum_cmdq entry holds a raw struct ieee80211vap *; rum_vap_delete() frees the rum_vap without draining sc->cmdq_task - rum_update_beacon_cb/rum_set_beacon execute on freed memory
sys/bus/u4b/wlan/if_rum.c:2830 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3805 |
Low |
6.7 |
Unbounded csio->cdb_len bcopy into the 32-byte MPI2 CDB field overflows the request frame in the req_frames DMA pool
sys/dev/raid/mpr/mpr_sas.c:2102 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3920 |
Low |
6.7 |
OsSendCommand bcopy's user-controlled cdb_len (<=255) into UCHAR Cdb[16] - kernel stack overflow
sys/dev/raid/hptmv/entry.c:2771 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2745 |
High |
6.6 |
exit1() p_peers unlink race: lost unlink leaves leader permanently wedged in uninterruptible exit (pre-fdfree, pinning fds+vmspace) and members freed while still linked β kernel heap UAF read/write
sys/kern/kern_exit.c:384 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3047 |
High |
6.6 |
MNT_RELOAD adopts new group geometry without resizing the cluster-summary arrays β heap OOB write, bzero()/free() of OOB-read pointers, and per-reload gd leak
sys/vfs/ext2fs/ext2_vfsops.c:620 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3784 |
High |
6.6 |
vbi_read() truncates the 64-bit read length to int β negative readsize bypasses both guards β uiomove() of (size_t)INT_MIN copies ~2 GiB of kernel memory to userspace
sys/dev/video/bktr/bktr_core.c:1159 Β· pass 2 Β· new |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3998 |
High |
6.6 |
Unclamped phase offset in the envy24ht DMA emulators: second record channel START reads up to ~32 KB past the shared record DMA buffer into the user's /dev/dsp stream (kernel heap disclosure); play-direction twin carries an attacker-controlled 32-bit write ~130 KB past the play DMA buffer but is latent behind the 1-play-channel registration (DF-3996 twin)
sys/dev/sound/pci/envy24ht.c:1324 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4001 |
High |
6.6 |
Unclamped VBIOS SCLK/MCLK DPM counts overflow fiji SMC GraphicsLevel[8]/MemoryLevel[4] and the 384-byte STACK MC-arb timing table
sys/dev/drm/amd/powerplay/smumgr/fiji_smumgr.c:1026 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4002 |
High |
6.6 |
Unclamped VBIOS MM-dependency count overflows fiji UvdLevel[8]/VceLevel[8]/AcpLevel[8] SMC arrays
sys/dev/drm/amd/powerplay/smumgr/fiji_smumgr.c:1433 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-2828 |
Medium |
6.6 |
Multi-threaded CKPT_THAW violates vmspace_exec()/pmap_replacevm()'s single-thread contract: deterministic INVARIANTS panic; released-vmspace UAF for other LWPs on production kernels
sys/kern/kern_checkpoint.c:556 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3688 |
Low |
6.6 |
Unbounded sprintf loops in smu7_print_clock_levels overflow the 4096-byte sysfs page buffer once the VBIOS DPM count exceeds ~233
sys/dev/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:4428 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2905 |
High |
6.5 |
md_done() leaks every pending m_nextpkt record of an mdchain β remote mbuf-pool exhaustion DoS by a malicious SMB server
sys/kern/libmchain/subr_mchain.c:323 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3286 |
High |
6.5 |
mesh_decap stack OOB write: reserved AE=11 mesh control grows the header copy to 56 bytes into the 50-byte stack buffer b[]
sys/netproto/802_11/wlan/ieee80211_mesh.c:1281 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4027 |
High |
6.5 |
sili deferred timeout hands a port-owned ccb (state ATA_S_ONCHIP) back to poll callers which sili_ata_put_xfer() it β ccb/slot double lifecycle: reissue on an active slot, stale sili_unload_prb of the new command's live dmamap, and double CAM completion
sys/dev/disk/sili/sili.c:1359 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5015 |
High |
6.5 |
syscons history ring: stale-geometry ring after ignored sc_alloc_history_buffer() failure β negative ring tail β controlled heap OOB write (underflow) + OOB read
sys/dev/misc/syscons/schistory.c:147 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3028 |
Medium |
6.5 |
Daemon LOOKUP reply with S_IFMT-clear mode yields vtyp=VBAD β fuse_node_vn KKASSERT(0) panic (INVARIANTS force-enabled module-wide)
sys/vfs/fuse/fuse_vnops.c:554 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3360 |
Medium |
6.5 |
pf scrub max-mss: 2-byte stack OOB read/write past opts[40] in pf_normalize_tcpopt() via malformed MSS option
sys/net/pf/pf_norm.c:1915 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3479 |
Medium |
6.5 |
ng_btsocket_l2cap_attach() never takes the implied pcb reference (soreference): KKASSERT panic in sonewconn on every inbound L2CAP connection; child socket refcount runs one low on production kernels (latent pcb->so UAF)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c:1961 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4188 |
Medium |
6.5 |
Dangling rdev->pm.dpm.ps after kfree-without-NULL on the ENOMEM path of sumo_parse_power_table + swallowed init error -> double free in sumo_dpm_fini at unload/reboot; ps_priv[0..i-1] leaked β sumo twin of DF-4117/4144/4125/4023/3973/3755/3955
sys/dev/drm/radeon/sumo_dpm.c:1500 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4494 |
Medium |
6.5 |
rs780_dpm: swallowed-init lifetime bugs β dangling rdev->pm.dpm.ps after kfree-without-NULL and self-radeon_dpm_fini in rs780_dpm_init -> double free in rs780_dpm_fini and UAF read+write in rs780_dpm_enable
sys/dev/drm/radeon/rs780_dpm.c:830 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4607 |
Medium |
6.5 |
4x-timeout DANGER1 direct completion races the real completion: concurrent ata_completed -> UAF + double objcache_put
sys/dev/disk/nata/ata-queue.c:140 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5108 |
Medium |
6.5 |
lockrange() commits pos one past plex->lock[PLEX_LOCKS] when the table fills while a conflicted requester sleeps (16-byte heap OOB write + usedlocks overrun defeating the == fullness checks)
sys/dev/raid/vinum/vinumlock.c:139 Β· pass 2 Β· new |
memcorrupt |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5223 |
Medium |
6.5 |
rv770_copy_dma under-reserves the DMA ring for radeon_sync_rings() semaphore waits: with two pending cross-ring fences, 16 dwords are written past the reserved window, overwriting un-executed GPU commands (user-reachable rv770 twin of DF-1943)
sys/dev/drm/radeon/rv770_dma.c:59 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5753 |
Medium |
6.5 |
hci_intr()'s scodone completion dispatch (membership walk + hci_sco_complete) is unlocked and unreferenced against syscall-context SCO teardown: sco_disconnect NULLs hl_sco then frees the link while still listed -> NULL-pointer kernel write (sp_pending--) / UAF in netisr context
sys/netbt/hci_unit.c:390 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3863 |
Low |
6.5 |
u32 truncation of nptes in amdgpu_vm_bo_update_mapping undersizes the update IB; amdgpu_vm_update_ptes then emits an unbounded command stream past its end (kernel heap overflow)
sys/dev/drm/amd/amdgpu/amdgpu_vm.c:1807 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4488 |
Low |
6.5 |
vo destruction runs under the 'video' serial only while all vo sysctl handlers run under 'video_output' only β use-after-free race on vo/vo_levels with an unprivileged 'levels' reader
sys/dev/acpica/acpi_video/acpi_video.c:300 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5287 |
High |
6.4 |
Concurrent read()/write() on a shared ugen endpoint fd double-enters ugen_transfer_setup(): orphaned usb_xfer blocks (permanent kernel memory leak + endpoint refcount exhaustion locking the endpoint for all drivers) plus unlocked usb_fifo_free_buffer() UAF window against live callbacks
sys/bus/u4b/usb_transfer.c:145 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5592 |
High |
6.4 |
cam_sim freed while still pending in the camisr completion softint β UAF write plus function-pointer dispatch from freed object (cam_sim_release has no synchronization against xpt_done/camisr)
sys/bus/cam/cam_sim.c:241 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2845 |
Medium |
6.4 |
sbuf_drain() does not validate the drain callback's return value β a drain returning 0 yields a silent, unbounded, content-controlled linear kernel-heap overflow on production kernels
sys/kern/subr_sbuf.c:324 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3277 |
Medium |
6.4 |
bridge_delete_span() TAILQ_REMOVEs span bif from the per-cpu MEMBER list head β list-tail corruption cross-links span and member lists, leading to KASSERT panic / member-bif UAF and double-free
sys/net/bridge/if_bridge.c:1155 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3607 |
Medium |
6.4 |
ncr(4): timeout daemon completes an nccb still armed in the chip's DSA β later phase-mismatch resumes DMA from stale/reused scatter descriptors (memory corruption) or wedges the HBA
sys/dev/disk/ncr/ncr.c:5148 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3660 |
Medium |
6.4 |
isp_detach() never terminates or reaps the per-channel FC kthreads nor stops ldt/gdt callouts; isp_pci_detach() then frees the lock, isp_param and bus resources they still use - teardown use-after-free
sys/dev/disk/isp/isp_freebsd.c:159 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3812 |
Medium |
6.4 |
isp_add_wwn_entry / isp_del_wwn_entry index FCPARAM(isp, chan) with an unchecked firmware-controlled channel (raw in_vpidx) β kernel heap OOB read/write up to ~17.8 MB past isp_param; isp_del_all_wwn_entries off-by-one admits chan == nchan
sys/dev/disk/isp/isp_library.c:2398 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4029 |
Medium |
6.4 |
SET_RESOURCE VALID_BUFFER relocates with 8-dword stride into 7-dword resource slots (validated/executed desync)
sys/dev/drm/radeon/r600_cs.c:1953 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4178 |
Medium |
6.4 |
twe_immediate_request timeout releases a request still posted to the controller and linked on twe_busy β late completion double-processes the reused request (TAILQ corruption / biodone of in-flight bio)
sys/dev/raid/twe/twe.c:1003 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-4341 |
Medium |
6.4 |
Unserialized ISR/netgraph concurrency over per-channel descriptor rings: UAF writes, hook write-after-free, descriptor double-free, and device DMA into freed mbufs (ignored channel-zap status)
sys/dev/netif/mn/if_mn.c:1329 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4349 |
Medium |
6.4 |
adv_run_doneq completes ccb_infos entries without ACCB_ACTIVE validation: in-bounds stale-slot double completion (double xpt_done/LIST_REMOVE/recycled-dmamap unload) and never-allocated-slot write through uninitialized cinfo->ccb
sys/dev/disk/advansys/advansys.c:1106 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4614 |
Medium |
6.4 |
ips command-queue lifecycle double-free/UAF: unchecked ips_cmdqueue_init at ips.c:414 plus unconditional, non-NULLing kfree in ips_cmdqueue_free (also frees under live commands on detach)
sys/dev/raid/ips/ips.c:116 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4762 |
Medium |
6.4 |
fwe_stop() frees RX bulkxfer chunks and their mbufs while fwohci_rbuf_update()/fwe_as_input() still manipulate or walk them β teardown race causes UAF write/read and mbuf double-free
sys/dev/netif/fwe/if_fwe.c:258 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4884 |
Medium |
6.4 |
Double-free of adev->bios when amdgpu_get_bios() fails: every VBIOS read method kfrees without NULLing and amdgpu_device_fini() frees the dangling pointer again on the probe-failure teardown path
sys/dev/drm/amd/amdgpu/amdgpu_bios.c:116 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4910 |
Medium |
6.4 |
Unsynchronized aconnector->dc_sink teardown: lockless dm_dp_destroy_mst_connector (destroy work) races mode_config.mutex-held dm_dp_mst_get_modes check-then-set β dc_sink leaked with dangling dc_sink->priv, remote-sink slot exhaustion makes the known DF-1966 NULL-deref panic deterministic, plus UAF-read windows
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c:232 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5247 |
Medium |
6.4 |
Deferred run_cmdq entries outlive the vap/node they point at: run_vap_delete frees run_vap without draining sc->cmdq_task
sys/bus/u4b/wlan/if_run.c:1030 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3278 |
Low |
6.4 |
bridge_fragment() re-header loop double-frees the fragment chain and UAF-reads freed mbufs when any M_PREPEND(M_NOWAIT) fails
sys/net/bridge/if_bridge.c:4386 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3283 |
Low |
6.4 |
ieee80211_fragment: fragment size can exceed MCLBYTES (FRAG_MAX=2346 default) -> m_align() computes negative offset -> packet-controlled heap underflow write before the mbuf cluster (release) / KASSERT panic (INVARIANTS)
sys/netproto/802_11/wlan/ieee80211_output.c:1703 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3732 |
Low |
6.4 |
ciss_init_pci: unvalidated firmware transport_offset maps ciss_perf outside the BAR window; ciss_init_perf writes through it
sys/dev/raid/ciss/ciss.c:694 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-3733 |
Low |
6.4 |
ciss_periodic re-arms after unlock vs callout_stop in ciss_free -> post-free callout execution (UAF)
sys/dev/raid/ciss/ciss.c:3431 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-3756 |
Low |
6.4 |
tulip_srom_decode() unbounded media-info pointer walk: OOB WRITE past tulip_softc.tulip_mediainfo[10] into the softc tail and kernel heap
sys/dev/netif/de/if_de.c:2080 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3923 |
Low |
6.4 |
hpt_attach bus_setup_intr failure kfree()s the newbus-owned IAL_ADAPTER_T softc while it stays linked on gIal_Adapter (use-after-free)
sys/dev/raid/hptmv/entry.c:2026 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4076 |
Low |
6.4 |
Unvalidated chip-reported IOCRequestFrameSize sizes every request slot; all request builders write fixed sizeof(struct) with no minimum check
sys/dev/raid/mps/mps.c:750 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4193 |
Low |
6.4 |
es_pci_attach error path after mixer_init leaves a live /dev/mixerN pointing at freed codec/es (UAF on open/ioctl)
sys/dev/sound/pci/es137x.c:1810 Β· pass 2 Β· new |
es_pci_attach error path after mixer_init leaves a live 0666 /dev/mixerN pointing at freed codec/es (UAF on open/ioctl). Attach-failure precondition only (IRQ/dma-tag/pcm_register failure after mixer_init) - not user-triggerable on demand. Same family as DF-4156 (maestro). |
untested |
not_testable |
untriaged |
β |
β |
| DF-4274 |
Low |
6.4 |
twa(4) deferred-busdma passthru error path returns the request to the free queue twice β queue corruption and cross-thread request reuse (latent UAF/double-free; sibling of twe DF-4178)
sys/dev/raid/twa/tw_osl_freebsd.c:1282 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4611 |
Low |
6.4 |
nm_init() programs ring/coeff buffers from unvalidated card-provided buftop β cbuf/rbuf/pbuf/acbuf wrap to ~4G offsets used by nm_wrbuf() and sndbuf_setup()
sys/dev/sound/pci/neomagic.c:576 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4628 |
Low |
6.4 |
bxt_exec_gpio: function-static bxt_gpio_table caches devm-allocated gpio_descs across device unbind/rebind β use-after-free on gpiod_set_value
sys/dev/drm/i915/intel_dsi_vbt.c:304 Β· pass 2 Β· new |
UAF write (gpiod_set_value mutates desc->flags/value) on first panel-enable after rebind; potentially exploitable if the freed chunk is reclaimed |
untested |
not_testable |
untriaged |
β |
β |
| DF-5521 |
Low |
6.4 |
iicsmb_detach has no quiesce: kldunload during an in-flight SMBus transaction resumes the sleeper in freed module text (UAF) and leaves iicbus_softc->owner dangling
sys/bus/iicbus/iicsmb.c:164 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3427 |
High |
6.3 |
SET_MBUF_DESTRUCTOR/generic_mbuf_destructor is ABI-incompatible with DragonFly mbufs: ext_free receives the 16-byte mbcluster, not the mbuf (OOB read -> wild ifp deref + permanent cluster leak)
sys/net/netmap/netmap_generic.c:101 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4529 |
High |
6.3 |
Device teardown vs in-flight NVMEIOCGETLOG/open: use-after-free of the admin queue and softns -> kernel divide-by-zero panic in nvme_get_request (reproduced 2/2)
sys/dev/disk/nvme/nvme.c:273 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4952 |
High |
6.3 |
feed_mixer_rec: no free-space clamp β one feeder over-return wraps sndbuf_getfree to ~4G and the acquire loop re-arms maxfeed (~64KB) requests into the fixed-size bufsoft->tmpbuf: linear heap OOB write by the real converter (REC-path sink of the FXROUND family, distinct from DF-4849's PLAY path)
sys/dev/sound/pcm/feeder_mixer.c:195 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2775 |
Medium |
6.3 |
sysctl_intrnames traverses every CPU's interrupt-handler lists unsynchronized β use-after-free read / kernel heap disclosure via hw.intrnames
sys/kern/kern_intr.c:1100 Β· pass 2 Β· new |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3118 |
Medium |
6.3 |
Signed 32-bit flusher sequence ring misorders all completion/mis-sequencing comparisons past 2^31; wrapped state causes permanently stuck flush group and self-sustaining synchronous-finalize storm (system wedge)
sys/vfs/hammer/hammer_flusher.c:114 Β· pass 2 Β· new |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3318 |
Medium |
6.3 |
in6_update_ifa() accepts arbitrary ifra_dstaddr.sin6_len β unprivileged SIOCGLIFADDR kernel-heap pointer leak and privileged SIOCDLIFADDR kernel stack buffer overflow
sys/netinet6/in6.c:901 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3345 |
Medium |
6.3 |
lagg_lacp_detach drops the lagg WLock mid-detach while sc_* protocol callbacks remain installed: ioctl re-entry into half-torn-down LACP state (incl. unprivileged SIOCGLAGG)
sys/net/lagg/if_lagg.c:1085 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3973 |
Medium |
6.3 |
Ignored btc_dpm_init failure leaves dangling rdev->pm.dpm.ps and un-NULLed dyn_state pointers: double free in btc_dpm_fini (two paths) plus eg_pi/ps_priv leaks β btc twin of DF-3645/3755/3955
sys/dev/drm/radeon/btc_dpm.c:2574 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4211 |
Medium |
6.3 |
mpt_refresh_raid_vol frees a request on ETIMEDOUT that is still queued to the IOC and on request_pending_list β request-pool double-link / cross-command use-after-free
sys/dev/disk/mpt/mpt_raid.c:1327 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4253 |
Medium |
6.3 |
SATA-ID timeout recovery frees in-flight commands (SMID reuse confusion), can Target-Reset the wrong target, and overwrites targ->tm without NULL check
sys/dev/raid/mpr/mpr_sas_lsi.c:992 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4364 |
Medium |
6.3 |
All mps_config.c getters free the mps_command while the IOC still owns it after mps_request_polled timeout - late completion UAF / cross-request completion confusion / reply-queue corruption
sys/dev/raid/mps/mps_config.c:167 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4371 |
Medium |
6.3 |
Dangling rdev->pm.dpm.dyn_state entries pointers after error-path kfree in r600_parse_extended_power_table β r600_free_extended_power_table at teardown kfrees them again (heap double free; root site shared by all six DPM family callers)
sys/dev/drm/radeon/r600_dpm.c:939 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4398 |
Medium |
6.3 |
tws_scsi_err_complete touches the ccb after xpt_done (callout_stop on a surrendered ccb) β CAM ccb use-after-free race on every error completion
sys/dev/raid/tws/tws_cam.c:593 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4400 |
Medium |
6.3 |
tws_intr_resp invokes req->cb with no busy-state/completer validation β firmware replay of an in-range req_id double-completes surrendered ccbs or calls a NULL cb (distinct from DF-1590's index OOB)
sys/dev/raid/tws/tws_cam.c:1161 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4914 |
Medium |
6.3 |
radeon_fbdev_init() failure leaves rdev->mode_info.rfbdev dangling (published before any fallible step, kfree'd on the error path without clearing) β production teardown radeon_fbdev_fini() then use-after-frees and double-kfrees it
sys/dev/drm/radeon/radeon_fb.c:379 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4925 |
Medium |
6.3 |
amdgpu_fbdev_init() publishes adev->mode_info.rfbdev before the fallible drm_fb_helper_init() and kfrees it without clearing on error β dangling pointer β deferred double-free/UAF in production teardown (DF-4914 radeon_fb twin)
sys/dev/drm/amd/amdgpu/amdgpu_fb.c:365 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5021 |
Medium |
6.3 |
dp_retrain_link_dp_test walks dc->current_state with no lock and no state reference while concurrent atomic commits release it β use-after-free driven by unauthenticated HPD-RX automated-test input from a malicious DP sink
sys/dev/drm/amd/display/dc/core/dc_link_hwss.c:274 Β· pass 2 Β· new |
kernel UAF/NULL-deref per finding |
untested |
not_testable |
untriaged |
β |
β |
| DF-5273 |
Medium |
6.3 |
cdioctl() drops an unmatched cam_periph_release() when cam_periph_hold(PCATCH) is signal-interrupted: periph refcount underflow -> premature free / UAF window
sys/bus/cam/scsi/scsi_cd.c:1930 Β· pass 2 Β· new |
peripheral refcount underflow (demonstrated 1 -> 0 -> -1 on a valid, open cd periph; earlier exploratory runs reached -3 and -5), one burned reference per signal-interrupted ioctl, deterministic; with device invalidation (unplug/kldunload) the CAM_PERIPH_INVALID && refcount==1 branch of cam_periph_release() frees periph+softc while fds remain open -> use-after-free window in cdioctl/cdclose between cam_extend_get() and cam_periph_lock(). Root-gated entry; the full UAF was not chased (racy), the underflow is deterministic. |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5674 |
Medium |
6.3 |
Keysym free mutates the global interned-key rb-tree without the tree mutex β unsynchronized rb-tree rebalancing β UAF/heap corruption
sys/libprop/prop_dictionary.c:148 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2725 |
Low |
6.3 |
cluster_rbuild() under-counts component pages vs the pbuf's embedded xio_pages[]/KVA window β latent OOB pointer write + PTE install past MAXPHYS window for non-page-tiling VFS geometry
sys/kern/vfs_cluster.c:954 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3719 |
Low |
6.3 |
Firmware load: registration-metadata size drives an unbounded SRAM PIO copy (*limit initialized to sram_size then blindly overwritten) and short-inflate copies uninitialized kernel heap to the NIC
sys/dev/netif/mxge/if_mxge.c:685 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3891 |
Low |
6.3 |
Double free of adev->pm.dpm.ps (and leak of parsed ps_priv states) on the kzalloc-failure path of kv_parse_power_table
sys/dev/drm/amd/amdgpu/kv_dpm.c:2750 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4129 |
Low |
6.3 |
seq_sync() kernel stack overflow: sync[16] vs midi_number up to 32 β unprivileged kernel control-flow corruption (RIP=0) via SNDCTL_SEQ_SYNC/close on the 0666 sequencer
sys/dev/sound/midi/sequencer.c:2063 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4725 |
Low |
6.3 |
aureal: bad: unwind frees au BEFORE bus_teardown_intr (live IRQ handler over freed softc β UAF write in au_intr) and releases NULL reg[] entries after a mid-list BAR failure (NULL-deref panic)
sys/dev/sound/pci/aureal.c:599 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4977 |
Low |
6.3 |
cardbus_detach_card ignores device_detach/device_delete_child failures and pci_freecfg's the child devinfo anyway: surviving child keeps freed ivars (UAF) while its bus resources are ripped out from under the running driver
sys/dev/pccard/cardbus/cardbus.c:236 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5051 |
Low |
6.3 |
dal_vector_insert_at() performs no bounds check on position β kernel heap OOB write at a caller-chosen 32-bit element offset (latent library defect, primitive runtime-demonstrated)
sys/dev/drm/amd/display/dc/basics/vector.c:204 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5052 |
Low |
6.3 |
dal_vector_destruct() leaves container dangling β second destruct is a double kfree (latent; double-free reproduced at runtime, fix semantics runtime-validated)
sys/dev/drm/amd/display/dc/basics/vector.c:131 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5274 |
Low |
6.3 |
cdgetccb() stores its result in a function-static 'union ccb *' β concurrent callers on different SIM locks can receive the same ccb (double xpt_release_ccb) or leak one
sys/bus/cam/scsi/scsi_cd.c:1384 Β· pass 2 Β· new |
CCB double-release UAF family (DF-5274) / attach-time leak (DF-5275) |
untested |
not_testable |
untriaged |
β |
β |
| DF-4828 |
High |
6.2 |
r600_hdmi_buffer_status_changed / r600_hdmi_update_audio_settings consume lvds-typed enc_priv as radeon_encoder_atom_dig on the audio-work walk: dig->afmt OOB read at +288 into the adjacent slab chunk β wild deref + last_buffer_filled_status write-through (DF-4635 family, new sinks, interrupt-driven trigger)
sys/dev/drm/radeon/r600_hdmi.c:283 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3902 |
Low |
6.2 |
sioclose() gone-path double-free of com->ibuf: kfree guarded by '!= NULL' but pointer never NULLed β every further close on the detached unit re-frees the same M_DEVBUF block
sys/dev/serial/sio/sio.c:1475 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3967 |
Low |
6.2 |
tx_intr STA_CSR4 completion desync: qid 5-15 garbage mapped to the mgt ring, results matched to the driver's stat cursor rather than a device index, unguarded txq->queued-- underflow defeating the ring-full gate, and m leaked on the ni==NULL path
sys/dev/netif/ral/rt2661.c:896 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3103 |
High |
6.1 |
Embedded-ICB read path trusts unvalidated l_ea/l_ad: udf_vget's wrapping int allocation plus udf_readatoffset's &fentry->data[l_ea] with sign-extended negative *size yields a wild OOB kernel-heap read
sys/vfs/udf/udf_vnops.c:1037 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3373 |
High |
6.1 |
connect(2)/listen(2) TOCTOU on one TCP socket: handler-side state guards absent, same inpcb linked into both wildcard and connection hash β reliable unprivileged panic (INVARIANTS) / dangling connhash entry + UAF on 4-tuple lookup (production)
sys/netinet/tcp_usrreq.c:481 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4542 |
High |
6.1 |
syscons CONS_SET mode change (sc_set_text_mode) vs tty output (scstart/sc_puts): no common lock across scp->vtb/history teardown - reproducible kernel panic and heap double-free window
sys/dev/misc/syscons/scvidctl.c:54 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3111 |
Medium |
6.1 |
hammer_direntry_namekey ALG1 iteration-range overflow: crafted filenames make dirents permanently unfindable and unremovable (durable fs poisoning + unremovable space leak)
sys/vfs/hammer/hammer_subs.c:943 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3592 |
Medium |
6.1 |
si_ib_parse() lacks packet-fits-in-IB validation -> OOB reads up to 6 dwords past the IB sub-allocation + WRITE_DATA (pkt->count - 2) underflow spin
sys/dev/drm/radeon/si.c:4776 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3915 |
Medium |
6.1 |
Wild OOB read (and NVRAM garbage write) in _mapping_commit_enc_entry via unvalidated enclosure start_index ingested from DPM pg0 (num_slots==0 bypasses DF-1282)
sys/dev/raid/mpr/mpr_mapping.c:129 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4424 |
Medium |
6.1 |
Negotiated SEG_MAX smaller than a MAXPHYS transfer overflows the per-queue sglist: KASSERT panic on INVARIANTS kernels, truncated/mislabeled descriptor chain in production
sys/dev/virtual/virtio/block/virtio_blk.c:582 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4686 |
Medium |
6.1 |
ar2425: FillVpdTable/interpolate span never clamped β descending curve β (uint16_t)(PmaxβPmin) wrap β ~131 KB sequential OOB write past the function-static VpdTable_* block in kernel static storage; valid curve spanning >63 half-dB β OOB write with no wrap (ar2425 twin of DF-4683, flagged at ar2425.c:311)
sys/dev/netif/ath/ath_hal/ar5212/ar2425.c:311 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5754 |
Medium |
6.1 |
hci_detach() frees struct hci_unit with no lifetime protection for in-flight kernel processing: btintr()'s unit-list walk and hci_intr()'s devlock loop (and in-flight driver rx, and hci_unit_lookup's unreferenced pointers) operate on the freed unit -> UAF through hci_devlock
sys/netbt/hci_unit.c:123 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3821 |
Low |
6.1 |
Unvalidated GETCOMMPREF geometry: aac_max_fib_size of zero divides by zero at attach (boot panic); sizes below the 28-byte FIB header make the unconditional header copyin overflow the undersized FIB slots
sys/dev/raid/aac/aac.c:1802 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4172 |
Low |
6.1 |
iir_intr: unvalidated controller completion index reads/writes up to 2 gdt_ccb entries past sc_gccbs[124] (OOB dispatch, SLIST corruption, wild gc_ccb/gc_ucmd derefs)
sys/dev/raid/iir/iir.c:1580 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4889 |
Low |
6.1 |
iir_pci_attach drives the i960 MPR register layout at fixed offsets 0x2c-0x3fc0 with no BAR0 size validation β short BAR0 => MMIO reads/writes past the resource mapping (panic or up to ~12KB wild zero-write) before the magic read-back can reject the card
sys/dev/raid/iir/iir_pci.c:186 Β· pass 2 Β· new |
Out-of-bounds device-memory (MMIO) access from a short BAR0: kernel page-fault panic or up to ~12KB bulk zero-write past the resource mapping, before the magic read-back check; requires crafted/broken PCIe hardware with the probed Intel/ICP IDs (CWE-125/CWE-787 device-memory variant) |
untested |
not_testable |
untriaged |
β |
β |
| DF-4964 |
Low |
6.1 |
sili(4): attach maps BAR(2) and carves per-port subregions with no size validation β undersized port-register window on a crafted/malfunctioning SiI 3124/3132 drives OOB MMIO writes/reads past the pmap-mapped window (kernel panic at boot/kldload, or silent corruption of the adjacent mapping)
sys/dev/disk/sili/sili_attach.c:170 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5781 |
Low |
6.1 |
hci_route_lookup walks hci_unit_list and unit->hci_links with no synchronization against attach/detach (crit_enter-only) and privileged hci_disable teardown β UAF reads and 6-byte freed-heap disclosure via getsockname
sys/netbt/hci_misc.c:65 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3169 |
High |
6.0 |
umount -f frees autofs nodes/mount under in-flight triggers and mkdirs β use-after-free (read+write, dangling requests, armed callout in freed memory) and a guaranteed NULL-deref panic variant
sys/vfs/autofs/autofs_vnops.c:209 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3191 |
High |
6.0 |
fuse_mount() lacks a double-mount guard: one /dev/fuse fd mounted at two mount points shares one struct fuse_mount β second mount re-initializes the live object (locks/IPC lists/RB tree/rfnp) and the first unmount frees the second mount's root and splices stale nodes into its tree (root-clobber UAF; guaranteed panic)
sys/vfs/fuse/fuse_vfsops.c:168 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3198 |
High |
6.0 |
Use-after-free in DEVFS_RULE_RESET: devfs_gc() frees nodes under the topology walker's saved cursors
sys/vfs/devfs/devfs_rules.c:222 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3227 |
High |
6.0 |
FUSE blind reply completes and frees a fuse_ipc still linked on request_head β deterministic stale-queue-head corruption, 'Bad tailq' kernel panic
sys/vfs/fuse/fuse_device.c:192 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2668 |
Medium |
6.0 |
fhstatfs(2)/fhstatvfs(2) overwrite the vfs_getvfs()-held mount with vp->v_mount: nullfs pass-through FHTOVP causes mnt_hold underflow β KKASSERT panic on INVARIANTS, kfree() of a live struct mount (UAF) on release kernels
sys/kern/vfs_syscalls.c:5074 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3120 |
Medium |
6.0 |
Unsynchronized UFS quotaon/quotaoff mount-state machine: concurrent Q_QUOTAOFF double-executes the teardown β double vn_close(qvp) (vnode opencount/refcount corruption, UAF), crfree(NOCRED) NULL-deref, and dqsync-against-closed-quota-file panic
sys/vfs/ufs/ufs_quota.c:503 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3319 |
Medium |
6.0 |
v4 SIOCDLIFADDR kernel stack buffer overflow: in_lifaddr_ioctl bcopy uses unvalidated ia_sockmask/ia_dstaddr sin_len as length into 64-byte on-stack in_aliasreq β deterministic on stock lo0 (::1 /128) via the DF-0490 confusion, and via root-poisoned sin_len once the filter is fixed
sys/netinet/in.c:911 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3383 |
Medium |
6.0 |
bpfdetach() frees only the FIRST bpf_if of an interface: leftover entries (wlan radiotap) keep bif_ifp/bif_driverp pointing at the freed ifnet -> UAF writes/reads on later close or rebind; bp==NULL branch dereferences NULL instead of reporting
sys/net/bpf.c:1566 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3645 |
Medium |
6.0 |
UAF + double free of rdev->pm.dpm.{ps,priv}: ci_parse_power_table/ci_dpm_init free and leave dangling pointers, and radeon_pm_init_dpm ignores the dpm.init failure
sys/dev/drm/radeon/ci_dpm.c:5620 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4478 |
Medium |
6.0 |
State-machine ioctls run without lock_config and race config frees: setstate()/set_sd_state()/update_plex_state() walk SD[]/plex->sdnos that unlocked VINUM_DETACH/ATTACH and locked VINUM_CREATE free/reallocate (UAF-class; guest killed 2/3 runs)
sys/dev/raid/vinum/vinumstate.c:104 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4669 |
Medium |
6.0 |
snp: SNPSTTY re-attach cleanup is dead code β old target tty left poisoned with dangling t_sc β deterministic snplclose UAF / slab double free
sys/dev/misc/snp/snp.c:557 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4907 |
Medium |
6.0 |
dm_target_delay _destroy() drains queued bios asynchronously; their completion path writes through stale &dmv->stats into the freed-and-reallocated dm_dev (deterministic write-after-free β cross-object devstat corruption β panic)
sys/dev/disk/dm/delay/dm_target_delay.c:267 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5065 |
Medium |
6.0 |
dm_target_uninit() tears down the target registry unconditionally: frees still-registered/still-referenced dm_target_t objects and lockuninit's the global lock β deterministic freed-module-text execution (Fatal trap 12), plus heap UAF of busied targets in the DF-4751 race window
sys/dev/disk/dm/dm_target.c:277 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5502 |
Medium |
6.0 |
ioapic_add() accepts unvalidated firmware GSI base/npin: negative-GSI chain OOB-reads ioc_intsrc[] (ioapic.c:372), forwards negative IRQs to ioapic_set_legacy_irqmap() for silent OOB writes on production kernels, and aliases the int_gsi==-1 sentinel for a deterministic production panic (ioapic.c:520)
sys/platform/pc64/apic/ioapic.c:229 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5662 |
Medium |
6.0 |
cam_extend_set() has no lower-bound index validation: controlled kernel-pointer OOB write before the ps[] array (incl. cross-object corruption), NULL-page fatal trap on fresh arrays, and signed-overflow panic in the growth size math
sys/bus/cam/cam_extend.c:56 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5663 |
Medium |
6.0 |
Unsynchronized cam_extend growth frees ea->ps under lockless readers: use-after-free read returned to CAM drivers as struct cam_periph * (root cause of the DF-5462 class; first conclusive reproduction β consumption panics the kernel)
sys/bus/cam/cam_extend.c:64 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2771 |
Low |
6.0 |
mapsize 64-bit accumulation overflow in link_elf_obj_load_file sizes the KVA mapping below the per-section bzero/read lengths β wild zero-fill past the mapping
sys/kern/link_elf_obj.c:621 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2973 |
Low |
6.0 |
eventhandler_deregister() performs no tag/list validation β wrong-list or stale tag deterministically corrupts both lists' tail sentinels (write-after-free, cross-list handler aliasing, double free); tag==NULL silently frees an entire shared list
sys/kern/subr_eventhandler.c:123 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3443 |
Low |
6.0 |
altq_priq: dangling pif_ifq use-after-free - interface destroyed mid-pf-transaction leaves PRIQ_LOCK operating on freed ifnet/altq_subq (slab freelist corruption panic / permanent pf_token wedge)
sys/net/altq/altq_priq.c:114 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3695 |
Low |
6.0 |
ata_raid_delete frees the ar_softc without draining in-flight I/O β use-after-free in ata_raid_done/strategy
sys/dev/disk/nata/ata-raid.c:1281 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3720 |
Low |
6.0 |
Unvalidated firmware-returned SRAM offsets used as kernel write pointers (lanai TX/RX rings, intr_coal_delay_ptr, irq_claim/irq_deassert, RSS table and key): OOB MMIO writes past the BAR mapping on a hostile device; int16_t ring-mask truncation on device ring sizes
sys/dev/netif/mxge/if_mxge.c:1207 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3824 |
Low |
6.0 |
ASR_init_message writes the mandatory sense SGL element 8 bytes past asr_action's 512-byte stack buffer when one CCB spans >=58 physical runs; the adapter-derived ha_SgSize limit is computed and never used
sys/dev/raid/asr/asr.c:1812 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4174 |
Low |
6.0 |
gdtexecuteccb: unbounded physical scatter/gather copy β CAM_SCATTER_VALID|CAM_SG_LIST_PHYS CCBs with sglist_cnt > GDT_MAXSG overflow the 324-byte gccb->gc_cmd (pass(4)-reachable heap overflow)
sys/dev/raid/iir/iir.c:876 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4399 |
Low |
6.0 |
Passthrough SGL written at user-controlled offset: gcmd->size (u8, verbatim from TWS_IOCTL_FIRMWARE_PASS_THROUGH) used as SGL destination offset β lands on neighboring request's header_desc
sys/dev/raid/tws/tws_cam.c:1034 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4704 |
Low |
6.0 |
get_pixel_size() integer-divides depth by 8 and the blit/fill dispatch falls through to 32-bit ops β 8bpp KMS console gets 4-byte/pixel writes on a 1-byte/pixel stride (OOB writes past the framebuffer mapping)
sys/dev/misc/syscons/sckmsrndr.c:138 Β· pass 2 Β· new |
Kernel page faults / adjacent-memory corruption on the first console clear at 8bpp KMS console (4-byte writes on a 1-byte stride); root/boot-config gated |
untested |
not_testable |
untriaged |
β |
β |
| DF-4929 |
Low |
6.0 |
tpmcrb_detach/tpm20_release tear down the TPM device with no dev_lock and no draining while transmit is in flight: softc/buf use-after-free, discard callout fires into freed memory β deterministic kernel panic
sys/dev/crypto/tpm/tpm_crb.c:230 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5025 |
Low |
6.0 |
ipsd open/detach TOCTOU: detach can free the ipsdisk softc under an open descriptor β ipsd_close/strategy then write freed memory (DF-5013 pattern in ips)
sys/dev/raid/ips/ips_disk.c:92 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3074 |
Low |
5.9 |
nfs_mountdiskless() double-frees the dup_sockaddr() on mountnfs() failure (mountnfs's bad: path frees nm_nam via nfs_free_mount, then haderror kfrees it again)
sys/vfs/nfs/nfs_vfsops.c:767 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2679 |
High |
5.8 |
NEWBUS device teardown races unprivileged sysctl readers: use-after-free read in sysctl_devices()/device_sysctl_handler() (panic + permanent hang from uid!=0)
sys/kern/subr_bus.c:3858 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2694 |
High |
5.8 |
sorflush() frees the receive sockbuf underneath sleeping sorecvtcp()/soreceive() copiers β UAF race, unprivileged kernel panic on both TCP and AF_UNIX/UDP paths
sys/kern/uipc_socket.c:1953 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3173 |
High |
5.8 |
autofs request timeout task is armed on the creator CPU's taskqueue but cancelled/drained on the last releaser CPU's queue β foreign-list STAILQ_REMOVE NULL-deref panic and wrong-queue-drain use-after-free (read+write after objcache_put)
sys/vfs/autofs/autofs.c:303 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2786 |
Medium |
5.8 |
mtx_abort_link stale-state double-unlink: mtx_delete_link leaves MTX_LINK_LINKED_* set on an unlinked link until an unlocked IDLE reset, letting a racing abort write through dangling next/prev (UAF-write / wait-queue poisoning)
sys/kern/kern_mutex.c:914 Β· pass 2 Β· new |
none |
not_reproduced |
inconclusive |
untriaged |
β |
β |
| DF-2896 |
Medium |
5.8 |
cnwrite() constty use-after-free: unsynchronized constty->t_dev captured without a reference and dispatched through dev_doperate() after a sleepable log_console() walk, while an unprivileged user (default UCONSOLE) controls the cdev's lifetime
sys/kern/tty_cons.c:465 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2923 |
Medium |
5.8 |
vq_vptomp check-then-use race on vp->v_pfsmp β mount use-after-free with indirect call through freed memory
sys/kern/vfs_quota.c:420 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3134 |
Medium |
5.8 |
dirfs_node_setpassive's check-then-close of dn_fd races dirfs_findfd's ref-then-use and all fd consumers β in-flight operations can use a CLOSED (and host-RECYCLED) descriptor against the wrong host file/directory
sys/vfs/dirfs/dirfs_subr.c:849 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3862 |
Medium |
5.8 |
amdgpu_device_gpu_recover dereferences the timed-out job across the multi-second GPU reset although the fence-completion path can already have kfree'd it (UAF, concurrent-reinit family)
sys/dev/drm/amd/amdgpu/amdgpu_device.c:3414 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4482 |
Medium |
5.8 |
Revive-conflict waitlist/relaunch machinery launches and walks freed requests (UAF cluster) β reliable kernel panic under concurrent conflicting I/O during subdisk revive
sys/dev/raid/vinum/vinumrequest.c:327 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4484 |
Medium |
5.8 |
acpi_video_vo_bind leaves dangling vo->vo_levels when _BCL re-evaluation fails -> UAF read via sysctl and double-free panic in vo_destroy
sys/dev/acpica/acpi_video/acpi_video.c:597 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4525 |
Medium |
5.8 |
amdgpu_dpm: error-path double/triple free of all dyn_state power-table pointers - amdgpu_free_extended_power_table() frees without NULLing and every caller teardown frees the dangling pointers again
sys/dev/drm/amd/amdgpu/amdgpu_dpm.c:775 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4584 |
Medium |
5.8 |
radeon_bo_get_surface_reg steals surface registers from other BOs under no lock: NULL-deref panic and 4-byte UAF write into freed radeon_bo slab
sys/dev/drm/radeon/radeon_object.c:609 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4783 |
Medium |
5.8 |
mmcsd_detach() does not exclude or drain the data path: strategy/open callers race lockuninit() and the newbus softc free (DF-4646 family)
sys/dev/disk/mmcsd/mmcsd.c:209 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5394 |
Medium |
5.8 |
usb_detach() races the asynchronous usb_bus_attach(): NULL-softc guard bypassed with a wild softc (-8) β supervisor write fault in usb_callout_drain; the teardown-skip variant frees the whole usb_bus under 4 live USB kthreads
sys/bus/u4b/controller/usb_controller.c:191 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5551 |
Medium |
5.8 |
camq_insert() into a full queue writes a kernel pointer one slot past the array (full-queue guard is DIAGNOSTIC-only)
sys/bus/cam/cam_queue.c:148 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5689 |
Medium |
5.8 |
idr_find()/idr_for_each() read the node array without the idr token while idr_grow() kfree()s the old array β use-after-free read returns a stale kernel object pointer (and idr_for_each walks OOB past the freed array)
sys/libkern/linux_idr.c:449 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3315 |
Low |
5.8 |
in_pcblist_range walks non-shared pcbinfo (ripcbinfo) with no synchronization; non-atomic marker advance vs same-cpu netisr pcb teardown yields UAF read/write and list corruption
sys/netinet/in_pcb.c:2452 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3656 |
Low |
5.8 |
Error-path UAF: amdgpu_dm init failure paths kfree registered i2c adapters / connectors / encoders / planes that remain in DRM core lists
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c:4080 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4468 |
Low |
5.8 |
ess_attach() pcm_register-failure unwind kfrees sc while the 0666 /dev/mixerN that mixer_init() published survives β dangling mixer devinfo UAF on open/ioctl (DF-4156 family, 8th instance)
sys/dev/sound/pci/solo.c:1045 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4486 |
Low |
5.8 |
REPROBE destroy path leaves the per-output ACPI notify handler registered against freed memory (AcpiRemoveNotifyHandler(NULL) is a no-op)
sys/dev/acpica/acpi_video/acpi_video.c:386 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5381 |
Info |
5.8 |
USB copy engine enforces no bounds: usbd_get_page + usbd_copy_in/out/_user/frame_zero/usb_uiomove memcpy across the loaded extent with no clamp β single chokepoint for ~120 call sites (cross-object heap OOB read/write/zero + wild KVA/UINT32_MAX span + instant panic demonstrated via root KLD; in-tree precedent DF-0998/DF-2357)
sys/bus/u4b/usb_busdma.c:79 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2802 |
Medium |
5.7 |
jail(2) id >= 100000 shares per-prison sysctl nodes (DF-0054 truncation at scale): silent loss of all per-jail capability controls + sysctl_oid freed-under-reference UAF at teardown
sys/kern/kern_jail.c:992 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3539 |
Medium |
5.7 |
v1 ng_async: unserialized SET_CONFIG realloc races rcvdata decode/encode - write-after-free cascades into runaway unbounded kernel heap overflow (silent hard lockup)
sys/netgraph/async/ng_async.c:317 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3594 |
Medium |
5.7 |
bwn_intr_noise missing re-entry guard: 9th noise-sample interrupt writes 4 bytes past noi_samples into mac_phy
sys/dev/netif/bwn/bwn/if_bwn.c:5198 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3931 |
Medium |
5.7 |
Detach/shutdown lifetime: self-rescheduling mly_periodic can survive callout_stop and in-flight commands are never drained β use-after-free after mly_free()
sys/dev/raid/mly/mly.c:1397 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4023 |
Medium |
5.7 |
Dangling rdev->pm.dpm.ps after kzalloc-failure kfree in rv7xx_parse_power_table (:2308): ignored rv770_dpm_init error -> double free in rv770_dpm_fini at unload/reboot + leak of parsed ps_priv states β shared root site of DF-3645/3755/3955/3973, rv770-dispatch instance
sys/dev/drm/radeon/rv770_dpm.c:2306 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4117 |
Medium |
5.7 |
Dangling rdev->pm.dpm.ps after swallowed cypress_dpm_init failure: double free in cypress_dpm_fini at unload/reboot (cypress dispatch of the DF-4023/DF-3973 family)
sys/dev/drm/radeon/cypress_dpm.c:2050 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4144 |
Medium |
5.7 |
Dangling rdev->pm.dpm.ps after kfree-without-NULL in trinity_parse_power_table (:1781) + swallowed trinity_dpm_init error -> double free in trinity_dpm_fini (:2086-2089) and UAF via boot_ps at enable; ps_priv[0..i-1] leaked β Trinity twin of DF-4023/DF-3973/DF-4117/DF-4125
sys/dev/drm/radeon/trinity_dpm.c:1766 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4162 |
Medium |
5.7 |
radeon_pm.c:1448 discards radeon_dpm_init() return (and the asic *_init files discard radeon_pm_init's): the root enabler of the six-file NULL-boot_ps / dangling-ps family β central hub fix consolidating DF-4022/3972/4117/4118/4124/4125/4143/4144
sys/dev/drm/radeon/radeon_pm.c:1448 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4240 |
Medium |
5.7 |
dpt_init/dpt_attach: device-fed MAX_CHAN (up to 8 channels) never clamped to MAX_CHANNELS=3 β OOB writes of sims[3..7]/paths[3..7] over live softc members incl. bus_dma_tag_t/bus_dmamap_t (type confusion)
sys/dev/raid/dpt/dpt_scsi.c:1313 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4241 |
Medium |
5.7 |
dpt_intr never validates the status packet's target CCB is in flight: duplicate/unsolicited device-fed ccb_busaddr -> double free-list insertion of dccb + double xpt_done of stale/recycled ccb (UAF family)
sys/dev/raid/dpt/dpt_scsi.c:1518 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4599 |
Medium |
5.7 |
VINUM_RESETCONFIG calls free_vinum() without lock_config(): frees all DRIVE/SD/PLEX/VOL arrays racing even the lock-holding VINUM_CREATE writer and every unlocked *CONFIG reader β kernel heap UAF (read proven: panic; write/double-free windows on same interleaving)
sys/dev/raid/vinum/vinumioctl.c:214 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4679 |
Medium |
5.7 |
Stolen reserved-base above stolen_top u64-wraps g4x/bdw reserved size, bypasses resource_contains and inflates stolen_usable_size up to 96x β OOB physical allocations beyond stolen
sys/dev/drm/i915/i915_gem_stolen.c:472 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4683 |
Medium |
5.7 |
FillVpdTable/interpolate span never clamped: descending EEPROM curve β (uint16_t)(Pmax-Pmin) wrap β ~131 KB sequential OOB heap WRITE past ar2317State; valid curve spanning >63 half-dB β OOB write past object end with NO wrap (not covered by any family twin)
sys/dev/netif/ath/ath_hal/ar5212/ar2317.c:289 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5109 |
Medium |
5.7 |
lockdrive() pid-based recursion admits second same-process thread into drive critical section (double vn_close / double Free β BADFREE2 panic)
sys/dev/raid/vinum/vinumlock.c:59 Β· pass 2 Β· new |
panic |
reproduced |
inconclusive |
untriaged |
β |
β |
| DF-5218 |
Medium |
5.7 |
dc_sink retain/release contract violated by DM forced-connector paths: emulated_link_detect strands references (permanent ~1KB dc_sink leak per forced-detect cycle) and update_connector_after_detect branch A releases a borrowed dc_sink (premature free with dangling link->local_sink, or kref_put UAF write + dc_sink_free double-free on freed slab after EDID-change detect)
sys/dev/drm/amd/display/dc/core/dc_sink.c:68 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5268 |
Medium |
5.7 |
xhci_init latches unmasked device-controlled register offsets (CAPLENGTH/RTSOFF/DBOFF): every later XREAD/XWRITE is an unbounded OOB MMIO access past the mapped BAR
sys/bus/u4b/controller/xhci.c:626 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3171 |
Low |
5.7 |
mfsclose() deactivates the MFS I/O server on ANY device close β no finality check (speculative: would destroy_dev/kfree the serving mfsnode under a live mount if a non-final close ever slips through)
sys/vfs/mfs/mfs_vfsops.c:136 Β· pass 2 Β· new |
none |
not_reproduced |
inconclusive |
untriaged |
β |
β |
| DF-3405 |
Low |
5.7 |
tap(4) softc use-after-free: clone-destroy/create paths race open() with no common lock (kfree'd tap_softc used by tapopen/tapwrite/tapclose)
sys/net/tap/if_tap.c:223 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3562 |
Low |
5.7 |
serpent_set_key() one-sided key-length validation: negative lengths wrap through u_int32_t i/lk into ~16 GiB runaway/wild OOB writes; non-byte lengths read past the key buffer
sys/crypto/serpent/serpent.c:453 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3963 |
Low |
5.7 |
mv family queue-pointer registers used unmasked: device-fed outbound_tail/inbound_head index inbound_q/outbound_q[512] MMIO β OOB bus-space read and 8-byte OOB MMIO write up to ~32GB past BAR2
sys/dev/raid/hptiop/hptiop.c:229 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4163 |
Low |
5.7 |
radeon_pm_fini_dpm never cancels pm.dpm.thermal.work nor clears dpm_enabled while the thermal IRQ outlives pm_fini: post-fini UAF in radeon_dpm_thermal_work_handler
sys/dev/drm/radeon/radeon_pm.c:1690 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4173 |
Low |
5.7 |
iir_shutdown: shared flush ucmd freed (wrong malloc type) while still queued/in flight, and re-queued for the next drive while a gccb owns it β use-after-free at shutdown
sys/dev/raid/iir/iir.c:1493 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4223 |
Low |
5.7 |
Attach error-path asymmetry: double bus_dmamap_destroy (double kfree of M_DEVBUF maps) and callout_drain/bus_dmamap_destroy walked through a NULL hcb array
sys/dev/virtual/vmware/pvscsi/pvscsi.c:615 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-4286 |
Low |
5.7 |
acpi_thinkpad LED async task (AcpiOsExecute) not drained on detach β use-after-free of the softc
sys/dev/acpica/acpi_thinkpad/acpi_thinkpad.c:391 Β· pass 2 Β· new |
use-after-free of acpi_thinkpad softc (read/write + AcpiEvaluateObject with handles loaded from freed memory) racing kldunload/devctl-detach against /dev/led/thinklight toggles; root-only, hardware-gated |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4438 |
Low |
5.7 |
mrsas_cam_attach error paths free sim_0/sim_1 without clearing sc pointers β attach_fail_cam unwind re-frees via mrsas_cam_detach: cam_sim_path() UAF read, second xpt_bus_deregister, cam_sim_free() double-free into M_CAMSIM (plus devq refcount underflow)
sys/dev/raid/mrsas/mrsas_cam.c:150 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4512 |
Low |
5.7 |
vmbus: selected/registered vmbus cputimer never stopped or deregistered on detach - per-tick reload runs on the freed vmbus_softc and through unloaded module text (UAF write + dangling call target) after kldunload
sys/dev/virtual/hyperv/vmbus/vmbus.c:280 Β· pass 2 Β· new |
Per-tick UAF write (8-byte host-influenced value into freed softc) + call through unloaded module text after kldunload |
untested |
not_testable |
untriaged |
β |
β |
| DF-4543 |
Low |
5.7 |
agp: /dev/agpgart cdev outlives chipset detach - dangling si_drv1 UAF on open fds, plus free_cdev unit-vs-minor mismatch leaves a stale node
sys/dev/agp/agp.c:240 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4719 |
Low |
5.7 |
Pending AAC_EVENT_CMFREE fires after aac_cam_detach freed the sim -> xpt_release_simq/xpt_done through freed objects (UAF)
sys/dev/raid/aac/aac_cam.c:165 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4835 |
Low |
5.7 |
create_frame_pool failure path frees frames and destroys the tag while leaving every pointer dangling: attach unwind mrsas_free_mem() double-frees all frames and the tag
sys/dev/raid/mrsas/mrsas_ioctl.c:422 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4916 |
Low |
5.7 |
amdgpu_virt_init_data_exchange: host-controlled pf2vf_size drives a 1 KB memset (and the header reads) past the kmap'ed fw VRAM reservation β no validation that the region contains the 64 KB-offset exchange area
sys/dev/drm/amd/amdgpu/amdgpu_virt.c:402 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5022 |
Low |
5.7 |
feed_volume_init() publishes f->data before validation completes and frees it on both error branches without clearing it β feeder_create()'s error unwind double-frees the info block
sys/dev/sound/pcm/feeder_volume.c:165 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5141 |
Low |
5.7 |
mlx_pci_attach() double mlx_free() on mlx_attach() failure β kernel heap double-free/UAF (mlx_enq2 kfree'd twice, DMA tags/s/g/IRQ resources released twice)
sys/dev/raid/mlx/mlx_pci.c:202 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5301 |
Low |
5.7 |
TOCTOU: uhub_child_location_string()/uhub_child_pnpinfo_string() dereference sc->sc_udev->hub after a device_is_attached() guard that stays true while uhub_detach() frees and NULLs it (NULL-deref panic / UAF read)
sys/bus/u4b/usb_hub.c:1668 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5563 |
Low |
5.7 |
iicbus_request_bus parks requesters on the softc with timeout-0 tsleep and no detach drain β kldunload under a parked waiter frees the softc and unmaps iicbus.ko text under it: freed-text execution (UAF) on resume, plus sc->owner write into freed memory on colliding wakeup
sys/bus/iicbus/iiconf.c:63 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5582 |
Low |
5.7 |
smbus_acpi_detach does not quiesce in-flight GSBUS address-space handler dispatches: AcpiRemoveAddressSpaceHandler frees the handler object and its held ContextMutex, and newbus frees the softc/parent device underneath the running handler (UAF, panic/heap corruption)
sys/bus/smbus/smbacpi/smbacpi.c:268 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5643 |
Low |
5.7 |
smbus_detach never checks sc->owner: the bus detaches (and device_detach frees the softc) underneath the owning client and parked requesters β the owner's release (the smbioctl exit path) takes Fatal trap 12, and a parked SMB_WAIT requester woken on the freed softc performs a post-free read+write and returns success
sys/bus/smbus/smbus.c:105 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5664 |
Low |
5.7 |
usb_alloc_mbufs() truncates the 64-bit (block_size + sizeof(struct usb_mbuf)) * nblocks product into usb_size_t before kmalloc β undersized heap allocation whose data pointers are constructed fully out of bounds (latent CWE-190-to-CWE-787; no unprivileged in-tree path reaches it today)
sys/bus/u4b/usb_mbuf.c:62 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5765 |
Low |
5.7 |
Unsynchronized cspair lifetime handoff: iconv_xlat_open/iconv_xlat_close manipulate cp_refcount lockless against under-lock cspair teardown, and iconv_sysctl_add's error path frees referenced pairs unconditionally β UAF writes into freed cspairs, dangling d_table, kernel heap corruption (reproduced panic:BADFREE2)
sys/libiconv/iconv_xlat.c:60 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4829 |
Info |
5.7 |
md(4) mdstrategy_malloc sector-array growth uses 32-bit sector number and 32-bit size arithmetic: wrapped growth kmalloc(0)/(undersized chunk) -> ZERO_LENGTH_PTR bcopy / heap overflow + wild write (LATENT β unreachable behind dscheck)
sys/dev/disk/md/md.c:253 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4893 |
Info |
5.7 |
Dead AH_DEBUG_ALQ block: unlocked global `ath_hal_alq` TOCTOU β use-after-free of `struct alq` if ever compiled (latent, triple-unreachable on stock DF)
sys/dev/netif/ath/ath_hal/ah_osdep.c:230 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3095 |
Medium |
5.6 |
Unvalidated vol0_next_tid at mount: deterministic kernel panic on first write (TID exhaustion) and silent TID wraparound that leaks new records into every historical snapshot
sys/vfs/hammer/hammer_vfsops.c:683 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3501 |
Medium |
5.6 |
ng_fec_addport arpcom type confusion: writes a node pointer at +sizeof(ifnet)+16 and 6 known MAC bytes at +sizeof(ifnet) past ANY non-arpcom ifnet allocation (lo0), reads 6 bytes OOB disclosed as the fec MAC (kernel pointer leak via gif), and corrupts live gif_softc fields -> kernel GPF
sys/netgraph/fec/ng_fec.c:378 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2680 |
Low |
5.6 |
/dev/devctl FIOASYNC stores unreferenced curproc in devsoftc.async_proc; devclose never clears it -> ksignal() on freed struct proc (UAF write)
sys/kern/subr_bus.c:412 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2921 |
Medium |
5.5 |
Signed integer overflow in nvtruncbuf()/nvnode_pager_setsize() at file lengths within blksize of 2^63 β ~2^63-iteration unmap loop holding the vnode token and object lock: unprivileged, unkillable, permanent kernel livelock on HAMMER2 (guest becomes unshut-downable)
sys/kern/vfs_vm.c:145 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2999 |
Medium |
5.5 |
hammer(1) setattr/write have no va_size clamp: DF-2921-class nvtruncbuf/nvnode_pager_setsize signed-overflow β unprivileged permanent kernel livelock on any HAMMER1 mount
sys/vfs/hammer/hammer_vnops.c:670 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3207 |
Medium |
5.5 |
nullfs_unmount() frees mnt_data while callers without unmount interlock can still reach it: kern_statfs/kern_fstatfs/sys_quotactl dereference a dead nullfs mount β deterministic NULL-deref panic (kernel DoS) triggered by an unprivileged user around umount -f; race-window UAF read of the freed null_mount
sys/vfs/nullfs/null_vfsops.c:262 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3218 |
Medium |
5.5 |
dirfs_root open-failure teardown: dirfs_free_vp NULL-pointer write (vp->v_data at NULL), latent double-free, and never-cleared dangling dmp->dm_root
sys/vfs/dirfs/dirfs_vfsops.c:246 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3235 |
Medium |
5.5 |
procfs_docmdline() use-after-free read of freed pargs / lwp_lpmap / p_upmap across a blocking uiomove β cross-process argv disclosure past the CHECKIO gate
sys/vfs/procfs/procfs_status.c:236 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3478 |
Medium |
5.5 |
listen(2) on an L2CAP SEQPACKET socket recurses solisten()βso_pru_listen() without bound β kernel stack overflow β CPU double fault (unprivileged, 100% reproducible panic)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c:2460 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3614 |
Medium |
5.5 |
Heap OOB write past SISLANDS_SMC_STATETABLE.lowSMIO[32] via untrimmed SVI2 VDDCI voltage-table count in si_populate_smc_voltage_table β radeon twin of the lowSMIO half of amdgpu DF-3585
sys/dev/drm/radeon/si_dpm.c:4046 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4370 |
Medium |
5.5 |
amdgpu_bo_placement_from_domain walks up to 6 domain entries into placements[AMDGPU_BO_MAX_PLACEMENTS=3] and BUG_ONs: unprivileged GEM_CREATE with domains=VRAM|GTT|CPU panics the kernel; domains=0x3f writes places[3..5] OOB (over bo->placement/bo->tbo) before the panic
sys/dev/drm/amd/amdgpu/amdgpu_object.c:139 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4721 |
Medium |
5.5 |
launch_requests() keeps walking the request group after an inline completion freed it (trailing XFR_BAD_SUBDISK rqe) - kernel panic on the ORDINARY degraded RAID-5 write (new, waitlist-independent arm of the DF-4482 UAF cluster)
sys/dev/raid/vinum/vinumrequest.c:395 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5749 |
Medium |
5.5 |
Unsynchronized softclock l2cap_rtx() vs netisr-port l2cap_detach()/l2cap_close(): double channel/request teardown β kernel page fault (supervisor WRITE), zone double-free, hard freeze (l2cap analog of DF-0724/5748, co-firing DF-0745's sink)
sys/netbt/l2cap_upper.c:267 Β· pass 2 Β· new |
panic |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-3242 |
Low |
5.5 |
ufs_check_export hands out &np->netc_anon after dropping NE_LOCK β concurrent export update (mount -u MNT_DELEXPORT) frees the netcred while nfsrv_fhtovp still reads the embedded credential across a window that includes VFS_FHTOVP disk I/O: UAF read feeding garbage uid/groups into the NFS root-squash mapping
sys/vfs/ufs/ufs_vfsops.c:246 Β· pass 2 Β· new |
leak |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3092 |
Info |
5.5 |
fillinusemap() tail-marking loop compares a cluster number against a word-index bound (never executes) and chainlength()'s word-relative clamp misses β phantom "free" clusters beyond pm_maxcluster drive usemap_alloc KASSERT panic on INVARIANTS kernels
sys/vfs/msdosfs/msdosfs_fat.c:320 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4018 |
Info |
5.5 |
amdgpu userptr machinery is dead-but-armed: usertask is never set, so re-enabling GEM_USERPTR instantly NULL-derefs in amdgpu_ttm_tt_get_user_pages; gup shim has an inverted KKASSERT; ttm->sg is freed without NULLing (double-free shape)
sys/dev/drm/amd/amdgpu/amdgpu_ttm.c:834 Β· pass 2 Β· new |
amdgpu userptr machinery is dead-but-armed: usertask never set (#if 0) so re-enabling GEM_USERPTR instantly NULL-derefs at amdgpu_ttm.c:834 (guard after deref); gup shim has an inverted KKASSERT; pin failure path kfrees ttm->sg without NULLing (double-free shape); bind-error paths leak pinned pages. |
untested |
not_testable |
untriaged |
β |
β |
| DF-4003 |
Medium |
5.4 |
fiji_populate_cac_table overflows BapmVddcVid{Lo,Hi}Sidd[16] and OOB-reads vddc_voltage_table.entries[32]
sys/dev/drm/amd/powerplay/smumgr/fiji_smumgr.c:772 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4004 |
Medium |
5.4 |
fiji clock-stretcher walk overflows Sclk_voltageOffset[8] using the raw VBIOS SCLK-dependency count
sys/dev/drm/amd/powerplay/smumgr/fiji_smumgr.c:1706 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-5761 |
Medium |
5.4 |
sco_pcb newconn-matching walk UAF: hci_sco_newconn() (netisr) holds a listening pcb across the sonewconn callback while sco_detach() (syscall) unlinks and kfrees it β deterministic kernel panic, indirect-call primitive through freed memory
sys/netbt/sco_upper.c:240 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3830 |
Low |
5.4 |
trm_detach frees I/O port, SRB array and DMA tags before bus_teardown_intr and SIM deregistration, with no drain of in-flight CCBs β use-after-free / permanent CAM wedge on kldunload
sys/dev/disk/trm/trm.c:3696 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3832 |
Low |
5.4 |
trm_eepromBuf[unit] indexed by unbounded adapter unit β 128-byte OOB read+write of adjacent kernel globals at attach with a 5th Tekram card
sys/dev/disk/trm/trm.c:212 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2682 |
High |
5.3 |
sigio use-after-free: funsetown() kfrees struct sigio still dereferenced by lockless pgsigio() readers (socket/tty/kqueue SIGIO wakeups)
sys/kern/kern_descrip.c:1245 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3184 |
High |
5.3 |
procfs_exit() writes pfs->pfs_pid through a pfsnode a concurrent vnode reclaim may already have kfree()'d (use-after-free write, 4-byte OR at offset 20 in the M_PROCFS zone)
sys/vfs/procfs/procfs_subr.c:542 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3582 |
High |
5.3 |
Type-confused FCPARAM() write in RQCS_RESET_OCCURRED handler: on dual-bus SCSI cards a routine bus reset performs a 32-bit RMW ~21 KB past the 408-byte isp_param heap allocation
sys/dev/disk/isp/isp.c:6105 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2719 |
Medium |
5.3 |
Coredump each_segment traverses the vm_map RB-tree unlocked while a pre-counted-'stopped' sibling LWP can still be mutating it (UAF read race)
sys/kern/imgact_elf.c:1193 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2918 |
Medium |
5.3 |
Unsynchronized vfsconf registry: sys_mount vs kldunload TOCTOU β UAF write/call through unloaded module (reproduced as irrecoverable kernel deadlock of the mount/linker subsystem)
sys/kern/vfs_init.c:264 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3099 |
Medium |
5.3 |
hpfs_write consumes unvalidated on-disk extent length: (runl+1)*DEV_BSIZE int overflow β towrite==0 β zero-size getblk/bread + size_t underflow in uiomove β unkillable kernel livelock (and latent OOB copyin)
sys/vfs/hpfs/hpfs_vnops.c:394 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3213 |
Medium |
5.3 |
Stale RC_REPSTATUS survives dup-reply-cache slot reuse: rc_status aliases the cached rc_reply mbuf pointer (union type confusion) β kernel heap-pointer material and wrong status-only replies served to unauthenticated remote clients on retransmission
sys/vfs/nfs/nfs_srvcache.c:212 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3389 |
Medium |
5.3 |
ip6a_dstia6 stores an uncounted in6_ifaddr pointer in the mbuf that outlives the address across the deferred transport-processing netmsg (UAF read)
sys/netinet6/ip6_input.c:490 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3457 |
Medium |
5.3 |
gif(4) clone-destroy tears down softc state with no ifnet serializer while in-flight gif_output()/in_gif_output() dereferences it β use-after-free, reproduced kernel panic
sys/netinet/in_gif.c:101 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3673 |
Medium |
5.3 |
mpt_timeout() uses the CCB after xpt_done() hands it back β callout_stop() does not interlock against the in-progress timeout callback (freed/recycled CCB -> wild deref or wrong-request abort)
sys/dev/disk/mpt/mpt_cam.c:1240 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4037 |
Medium |
5.3 |
polaris10_populate_cac_table overflows BapmVddcVid{Lo,Hi,Hi2}Sidd[16] and OOB-reads vddc_voltage_table.entries[32]
sys/dev/drm/amd/powerplay/smumgr/polaris10_smumgr.c:712 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4038 |
Medium |
5.3 |
polaris10 clock-stretcher walk overflows Sclk_voltageOffset[8] using the raw VBIOS SCLK-dependency count; AVFS walk OOB-reads entries[i<NUM_VFT_COLUMNS] when the count is lower
sys/dev/drm/amd/powerplay/smumgr/polaris10_smumgr.c:1555 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4208 |
Medium |
5.3 |
legacyEepromDiag() HAL_DIAG_EEPROM_EXP_* union type confusion: returns EEPROM-derived wild pointer/size that ath_ioctl_diag copyout()s (non-canonical -> panic), plus HAL_DIAG_EEPROM full-struct dump leaking 6 kernel heap pointers
sys/dev/netif/ath/ath_hal/ah_eeprom_v3.c:1725 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4693 |
Medium |
5.3 |
sili_pm: pm_read/pm_write recycle the ata_xfer while the chip still owns the slot β deferred poll timeout returns ATA_S_ONCHIP and the accessors put the ccb back on the free list with ap_expired processing pending
sys/dev/disk/sili/sili_pm.c:657 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4764 |
Medium |
5.3 |
Type confusion in hpt_get_info: goto is_array passes RAID-1 member disk to hpt_copy_array_info -> punned union fields (bArnMember=df_on_line=1, bit21/22 of disk capacity as rf_rebuilding/rf_verifying, pMember[0]=Device.mv) cause kernel SIGFPE panic on unprivileged sysctl hptmv.status read
sys/dev/raid/hptmv/hptproc.c:523 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4844 |
Medium |
5.3 |
drm_sched_entity_fini dependency cleanup check-then-uses entity->dependency while drm_sched_entity_clear_dep NULLs it unsynchronized from fence-signaling context β dma_fence_remove_callback(NULL/stale) NULL-deref lockmgr panic or UAF (tight-window TOCTOU, beyond DF-1927's scheduler-thread race)
sys/dev/drm/scheduler/sched_entity.c:279 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5249 |
Medium |
5.3 |
Lockless sc->cmdq[] ring: producers store .func before args with no barrier and consumer reads are unordered; torn publish yields func(NULL), 16-slot wrap yields type-confused callbacks and silently lost commands
sys/bus/u4b/wlan/if_run.c:1041 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5547 |
Medium |
5.3 |
fwmem_read_block() advertises a quadlet-rounded receive length for a shorter destination buffer β 1-3 responder-controlled bytes written past the end of the caller's buffer (kernel OOB write)
sys/bus/firewire/fwmem.c:197 Β· pass 2 Β· new |
kernel out-of-bounds WRITE of 1-3 fully responder-controlled bytes past the RPC destination buffer (proven cross-chunk into the adjacent 32-byte heap chunk via production fwmem_strategy->fwmem_read_block->fw_rcv/fw_rcv_copy); on current DFly physio the plain user read(2) path absorbs it into bounce-buffer slack, kernel-originated (UIO_SYSSPACE) reads / direct bio issuers get the full heap overrun |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2985 |
Low |
5.3 |
sysent[] entry swaps are unsynchronized against unlocked syscall dispatch: non-atomic 24-byte struct assignment (register/deregister) races trap.c's separate sy_narg/sy_call loads (torn dispatch), and deregister has no in-flight quiesce β kldunload frees module text while a victim thread executes inside sy_call (UAF execution)
sys/kern/kern_syscalls.c:67 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2988 |
Low |
5.3 |
RB_SCAN concurrency contract overstates the machinery: deleting a node that is another concurrent scan's in-flight element is an unguarded use-after-free
sys/kern/subr_rbtree.c:302 Β· pass 2 Β· new |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3072 |
Low |
5.3 |
tmpfs_alloc_vp KKASSERT(!TMPFS_VNODE_DOOMED) at subr.c:402 is an unguarded race window: NFS fhtovp lookups on an unlinked file during inactive's DOOMED..reclaim interval panic INVARIANTS kernels
sys/vfs/tmpfs/tmpfs_subr.c:395 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4095 |
Low |
5.3 |
emu_intr2 tests and calls sc->mpu_intr/sc->mpu without the lock, racing emu_muninit + mpu401_uninit's kfree at detach β heap UAF on struct mpu401
sys/dev/sound/pci/emu10k1.c:1196 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4220 |
Low |
5.3 |
build_evenly_distributed_points() with num_entries==0 writes 24 bytes past a kcalloc(3) heap object; num_entries==1 divides by zero (kernel #DE panic)
sys/dev/drm/amd/display/modules/color/color_gamma.c:1077 Β· pass 2 Β· new |
none |
reproduced |
inconclusive |
untriaged |
β |
β |
| DF-4323 |
Low |
5.3 |
pcm_unregister() can complete while dsp_clone() sleeps in PCM_WAIT (which holds no SD_F_BUSY), leaving the woken handler to run snd_clone_alloc(NULL)/snd_clone_disabled on freed state and PCM_RELEASE on the freed d->lock β NULL-deref / lock use-after-free panic
sys/dev/sound/pcm/sound.c:1165 Β· pass 2 Β· new |
dsp_clone validates under PCM_LOCK and only then does PCM_WAIT/ACQUIRE |
untested |
not_testable |
untriaged |
β |
β |
| DF-4419 |
Low |
5.3 |
Use-after-free race: unprivileged bktr ioctls race privileged msp_detach and write into the freed msp3400c struct (no locking, admitted by 'XXX mutex lock required')
sys/dev/video/bktr/msp34xx.c:1206 Β· pass 2 Β· new |
UAF write into freed M_DEVBUF block via msp_wake_thread racing msp_detach during kldunload; heap corruption ceiling on dedicated allocation, realistically panic |
untested |
not_testable |
untriaged |
β |
β |
| DF-4647 |
Low |
5.3 |
acpi_fujitsu: in-flight CTLFLAG_ANYBODY sysctl handler executes on freed softc, freed sysctl oids and freed module text after detach β unprivileged-holdable UAF window (oid_running drain in kern_sysctl.c is dead code)
sys/dev/acpica/acpi_fujitsu/acpi_fujitsu.c:340 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5699 |
Low |
5.3 |
prop_dictionary_ingest() runs driver handlers on a borrowed, unpinned object reference after the dictionary lock is dropped β concurrent key removal frees the object underneath the callback (CWE-416)
sys/libprop/prop_ingest.c:133 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2820 |
Info |
5.3 |
Double-free containment in _kfree_obj is INVARIANTS-only: the compiled-in KMALLOC_CHECK_DOUBLE_FREE bitmap and all ring-sanity checks are no-ops in production kernels, so a double free silently duplicates or drops free-ring pointers
sys/kern/kern_kmalloc.c:959 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3987 |
High |
5.2 |
Poisoned cur_link_settings.lane_count outlives link training: dp_test_send_phy_test_pattern OOB stack WRITE past lane_settings[4] (~3KB span) and hpd_rx_irq_check_link_loss_status OOB stack READ past the 6-byte union hpd_irq_data
sys/dev/drm/amd/display/dc/core/dc_link_dp.c:1772 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4247 |
High |
5.2 |
No central bounds-validation layer for VBIOS PowerPlay parsing: offsets/counts/indices never checked against soft_pp_table_size (central fix for the DF-1468/1469/1470/1472 family)
sys/dev/drm/amd/powerplay/hwmgr/processpptables.c:61 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3433 |
Medium |
5.2 |
if_stf teardown races its in-flight decap consumers: unguarded MOD_UNLOAD frees the softc under the lock-free encaptab walk and past the async NETISR_IPV6 queue carrying rcvif=&sc->sc_if - use-after-free (DF-3425 gif twin, wider async vector)
sys/net/stf/if_stf.c:210 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4080 |
Medium |
5.2 |
oce_detach frees ifp (if_free) while interrupts are still enabled and EQ0 deliberately re-armed by oce_if_deactivate: async MCC event in the window reaches oce_mq_handler -> if_link_state_change on the freed ifnet (use-after-free)
sys/dev/netif/oce/oce_if.c:322 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4773 |
Medium |
5.2 |
apple_smc: detach frees sensor-key state while its per-device sysctl oids stay registered until device_delete β post-detach UAF read / NULL-ioport panic window (DF-4647 family)
sys/dev/apple/smc/smc_sysctl.c:169 Β· pass 2 Β· new |
leak |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5282 |
Medium |
5.2 |
ehci_init latches unvalidated device-controlled register geometry (CAPLENGTH/N_PORTS): every EOREAD4/EOWRITE4 lands at attacker-chosen in-BAR offsets, blind/mute interrupt handling live-locks the system on first port event, and OOB MMIO results on undersized-BAR hardware
sys/bus/u4b/controller/ehci.c:308 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3425 |
Low |
5.2 |
gif(4) teardown races the lock-free netisr encaptab walk: encap_detach() LIST_REMOVE+kfree vs encap4_input() walk calling gif_encapcheck() on the softc β use-after-free panic (reproduced)
sys/net/gif/if_gif.c:176 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3530 |
Low |
5.2 |
v1 ng_ether teardown frees priv with no synchronization against data-plane readers (DF-3529 ng7 twin; v1 lacks ng7's cpu0 funnel)
sys/netgraph/ether/ng_ether.c:321 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3618 |
Low |
5.2 |
ath_vap_delete second TX drain races live taskqueue workers before kfree(avp) β author-acknowledged use-after-free window on vap teardown
sys/dev/netif/ath/ath/if_ath.c:1785 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3669 |
Low |
5.2 |
ix_detach never terminates the self-re-arming per-ring tx_gc_timer: pending callout fires on freed tx_rings β use-after-free (write into freed slab + callout-queue corruption)
sys/dev/netif/ix/if_ix.c:373 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3681 |
Low |
5.2 |
igb_detach never terminates the self-re-arming sc->timer and per-ring tx_gc_timer (callout_stop only, which does not interlock against an in-progress callback): re-arm after detach β use-after-free on freed softc/rings and, under kldunload, execution of unmapped module text
sys/dev/netif/igb/if_igb.c:327 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3822 |
Low |
5.2 |
aac_detach frees the container list with no aac_container_lock while the still-live interrupt path aac_handle_aif and the aac_query_disk ioctl traverse it β use-after-free race
sys/dev/raid/aac/aac.c:679 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3955 |
Low |
5.2 |
Double free of rdev->pm.dpm.ps (and leak of parsed ps_priv states) on the kzalloc-failure path of kv_parse_power_table
sys/dev/drm/radeon/kv_dpm.c:2675 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4276 |
Low |
5.2 |
cbb_detach() deletes the bridge children before stopping the slot event thread β cbb_insert/cbb_removal operate on freed child devices (UAF race), and the RUNNING-flag startup window lets detach free the softc under a live thread
sys/dev/pccard/pccbb/pccbb.c:285 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4332 |
Low |
5.2 |
Read-only GUI ioctls walk live array state with no driver lock while DELETE_ARRAY frees it - use-after-free race (panic or kernel-pointer copyout)
sys/dev/raid/hptmv/gui_lib.c:163 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4615 |
Low |
5.2 |
ips_copperhead_reinit ignores ips_copperhead_queue_init's return: freed status queue left dangling β interrupt-context UAF read/write; every forced reinit also leaks the previous queue mapping
sys/dev/raid/ips/ips.c:630 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4619 |
Low |
5.2 |
ar5413: unbounded kk pdadc walk writes past pcdacTable[PWR_TABLE_SIZE_2413=128] β intra-object heap OOB write corrupting RF bank state
sys/dev/netif/ath/ath_hal/ar5212/ar5413.c:495 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4648 |
Low |
5.2 |
ar2316: unbounded kk write in getGainBoundariesAndPdadcsForPowers overflows pcdacTable[128] into RF bank scratch (twin of DF-4619/ar5413)
sys/dev/netif/ath/ath_hal/ar5212/ar2316.c:454 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4660 |
Low |
5.2 |
ar2413: unbounded kk pdadc walk writes past pcdacTable[PWR_TABLE_SIZE_2413=128] β intra-object heap OOB write corrupting RF bank scratch (twin of DF-4619/ar5413, DF-4648/ar2316)
sys/dev/netif/ath/ath_hal/ar5212/ar2413.c:451 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4677 |
Low |
5.2 |
cmx_detach lifetime holes: dying is checked unlocked before CMX_LOCK (TOCTOU across lockuninit) and registered knotes are never detached from sc->kq.ki_note β knote cleanup after softc free is a use-after-free
sys/dev/misc/cmx/cmx.c:265 Β· pass 2 Β· new |
cmx_detach lifetime holes: unlocked dying TOCTOU across lockuninit, and registered knotes never detached from ki_note - post-free knote cleanup is a UAF write |
untested |
not_testable |
untriaged |
β |
β |
| DF-4707 |
Low |
5.2 |
amr_pci_detach's EBUSY guard is defeated: AMR_STATE_OPEN is cleared on ANY close (not last) and is TOCTOU-open β kldunload frees the softc while a /dev/amr0 descriptor still references it via dev->si_drv1 (UAF)
sys/dev/raid/amr/amr_pci.c:365 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4875 |
Low |
5.2 |
afd_describe(): ksprintf of device-controlled u64 mediasize into char[16] β deterministic 1-byte NUL stack overflow at attach
sys/dev/disk/nata/atapi-fd.c:446 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5116 |
Low |
5.2 |
dcons_crom_detach NULLs post_busreset with no synchronization against fw_busreset's unlocked check-then-call dispatch running in the fwohci interrupt handler β a physical bus reset racing kldunload executes dcons_crom_post_busreset on freed softc: interrupt-context UAF write (bzero of sc->unit + crom_add_* stores)
sys/dev/misc/dcons/dcons_crom.c:196 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5250 |
Low |
5.2 |
run_key_set defers a raw ieee80211_key pointer that can be node-embedded (pairwise) and freed before run_key_set_cb executes - UAF read/write including k->wk_pad write
sys/bus/u4b/wlan/if_run.c:2368 Β· pass 2 Β· new |
UAF read/write on freed node (DF-5250) / repeatable mbuf+node leak DoS (DF-5251) / device-bound 4B OOB (DF-5252) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5656 |
Low |
5.2 |
USB dynamic dispatch unload hooks use a fixed 1-second tsleep as the only grace between live consumers and freed module text
sys/bus/u4b/usb_dynamic.c:113 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4060 |
Medium |
5.1 |
amr_std_poll_command timeout leaks the slot as permanently busy while every caller releases the command: next use of the recycled amr_command panics ('amr: slot %d busy?'), a late completion double-completes the recycled command (bio/UAF confusion), and amr_rescan_drives livelocks spinning on amr_busyslots
sys/dev/raid/amr/amr.c:1348 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4179 |
Medium |
5.1 |
twe_add_unit off-by-one: TWEIO_ADD_UNIT with unit==16 passes `unit > TWE_MAX_UNITS` and writes one struct past twe_drive[16] (OOB write into softc + ghost disk with unit truncated to 0)
sys/dev/raid/twe/twe.c:212 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-5477 |
Medium |
5.1 |
efi_get_table(): firmware-fed physical st_cfgtbl stored and dereferenced as a kernel virtual pointer + st_entries walk with no bound β deterministic fatal kernel fault on the first EFIIOC_GET_TABLE ioctl of any conforming EFI boot; unbounded OOB read walk where mapped
sys/platform/pc64/x86_64/efirt.c:411 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2811 |
Low |
5.1 |
SHT_SYMTAB/SHT_STRTAB sh_size truncated into signed int symcnt/strcnt β negative kmalloc()/vn_rdwr() lengths β kmem_slab_alloc panic; modulo-wrap and short-read/uninitialized-buffer variants
sys/kern/link_elf.c:590 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3222 |
Low |
5.1 |
dirfs_mount copyinstr fallback re-interprets a failed user data pointer as a kernel address β wild vkernel-kernel read / fatal trap from mount(2)
sys/vfs/dirfs/dirfs_vfsops.c:126 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3292 |
Low |
5.1 |
SIOCS80211 MESH_RTCMD ADD/DELETE dereference the raw user-supplied ireq->i_data pointer in kernel (no copyin)
sys/netproto/802_11/wlan/ieee80211_mesh.c:3654 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4227 |
Low |
5.1 |
cyapa detach/module-unload leaves open fds, blocked readers and kqueue hooks on a vanished softc β NULL-deref panic / dispatch through freed module ops
sys/dev/smbus/cyapa/cyapa.c:545 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4297 |
Low |
5.1 |
kbd_detach frees the live genkbd_softc under open /dev/kbdN descriptors: blocked reader never woken, write-after-free at :757, fatal KNOTE-on-freed-memory trap via stale kb_callback.kc_arg at :905
sys/dev/misc/kbd/kbd.c:597 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4311 |
Low |
5.1 |
vga_switcheroo MOD_UNLOAD/MOD_SHUTDOWN frees module state and lets the module unload while DRM modules hold live symbol relocations and (on hybrid hardware) registered clients β use-after-unload panic / heap UAF
sys/dev/video/vga/vga_switcheroo.c:1022 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4996 |
Low |
5.1 |
Child-attach-failure path runs ral_pci_detach() after the child already unwound itself: ieee80211_ifdetach() LIST_REMOVEs a never-attached ieee80211com β NULL-pointer write β kernel panic (unreachable double-free tail behind it)
sys/dev/netif/ral/if_ral_pci.c:275 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5041 |
Low |
5.1 |
_PRT Source device used as a PCI interrupt link device with no NULL/driver validation: type-confused softc read (and NULL device deref) panic at boot
sys/dev/acpica/acpi_pcib.c:111 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5454 |
Low |
5.1 |
Config bridges forward unvalidated reg/width into the PCIe MMIO backend whose reg-only bound allows OOB read/write past the MMCFG kernel_map mapping
sys/bus/pci/x86_64/pci_bus.c:61 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5464 |
Low |
5.1 |
icu_abi MSI/MSI-X allocation count validated only by INVARIANTS-only KASSERTs β OOB write past caller's 32-int array, negative-index scan-walk panic, and count==0 livelock holding icu_irqmap_tok on production kernels
sys/platform/pc64/icu/icu_abi.c:460 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4926 |
Medium |
5.0 |
nvmm MOD_UNLOAD tears down the hypervisor (nvmm_fini: all machine/vcpu locks lockuninit'd, impl freed, nvmm_impl=NULL) while /dev/nvmm is still dispatching ioctls β destroy_dev() runs last; unprivileged ioctl storm races kldunload into NULL-deref panic (UAF paths code-proven)
sys/dev/virtual/nvmm/nvmm_dragonfly.c:366 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3463 |
Low |
5.0 |
gre decapsulation leaves m->m_pkthdr.rcvif pointing into gre_softc while ip_reass can hold the fragment chain far past if_detach's netmsg_service_sync barrier β post-destroy reassembly processes the packet through freed gre_softc memory (delayed UAF reads in ip_input)
sys/netinet/ip_gre.c:184 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4130 |
Low |
5.0 |
Firmware-controlled NIC_CREATE_WQ response db_offset used unvalidated as MMIO write offset on every TX doorbell
sys/dev/netif/oce/oce_mbox.c:1710 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5691 |
Low |
5.0 |
prop_dictionary _nocopy twins export borrowed-pointer lifetime hazards into _KERNEL with 26 live dm/tbridge callers β dm_dev_status_ioctl:409 and dm_table_deps_ioctl:619-620 actively dangle the borrowed name/uuid pointers mid-function (latent kernel UAF-read; set twin: frozen-size UAF/leak/overflow, zero callers)
sys/libprop/prop_dictionary_util.c:183 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2751 |
Medium |
4.7 |
funsetown() KKASSERT race: pre-token *sigiop load dereferenced after concurrent fsetown() frees and slab-recycles the sigio β unprivileged kernel panic on INVARIANTS (stock) builds via pipe F_SETOWN/close/exit (DF-2682 sibling)
sys/kern/sys_pipe.c:1023 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2831 |
Medium |
4.7 |
dssize()/diskpsize consume dp->d_slice without ds_token β use-after-free walk of struct diskslices/disklabel during forced reprobe, and DSO_RAWPSIZE fallback silently substitutes whole-disk size for partition devices
sys/kern/subr_diskslice.c:849 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2908 |
Medium |
4.7 |
varsymset lifetime race at process exit: sibling LWP uses p_varsymset after final varsymset_clean/lockuninit β permanent unprivileged M_VARSYM kernel-memory leak (plus INVARIANTS panic window in lockuninit)
sys/kern/kern_varsym.c:437 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3193 |
Medium |
4.7 |
fuse_unmount() frees fmp under in-flight statfs/statvfs: FUSE is MPSAFE (VFS_MPLOCK no-op) and fuse_statfs/statvfs take no fmp reference, so a forced umount plus daemon fd-close kfree's fmp while a statfs thread sleeps on its IPC β the wake/timeout path locks and walks freed (recycled) kernel memory
sys/vfs/fuse/fuse_vfsops.c:190 Β· pass 2 Β· new |
none |
not_reproduced |
inconclusive |
untriaged |
β |
β |
| DF-3239 |
Medium |
4.7 |
p_fd NULL-deref/UAF in vn_fullpath()->cache_fullpath() against an exiting target read via /proc/pid/map
sys/vfs/procfs/procfs_map.c:181 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3303 |
Medium |
4.7 |
free_bw_list() runs unschedule_bw_meter() on bw_meter_timers[] without mroute_token (del_mfc / del_bw_upcall DELETE_ALL) β race vs bw_meter_process panic/UAF
sys/net/ip_mroute/ip_mroute.c:1115 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-3892 |
Medium |
4.7 |
cm_callout is callout_init_mp (lock-free) but mpssas_scsiio_timeout asserts and manipulates mps_lock-protected state: deterministic KKASSERT panic on the first SCSI IO timeout (stock INVARIANTS/GENERIC kernels), lock-free race with interrupt completion otherwise
sys/dev/raid/mps/mps_sas.c:1490 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3941 |
Medium |
4.7 |
cxm(4): cxm_read() consumes the DMA ring with no serialization β a stale ring offset paired with a different buffer underflows `size - offset` (size_t) and uiomove()s past the 61440-byte DMA buffer; read/write desync also discloses never-DMA'd (uninitialized) kernel heap via read(2)
sys/dev/video/cxm/cxm.c:2262 Β· pass 2 Β· new |
leak |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4145 |
Medium |
4.7 |
ucNumDPMLevels==0 pplib state leaves num_levels==0: levels[-1] window writes 0 into the MSB of pi->requested_rps.ps_priv (non-canonical pointer deref -> panic) and feeds heap-garbage sclk into watermark programming
sys/dev/drm/radeon/trinity_dpm.c:974 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4164 |
Medium |
4.7 |
radeon_unmap_vram_bos walks rdev->gem.objects without gem.mutex while unprivileged GEM create/close list_add/kfree the same list: UAF read / list corruption race in the PM clock-change path
sys/dev/drm/radeon/radeon_pm.c:146 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4310 |
Medium |
4.7 |
ste_stop()/ste_intr STATS_OFLOW issue the synchronous callout_stop() while holding if_serializer while the 1 Hz non-MP ste_stats_update callback must first block in lwkt_serialize_enter on that serializer β AB-BA deadlock (DF-3715 family), plus STOP-override timer resurrection at detach (UAF)
sys/dev/netif/ste/if_ste.c:790 Β· pass 2 Β· new |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4369 |
Medium |
4.7 |
hpt_timeout()/os_cmddone() completion race: non-synchronizing callout_stop() frees the PCOMMAND while the timeout handler dereferences it (UAF -> wild ldm_reset_vbus -> panic)
sys/dev/raid/hpt27xx/hpt27xx_osm_bsd.c:411 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4374 |
Medium |
4.7 |
Sysctl read handlers unlock before touching the HAL and never test sc_invalid β racing device_detach frees the HAL object and unmaps the BARs before the oids are removed, giving an unprivileged reader a use-after-free panic
sys/dev/netif/ath/ath/if_ath_sysctl.c:256 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4621 |
Medium |
4.7 |
amdgpu_dm debugfs: OR-combined valid_input accepts invalid DP lane_count; stored unvalidated and consumed by a lane_settings[LANE_COUNT_DP_MAX=4] write loop -> stack OOB write (LATENT: file not compiled)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c:195 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4625 |
Medium |
4.7 |
output_poll_execute's self-rearm structurally survives drm_kms_helper_poll_disable/poll_fini on the DragonFly workqueue shim β poll work executes up to 10s AFTER cancel_delayed_work_sync returned (mid-suspend connector probe on a suspended GPU, or UAF on a torn-down drm_device)
sys/dev/drm/drm_probe_helper.c:653 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4636 |
Medium |
4.7 |
radeon_acpi: ACPI_OBJECT type confusion and missing Buffer.Length validation in all four ATIF/ATCS return parsers β firmware-controlled kernel wild-pointer read and heap OOB read (panic)
sys/dev/drm/radeon/radeon_acpi.c:212 Β· pass 2 Β· new |
dos |
reproduced |
inconclusive |
untriaged |
β |
β |
| DF-4874 |
Medium |
4.7 |
afd_detach() in-flight teardown race: UAF of afd_softc/struct disk + shared dscheck/dsgone disk-layer race β twin of reproduced DF-4797 (ad)
sys/dev/disk/nata/atapi-fd.c:134 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5220 |
Medium |
4.7 |
Use-after-free: execlists engine-init failure kfree()s the engine while engine->timeline.link is still on gt.timelines; the unwind's neighbor list_del writes kernel pointers into the freed chunk
sys/dev/drm/i915/i915_timeline.c:28 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5462 |
Medium |
4.7 |
Lockless cam_extend array: ptopen/ptclose/ptstrategy/ptioctl UAF read races ptctor's cam_extend_set growth (kfree of ea->ps) β kernel pointer used from freed memory
sys/bus/cam/scsi/scsi_pt.c:153 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2610 |
Low |
4.7 |
icmp6_redirect_input dereferences stale ip6/nd_rd pointers after IP6_EXTHDR_CHECK may reallocate the mbuf (latent UAF read)
sys/netinet6/icmp6.c:2160 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2688 |
Low |
4.7 |
OOM kill block operates on bigproc without p_token and without liveness revalidation (TOCTOU vs concurrent exit)
sys/vm/vm_pageout.c:1826 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2763 |
Low |
4.7 |
journal_mountctl journal lifecycle is lock-free: concurrent install/remove double-detach panics on INVARIANTS and double-kfrees/UAF-writes mnt_jbitmap on release kernels
sys/kern/vfs_jops.c:162 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2951 |
Low |
4.7 |
sysctl_hostname dereferences p->p_ucred up to four times with no p_spin/crhold and not via td_ucred β racy freed-credential read (cratom_proc can crfree the cred between load and deref), wild pr_host[256] copyout; DF-2868-class sibling with a jailed-root trigger
sys/kern/kern_mib.c:221 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2953 |
Low |
4.7 |
logtimeout() use-after-free read of sc_sigio: pgsigio() on a struct sigio freed by a concurrent FIOSETOWN ioctl
sys/kern/subr_log.c:247 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2992 |
Low |
4.7 |
flush_pagedep_deps: bwrite(inodedep->id_buf) dereferences id_buf after dropping the softdep lock β diverges from the file's own copy-first discipline (softdep_update_inodeblock), micro-window UAF read / NULL deref
sys/vfs/ufs/ffs_softdep.c:4655 Β· pass 2 Β· new |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3196 |
Low |
4.7 |
nfs_nget_nonblock revalidation restart retains a stale vp across vput(vp); goto loop β any execution of the NFSTOV(np) != vp branch double-vputs the same vnode (refcount underflow β premature vnode recycling / assert panic); the adjacent retry path's own comment states the rule this restart forgot
sys/vfs/nfs/nfs_node.c:271 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3302 |
Low |
4.7 |
add_mfc() uses mfc_find() result before taking mroute_token β UAF-write race against del_mfc() kfree
sys/net/ip_mroute/ip_mroute.c:976 Β· pass 2 Β· new |
none |
not_reproduced |
inconclusive |
untriaged |
β |
β |
| DF-3414 |
Low |
4.7 |
if_clone_destroy() lookup/act TOCTOU: drops the ifnet lock between ifunit() lookup and teardown β concurrent destroyers double-free the clone unit and UAF the ifnet (framework component of the reproduced DF-3407 panic)
sys/net/if_clone.c:104 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3453 |
Low |
4.7 |
pfil COW hook-list free races pfil_run_hooks() walkers on threads netmsg_service_sync() never waits for (softclock via ip_mroute tbf_reprocess_qβip_output; IFF_IDIRECT bridge interrupt threads) β use-after-free with indirect call through pfh->pfil_func; stock INVARIANTS kernel panics on the mroute softclock path
sys/net/pfil.c:110 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3467 |
Low |
4.7 |
check_uid/check_gid dereference an unreferenced, unlocked inpcb on the output path β use-after-free read race against in_pcbdetach()->kfree(inp)
sys/net/ipfw3_layer4/ip_fw3_layer4.c:120 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3492 |
Low |
4.7 |
pppoe_ticker dereferences hook->private/sp->neg unconditionally and races ng_pppoe_disconnect freeing the session β NULL-deref/UAF panic (DF-3488 twin)
sys/netgraph/pppoe/ng_pppoe.c:1490 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3510 |
Low |
4.7 |
ng_socket: unsynchronized priv->node / priv->datasock reads in ngc_send/ngd_send/ngs_connect/ngs_disconnect/ngs_rcvdata race mtx-protected teardown β NULL-deref/UAF panic
sys/netgraph7/socket/ng_socket.c:310 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3517 |
Low |
4.7 |
v1 ng_socket: ngsock/ngpcb lifetime entirely unsynchronized across socket threads, netisr and synchronous-dispatch contexts β NULL-deref/UAF race (DF-3510 ng7 twins, worse: no locks at all, refs-blind kfree)
sys/netgraph/socket/ng_socket.c:257 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3529 |
Low |
4.7 |
ng_ether control-plane teardown frees priv without synchronizing against BGL-held data-path callbacks (speculative UAF)
sys/netgraph7/ether/ng_ether.c:313 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3611 |
Low |
4.7 |
Double free of rdev->pm.dpm.ps (plus leak of parsed ps_priv states) on the allocation-failure path of si_parse_power_table β radeon twin of amdgpu DF-3588
sys/dev/drm/radeon/si_dpm.c:6855 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3771 |
Low |
4.7 |
ahci_port_free() teardown use-after-free: armed per-CCB timeout callouts never cancelled and in-flight CCBs never failed before kfree
sys/dev/disk/ahci/ahci.c:997 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3816 |
Low |
4.7 |
dev.mpr.N.dump_reqs sysctl: unlocked walk of live command/chain lists (UAF read) plus fixed 128-byte reads past device-sized frames
sys/dev/raid/mpr/mpr.c:1904 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3855 |
Low |
4.7 |
ext-TMDS init parser desynchronisation: non-IGP case-0 record missing 'index += 4' β value/terminator bytes re-executed as MMIO commands
sys/dev/drm/radeon/radeon_combios.c:2955 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3884 |
Low |
4.7 |
drm_dp_mst_topology_mgr_destroy/suspend never flush tx_work: pending work can run after teardown (DF-3699 family)
sys/dev/drm/drm_dp_mst_topology.c:3254 Β· pass 2 Β· new |
race-window NULL panic / teardown UAF |
untested |
β |
untriaged |
β |
β |
| DF-3918 |
Low |
4.7 |
Allocation-failure path in mpr_mapping_allocate_memory kfrees NULL (panic on DragonFly) / stale pointers; mpr_mapping_initialize return ignored by both callers
sys/dev/raid/mpr/mpr_mapping.c:2177 Β· pass 2 Β· new |
logic/persistence corruption (3916/3917), error-path panic (3918), firmware-fed overread (3919) |
untested |
β |
untriaged |
β |
β |
| DF-4284 |
Low |
4.7 |
midi_unload() TAILQ_FOREACH advances through midi_destroy()-freed entries β use-after-free read with groom-controlled pointer consumption
sys/dev/sound/midi/midi.c:1469 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4551 |
Low |
4.7 |
als_intr registered before channels exist (and kept after they are freed): IRQ in the attach/detach window runs chn_intr(NULL)/chn_intr(freed) β NULL-deref/UAF panic; als_resource_free releases the I/O region before tearing down the handler
sys/dev/sound/pci/als4000.c:648 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4558 |
Low |
4.7 |
MOD_UNLOAD ignores device_delete_child() failure and unconditionally kfrees the external softc while free_softc() can leave the cam_sim registered β post-kldunload use-after-free (lockmgr on freed+uninited state_lock) on the still-reachable SIM
sys/dev/disk/nata/atapi-cam.c:894 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4680 |
Low |
4.7 |
Unbounded kk pdadc walk writes past pcdacTable[PWR_TABLE_SIZE_2317=128] β 80-byte intra-object heap OOB write into RF bank scratch (twin of DF-4619/4648/4660)
sys/dev/netif/ath/ath_hal/ar5212/ar2317.c:429 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4753 |
Low |
4.7 |
cxm_msp_* audio-decoder path runs with zero serialization: unprivileged ioctls sleep ~0.5s in cxm_msp_wait_for_lock while cxm_detach (kldunload) frees the softc β use-after-free (DF-4419 cxm twin; cxm_open is_opened TOCTOU folded)
sys/dev/video/cxm/cxm_msp34xxx.c:588 Β· pass 2 Β· new |
panic |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-4821 |
Low |
4.7 |
radeon_ring_backup() uses the hardware rptr as the first ring index without ptr_mask β bogus GPU/writeback value gives a wild kernel OOB read (panic) during GPU reset
sys/dev/drm/radeon/radeon_ring.c:299 Β· pass 2 Β· new |
panic |
untested |
not_testable |
untriaged |
β |
β |
| DF-5011 |
Low |
4.7 |
dimm_mod_unload() drains dimm_softc references owned by still-attached drivers, kfree()ing live objects β victim use-after-free into freed heap/unmapped module text (proven kernel panic)
sys/dev/misc/dimm/dimm.c:316 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5046 |
Low |
4.7 |
idad_detach frees the idad softc under open descriptors and in-flight bios β DF-5013/DF-5025 family detach UAF
sys/dev/raid/ida/ida_disk.c:302 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5115 |
Low |
4.7 |
ips_pci_detach clears sc->configured before ips_adapter_free can return EBUSY: one failed detach permanently corrupts the state machine β retried detaches silently succeed without ips_pci_free, leaving the adapter IRQ handler registered against softc freed at module-unload unit destruction (interrupt-context UAF read/write), and ips_pci_shutdown permanently skips the cache flush
sys/dev/raid/ips/ips_pci.c:202 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5140 |
Low |
4.7 |
iwm_notification_wait_free() frees the wait structure with no drain of threads still sleeping in iwm_wait_notification(); the only guard is a KASSERT compiled out on non-INVARIANTS kernels, so a detach racing an in-flight waiter operates on freed memory
sys/dev/netif/iwm/if_iwm_notif_wait.c:108 Β· pass 2 Β· new |
stalled control threads / detach-race UAF write |
untested |
not_testable |
untriaged |
β |
β |
| DF-5157 |
Low |
4.7 |
ath LED blink callout is re-armed by draining tx-completion tasks AFTER ath_stop()'s single cancel β no drain in ath_detach, callout fires into freed softc/HAL (use-after-free)
sys/dev/netif/ath/ath/if_ath_led.c:166 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5212 |
Low |
4.7 |
cxm(4) REMOTE_GETKEY: cxm_ir_key() tsleeps 50 ms inside an unserialized ioctl while cxm_detach frees the softc and destroys sc->iicbus β use-after-free (IR-path twin of DF-4753/DF-3941 family)
sys/dev/video/cxm/cxm_ir.c:114 Β· pass 2 Β· new |
panic |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-5280 |
Low |
4.7 |
pci_devq mutated without pci_token (pci_read_device/pci_freecfg) while PCIOCGETCONF walks the list under pci_token β use-after-free read race
sys/bus/pci/pci.c:576 Β· pass 2 Β· new |
VPD lookup always ENXIO (DF-5279) / devq UAF read race (DF-5280) / boot-time off-by-one (DF-5281) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5351 |
Low |
4.7 |
MSI/MSI-X allocation count validated only by INVARIANTS-only KASSERTs β OOB write past caller's array, irqmap row-crossing writes and IPI IDT-gate smash on production kernels
sys/platform/pc64/apic/ioapic_abi.c:1256 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5518 |
Low |
4.7 |
gpio_acpi detach does not quiesce in-flight GPIO address-space handler dispatches: use-after-free of softc/provider state (OpRegion half of the missing-drain defect; complements DF-1094/DF-2307)
sys/bus/gpio/gpio_acpi/gpio_acpi.c:486 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5528 |
Low |
4.7 |
fwohci_pci_detach() swallows child-detach failure, force-deletes the firewire child and returns unconditional success β orphaned attached child + live callouts over unmapped BAR/freed DMA rings once a firewire-bus child vetoes detach (latent panic/UAF, lying kldunload)
sys/bus/firewire/fwohci_pci.c:350 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5744 |
Low |
4.7 |
apple_gmux: missing I/O-region length validation (GMUX_MIN_IO_LEN dead code) β out-of-bounds x86 port I/O from crafted ACPI _CRS
sys/gnu/dev/misc/apple_gmux/apple-gmux.c:77 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5198 |
Info |
4.7 |
fire_saver(): set_video_mode() return value ignored β on failure vid aliases the stale 32KB text window and the 64000-byte blit (repeated every 25 Hz tick) overruns it into 0xC0000+ (DF-5114/DF-5197 twin)
sys/dev/misc/syscons/fire/fire_saver.c:69 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5304 |
Info |
4.7 |
fwohci_irx_disable/fwohci_itx_disable free DMA buffers after a fixed 1-tick tsleep without confirming the OHCI context halted (device-write UAF window into freed memory)
sys/bus/firewire/fwohci.c:1269 Β· pass 2 Β· new |
device-driven heap UAF window on non-compliant hardware |
untested |
not_testable |
untriaged |
β |
β |
| DF-5541 |
Info |
4.7 |
gpio_intel teardown methods trust the cookie: stale/double GPIO_FREE_INTR reaches gpio_cherryview_unmap_intr with pin == -1, uint16_t-wrapped to 65535 β OOB kernel-KVA read + masked write ~4.5MB past the BAR mapping (deterministic KKASSERT panic on INVARIANTS kernels)
sys/bus/gpio/gpio_intel/gpio_intel.c:256 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5299 |
Low |
4.6 |
usbd_get_phys() type-confuses the USB controller's newbus ivars as struct pci_devinfo * without any bus-type or NULL check β NULL/wild deref panic or limited kernel-heap leak into the V4L2 bus_info string on non-PCI controllers
sys/bus/u4b/usb_device.c:2249 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3280 |
Medium |
4.5 |
if_getgroupmembers() walks a stale struct ifg_group pointer across an ifgroup_lock release: SIOCGIFGMEMB use-after-free read reachable by unprivileged users
sys/net/if.c:1324 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4278 |
Medium |
4.5 |
R300_ZB_ZPASS_ADDR reloc patch records nothing and validates nothing: unvalidated u32 offset past the relocation BO becomes the GPU occlusion-counter write target (cross-BO GPU OOB increment-write)
sys/dev/drm/radeon/r300.c:1073 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3615 |
Low |
4.5 |
Unvalidated hardware-fed ts_antenna indexes ast_ant_tx[8]/sc_ant_tx[8] in ath_tx_update_stats β latent OOB write with function-pointer-table and past-allocation reach (RX twin clamps after field crashes)
sys/dev/netif/ath/ath/if_ath.c:4197 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4644 |
Low |
4.5 |
Adapter/vidsw/vidcdevsw array lifecycle races in fb.c: vid_realloc_array frees outside vga_token, tokenless readers, and a vid_register free-slot index race β UAF read/write window and cross-driver type confusion
sys/dev/video/fb/fb.c:76 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4651 |
Low |
4.5 |
fm801_pci_attach failure paths after mixer_init() leave a live 0666 /dev/mixerN over freed codec+softc β mixer-UAF family, 14th instance (DF-4156/4193/4299/4334/4344/4421/4457/4468/4504/4537/4550/4610)
sys/dev/sound/pci/fm801.c:620 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5573 |
Low |
4.5 |
ppb_MS_init_msq(): instruction index `ins` never bounds-checked β controlled OOB kernel write up to +8184 bytes from the microsequence array
sys/bus/ppbus/ppb_msq.c:201 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5690 |
Info |
4.5 |
prop_array_util _nocopy helpers export borrowed-pointer lifetime hazards into _KERNEL: unpinned get_cstring_nocopy return dangles on slot replace/array release; set_cstring_nocopy references caller-owned kernel memory forever with ps_size frozen at creation while externalize/prop_string_cstring re-read to the current NUL (latent UAF read / plist info leak / heap overflow)
sys/libprop/prop_array_util.c:205 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2768 |
Medium |
4.4 |
Off-by-one in unix98 pty clone limit: unit==MAXPTYS accepted, ptis[MAXPTYS] out-of-bounds read (uninitialized pointer) + out-of-bounds pointer write
sys/kern/tty_pty.c:176 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2774 |
Medium |
4.4 |
mountlist_exists() provides no lifetime guarantee: stale vp->v_pfsmp used after nullfs unmount for VFS accounting and quota enforcement β wrong-mount EDQUOT/negative usage (deterministic), struct mount UAF window (racy)
sys/kern/vfs_mount.c:692 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3073 |
Medium |
4.4 |
nfs_unmount() continues teardown after vflush(FORCECLOSE) fails on a busy device vnode: frees the nfsmount and destroys the nfsnode objcache with a live nfsnode (UAF condition, allocator-confirmed) and dounmount() then panics deterministically ('unmount: dangling vnode')
sys/vfs/nfs/nfs_vfsops.c:1217 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3428 |
Medium |
4.4 |
generic_netmap_rxsync: 32-bit wrap in the ring->reserved sanitization drives the userspace-release loop index out of [0,lim] β unkillable kernel livelock holding the kring lock
sys/net/netmap/netmap_generic.c:641 Β· pass 2 Β· new |
none |
build_failed |
not_testable |
untriaged |
β |
β |
| DF-3449 |
Medium |
4.4 |
dummynet3 MOD_UNLOAD never unregisters its ipfw3 hooks: stale filter_funcs[2][] and module registration make check_body()'s unguarded indirect call execute unmapped module text (deterministic panic)
sys/net/dummynet3/ip_dummynet3_glue.c:2013 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3502 |
Medium |
4.4 |
delport/rmnode never clear the member's ac_netgraph (IFP2NG); rmnode clears the shared ng_ether_input_p unconditionally -> dangling node pointer detonates in ng_fec_input on the next RX frame after any later fec node re-arms the global: reproduced page-fault panic at NULL+0x3f8 in interrupt context
sys/netgraph/fec/ng_fec.c:379 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3601 |
Medium |
4.4 |
hdaa_sysctl_reconfig: device-tree mutation inside a sysctl handler self-deadlocks the global sysctllock β permanent kernel freeze from the documented reconfiguration interface
sys/dev/sound/pci/hda/hdaa.c:6474 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3837 |
Medium |
4.4 |
evergreen_ib_parse()/evergreen_vm_packet3_check(): no packet-fits-in-IB validation + fixed-offset payload reads without pkt->count checks β OOB reads up to 5 dwords past the IB sub-allocation + kernel-log disclosure oracle (DF-3592/DF-3764 family, pre-SI VM path)
sys/dev/drm/radeon/evergreen_cs.c:3519 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4895 |
Medium |
4.4 |
complete_raid5_write() launches RAID-4/5 second-phase I/O via vn_strategy(drive->vp) on a teardown-vulnerable vnode β deterministic NULL-vp kernel panic (fatal trap 12 in vn_strategy), closed-vnode UAF window in the mid-flight variant
sys/dev/raid/vinum/vinuminterrupt.c:427 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2744 |
Low |
4.4 |
disk_dumpcheck(): media_blocks β reserved_blocks unsigned underflow defeats the crash-dump bounds check; DEV_BSIZE unit mismatch for non-512B media
sys/kern/subr_disk.c:909 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2946 |
Low |
4.4 |
kern.stathz boot tunable ingested with no validation β kernel integer-divide fault at statclock systimer registration (unbootable system)
sys/kern/subr_param.c:201 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2948 |
Low |
4.4 |
kern.ncallout fetched after the only clamp β int-overflowed callwheel sizing in swi_softclock_setup: zero-byte per-CPU allocations panic vm_map (latent 2^30-iteration OOB init loop; infinite boot loop on β€2-CPU)
sys/kern/subr_param.c:327 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3084 |
Low |
4.4 |
doff_t (int32) truncation of crafted directory i_size >= 2^31 yields negative dp->i_offset -> ext2_write KASSERT panic on INVARIANTS kernels (EINVAL elsewhere)
sys/vfs/ext2fs/ext2_lookup.c:424 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3380 |
Low |
4.4 |
pfsync callout handlers execute in the softclock thread without pf_token: deterministic INVARIANTS panic ~5s after SIOCSETPFSYNC syncdev configuration (ASSERT_LWKT_TOKEN_HELD at pfsync_bulkfail entry)
sys/net/pf/if_pfsync.c:1168 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3932 |
Low |
4.4 |
MLYIO_COMMAND size handling: DataTransferLength==INT_MIN negates/wraps into kmalloc(0xFFFFFFFF80000000, M_INTWAIT) β kernel panic (sink PROVEN on guest); plus unbounded wired allocation and ignored dmamap_load failure
sys/dev/raid/mly/mly.c:2889 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4114 |
Low |
4.4 |
TBI-mode nge(4) deletes itself: sc->nge_miibus = dev passed to device_delete_child(dev, dev) β unbounded nge_detach recursion on detach, live-device kobj_delete UAF on attach failure
sys/dev/netif/nge/if_nge.c:864 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4685 |
Low |
4.4 |
amdgpu_fence_slab_fini: rcu_barrier() is a no-op β kldunload with pending call_rcu entries unmaps module text before the >=1s delay line fires amdgpu_fence_free: fatal trap 12 (reproduced; fix validated on rebuilt kernel)
sys/dev/drm/amd/amdgpu/amdgpu_fence.c:69 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4803 |
Low |
4.4 |
parityops()/parityrebuild() compute the transfer size with an overflowing 'stripesize << DEV_BSHIFT': one checkparity/rebuildparity ioctl on a >=2 GiB-stripe RAID-5 plex panics the kernel (kmem_slab_alloc exhaustion)
sys/dev/raid/vinum/vinumrevive.c:274 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5313 |
Low |
4.4 |
daioctl(DAIOCTRIM) reads its 16-byte argument by direct user-pointer dereference with no copyin: kernel page fault (panic) on unmapped user pointer and user-memory race across the synchronous loop
sys/bus/cam/scsi/scsi_da.c:423 Β· pass 2 Β· new |
stale-heap geometry disclosure (DF-5311) / permanent throttle underflow (DF-5312) / root-gated ioctl panic (DF-5313) |
untested |
not_testable |
untriaged |
β |
β |
| DF-3298 |
Medium |
4.3 |
Use-after-free in carp_proto_input: IP reassembly holds dangling rcvif into freed carp_softc across ifconfig carpN destroy
sys/netinet/ip_carp.c:703 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3204 |
Low |
4.3 |
krpc_call leaks the reply mbuf chain on the RPC_PROGMISMATCH exit β reachable by spoofed replies, by DF-3203's stale read, and by legitimate v2-only servers during mountd version fallback
sys/vfs/nfs/krpc_subr.c:391 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4881 |
Low |
4.3 |
onoe ath_rate_getxtxrates() stores hardware rate codes into ath_rc_series.rix (rate-table INDEX) fields and clobbers the correct series-0 index β wrong-entry rt->info[] derefs on every multi-rate-retry frame, heap OOB read on 11n HALs (DF-4850 amrr twin)
sys/dev/netif/ath/ath_rate/onoe/onoe.c:143 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2848 |
Low |
4.2 |
taskqgroup_create() heap OOB write: unvalidated cnt writes struct taskqgroup_cpu slots past the fixed tqg_queue[MAXCPU] array
sys/kern/subr_gtaskqueue.c:788 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2907 |
Low |
4.2 |
md_get_mbuf() ignores md_get_mem() failure (silent short copy / INVARIANTS panic) and md_done() leaves md_cur/md_pos dangling
sys/kern/libmchain/subr_mchain.c:323 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3090 |
Low |
4.2 |
NFSSVC_MNTD path type-confuses any filesystem's mount into struct nfsmount: VROOT check without vfstype check before VFSTONFS(vp->v_mount)
sys/vfs/nfs/nfs_syscalls.c:175 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3299 |
Low |
4.2 |
carp_group_demote_adj()/carp_send_ad_all() execute outside netisr0: unsynchronized demotion counter, wrong-CPU callout arming, unlocked carpif_list walk
sys/netinet/ip_carp.c:2765 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4322 |
Low |
4.2 |
dsp_clone() funnels concurrently-running clone handlers through one shared `static struct cdev *dev` β an unprivileged open of /dev/dspN can be handed another card's clone cdev (reproduced), and the stale static can hand devfs a destroyed cdev under concurrent pcm_unregister (traced UAF)
sys/dev/sound/pcm/dsp.c:2381 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4742 |
Low |
4.2 |
vce_v2_0: VCE bo sized exactly AMDGPU_VCE_FIRMWARE_OFFSET (256) bytes short β DATA window ends 256 bytes past vcpu_bo (DF-4524 v3 shape, v2 instance)
sys/dev/drm/amd/amdgpu/vce_v2_0.c:424 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4832 |
Low |
4.2 |
uvd_v1_0_resume programs VCPU cache windows +128B into vcpu_bo at full sizes β STACK/SESSION window overruns the pinned bo by 128 bytes into the adjacent VRAM object (radeon UVD v1 twin of DF-4524/DF-4742)
sys/dev/drm/radeon/uvd_v1_0.c:121 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4988 |
Low |
4.2 |
Passthru SGL write destination steered by user-controlled gcmd->size byte: up to ~860 bytes of DMA descriptors written past the request's 1024-byte command packet into neighboring requests of the shared command pool
sys/dev/raid/tws/tws_user.c:126 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5229 |
Low |
4.2 |
uvd_v4_2_resume programs the VCPU cache-window chain +0x200 into vcpu_bo with a full-blob region0 size β chain ends 512 bytes past the pinned bo with the shipping CIK UVD firmware (radeon twin of DF-4832/DF-4524/DF-4742)
sys/dev/drm/radeon/uvd_v4_2.c:47 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5767 |
Low |
4.2 |
ohci_controller_init latches unvalidated device-reported NDP (0-255) into sc_noport: kernel-driven OOB MMIO reads AND writes past the 0x100-byte OHCI register file on every roothub event (DF-5268/5282/5296 register-geometry family, OHCI variant)
sys/bus/u4b/controller/ohci.c:286 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3419 |
Medium |
4.1 |
pfi_kif_update() walks kif->pfik_dynaddrs under crit_enter() only while pf_rm_rule()/pfi_dynaddr_remove() free the entries under pf_token on another CPU β cross-CPU use-after-free of pfi_dynaddr (kernel panic)
sys/net/pf/pf_if.c:470 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3470 |
Medium |
4.1 |
Ratectl registry has no in-use accounting: nrefs unload-guard exists but amrr/rssadapt/none never increment it β kldunload of an in-use algorithm leaves every vap->iv_rate dangling into unmapped module text; next ir_* indirect call (world-readable rate_stats sysctl, any TX, vap detach) executes unmapped code
sys/netproto/802_11/wlan/ieee80211_ratectl.c:58 Β· pass 2 Β· new |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3715 |
Medium |
4.1 |
em_stop() can deadlock the callout subsystem against em_timer/em_82547_move_tail (AB-BA): callout_stop() synchronously waits for a callback that is blocked on the serializer the stopper holds β mechanism PROVEN on the guest kernel via protocol-replica module (caller stuck D3/wchan 'costp')
sys/dev/netif/em/if_em.c:2222 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4125 |
Medium |
4.1 |
Dangling rdev->pm.dpm.ps after kfree-without-NULL in rv6xx_parse_power_table (:1908-1912) + swallowed rv6xx_dpm_init error -> double free in rv6xx_dpm_fini (:2106); ps_priv[0..i-1] leaked (rv6xx twin of DF-4023/DF-3973/DF-4117)
sys/dev/drm/radeon/rv6xx_dpm.c:1908 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5071 |
Medium |
4.1 |
amrd_strategy has no AMR_STATE_SHUTDOWN gate and nothing ever drains amr_bioq β bios park forever, issuers wedge in unkillable D-state (DF-2066/DF-5012/DF-5026 systemic class; distinct sink from DF-2082's in-flight UAF)
sys/dev/raid/amr/amr_disk.c:166 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2814 |
Low |
4.1 |
objcache_destroy() purges remote CPUs' per-cpu magazines under only a local critical section β no cross-CPU exclusion (contract-reliant teardown; KKASSERT panic / magazine UAF if any in-flight get/put exists)
sys/kern/kern_objcache.c:929 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3045 |
Low |
4.1 |
bootpc trusts interface sdl_alen without bounding it to chaddr[16]/hexstr[64] β over-long link address from an IFT_ETHER driver overflows the outgoing packet in-struct and smashes a 64-byte stack buffer via hexncpy
sys/vfs/nfs/bootp_subr.c:718 Β· pass 2 Β· new |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3407 |
Low |
4.1 |
tun(4) softc lifetime race: cdev open/close vs clone create/destroy unsynchronized β reproduced kernel panic (UAF family); tap DF-3405 twin
sys/net/tun/if_tun.c:214 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3411 |
Low |
4.1 |
FIOSETOWN/TIOCSPGRP racing pgsigio: tun's async-SIGIO paths dereference a struct sigio that funsetown() frees outside sigio_token (generic UAF primitive, tun manifestation)
sys/net/tun/if_tun.c:536 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3473 |
Low |
4.1 |
wlan_xauth: nrefs is never incremented (NULL ia_attach) so kldunload succeeds while VAPs hold raw iv_auth pointers β use-after-free of module text/data on later auth dispatch
sys/netproto/802_11/wlan_xauth/ieee80211_xauth.c:62 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3509 |
Low |
4.1 |
ng_fec_rmnode vs ng_fec_tick callout race: callout_stop does not wait for an in-flight tick, IFF_RUNNING is never cleared on the rmnode path, and tick re-arms itself -> callout can fire on &priv->fec_timeout after kfree(priv)
sys/netgraph/fec/ng_fec.c:614 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3711 |
Low |
4.1 |
arcmsr_detach() tears down DMA pool and cdev before deregistering the CAM SIM; MSIX IRQ resources leaked
sys/dev/raid/arcmsr/arcmsr.c:4632 Β· pass 2 Β· new |
detach-order UAF + IRQ resource leak |
untested |
β |
untriaged |
β |
β |
| DF-3898 |
Low |
4.1 |
mps_detach_sas frees sassc/sim after a 30-second bounded wait even if the scanner thread never exited: use-after-free reads and writes from mpssas_scanner_thread
sys/dev/raid/mps/mps_sas.c:820 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4084 |
Low |
4.1 |
sis_stop uses callout_stop (which does not interlock against an in-progress callback) while sis_tick re-arms itself as its last serialized action: timer resurrects after stop; on detach the late tick dereferences freed softc/miibus/bus resources (use-after-free) β DF-3715 callout-discipline family
sys/dev/netif/sis/if_sis.c:1123 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4271 |
Low |
4.1 |
callout_stop() does not interlock with the self-serializing, self-re-arming wb_tick: repeating post-detach use-after-free of the softc
sys/dev/netif/wb/if_wb.c:1590 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4301 |
Low |
4.1 |
vkbd_term() ignores kbd_unregister() failure and frees a possibly still-registered/busy keyboard (latent UAF)
sys/dev/misc/vkbd/vkbd.c:848 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4394 |
Low |
4.1 |
hpt_shutdown_vbus frees LDM memory and adapter handles before terminating the vbus timer callout - pending timer callback runs on freed memory (shutdown-window UAF)
sys/dev/raid/hptrr/hptrr_osm_bsd.c:363 Β· pass 2 Β· new |
In the shutdown path the vbus lock is dropped, LDM command pools are freed and adapter handles kfree'd, but the periodic vbus timer (callout_init_lk'd to the vbus lock, armed for background RAID/rebuild tasks) is only terminated AFTERWARDS |
untested |
not_testable |
untriaged |
β |
β |
| DF-4402 |
Low |
4.1 |
tws_cam_attach error symmetry: missing return after cam_sim_alloc failure -> xpt_bus_register(NULL) NULL-deref panic at attach; sc->sim left dangling/registered on later failure paths
sys/dev/raid/tws/tws_cam.c:173 Β· pass 2 Β· new |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4409 |
Low |
4.1 |
acpi_asus_detach removes the wrong ACPI notify handler: installed handler survives detach and fires into freed/unloaded driver state (use-after-free)
sys/dev/acpica/acpi_asus/acpi_asus.c:810 Β· pass 2 Β· new |
dos |
untested |
not_testable |
untriaged |
β |
β |
| DF-4410 |
Low |
4.1 |
acpi_asus LED state changes run in an undrained AcpiOsExecute task: detach/led_destroy free the softc under a pending acpi_asus_led_task (UAF window)
sys/dev/acpi_asus/acpi_asus.c:922 Β· pass 2 Β· new |
dos |
untested |
not_testable |
untriaged |
β |
β |
| DF-4440 |
Low |
4.1 |
atmel_mxtread/write/kqfilter dereference softc without the NULL guard used by open/close/ioctl β NULL-deref (later UAF) via fd held across driver detach/kldunload
sys/dev/smbus/atmel_mxt/atmel_mxt.c:653 Β· pass 2 Β· new |
Deterministic NULL-deref panic (later UAF) via fd held across driver detach/kldunload; root-triggered self-DoS |
untested |
not_testable |
untriaged |
β |
β |
| DF-4570 |
Low |
4.1 |
cancel_fake_irq() drains fake_irq before hangcheck, so a concurrently-running hangcheck callback can re-arm fake_irq after its drain β intel_breadcrumbs_fake_irq fires on a torn-down engine (use-after-free at driver unload)
sys/dev/drm/i915/intel_breadcrumbs.c:840 Β· pass 2 Β· new |
UAF read/write on freed engine->breadcrumbs at driver unload (panic-class; worse on heap reuse) |
untested |
not_testable |
untriaged |
β |
β |
| DF-4590 |
Low |
4.1 |
tws_detach/attach-unwind never cancel driver callouts (reset_cb, reinit poll, per-req timeouts) before freeing the softc β use-after-free panic at driver unload during reset recovery
sys/dev/raid/tws/tws.c:346 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4744 |
Low |
4.1 |
ahci_pci_detach() has no interlock against an in-flight ahci_intr() on another CPU β hardirq-context UAF of sc_ports[]/ap and access to the already-unmapped ABAR during controller detach
sys/dev/disk/ahci/ahci_attach.c:589 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4806 |
Low |
4.1 |
ppi: interrupt handler registered with a cdev_t argument but consumed as device_t - wild-pointer deref and instant kernel panic on the first parallel-port IRQ (currently defused by a sibling bug: the legacy IRQ allocation can never succeed, leaving 1284 peripheral mode dead)
sys/dev/misc/ppi/ppi.c:160 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4841 |
Low |
4.1 |
Post-reset OBFL refill is a no-op: sense_bufs[].posted survives the controller soft reset, so tws_init_obfl_q() re-run by the recovery path posts nothing β firmware left with zero response frames, permanent I/O hang after any successful reset recovery
sys/dev/raid/tws/tws_hdm.c:118 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4943 |
Low |
4.1 |
offset_to_id returns success for all DDC-family offsets without ever writing *id β dal_gpio_service_create_irq then switches on an uninitialized gpio_id; garbage==GPIO_ID_HPD smuggles DDC-line en=6/7 into hpd_regs[6] (OOB)
sys/dev/drm/amd/display/dc/gpio/dce80/hw_translate_dce80.c:172 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4976 |
Low |
4.1 |
flr_work never drained at mailbox teardown β xgpu_ai_mailbox_put_irq() lacks cancel_work_sync(), so a queued FLR work survives put_irq and uses amdgpu_device after hw_fini/free (UAF at driver detach)
sys/dev/drm/amd/amdgpu/mxgpu_ai.c:365 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4994 |
Low |
4.1 |
vega10_smu_init error path kfrees hwmgr->smu_backend without NULLing it, defeating vega10_smu_fini's NULL guard β latent double-free/UAF (the vega12 DF-4951 shape)
sys/dev/drm/amd/powerplay/smumgr/vega10_smumgr.c:288 Β· pass 2 Β· new |
corruption |
untested |
not_testable |
untriaged |
β |
β |
| DF-5006 |
Low |
4.1 |
acpi_cpu has no detach teardown: ACPI notify handler (context=sc), both sysctl contexts and the sensordev outlive the softc β use-after-free on driver/module detach; attach error paths leak the same resources and orphan the first child
sys/dev/acpica/acpi_cpu.c:67 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5093 |
Low |
4.1 |
wbsio_detach never detaches its lm child (no bus_generic_detach): driver unload leaves a dangling attached child with a live 5s sensor task, leaked rman ports, and a NULL-ops parent β any later bus op on the child is a guaranteed NULL-deref panic
sys/dev/powermng/wbsio/wbsio.c:268 Β· pass 2 Β· new |
guaranteed NULL-deref panic on later child bus op (root-gated) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5217 |
Low |
4.1 |
LKM screen-saver module unload TOCTOU: remove_scrn_saver samples scrn_blanked and clears current_saver with no syscons_lock, so kldunload can unmap the saver module (fade_saver et al.) while fade_saver is still executing β use-after-free of module text and statics
sys/dev/misc/syscons/fade/fade_saver.c:46 Β· pass 2 Β· new |
kernel UAF executing freed module text - panic ceiling |
untested |
not_testable |
untriaged |
β |
β |
| DF-5478 |
Low |
4.1 |
efi_create_1t1_map(): md_pages*EFI_PAGE_SIZE wraparound passes the runtime-map guard β multi-petabyte kmalloc(M_WAITOK) fill loop wedges the boot
sys/platform/pc64/x86_64/efirt.c:255 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5562 |
Low |
4.1 |
ohci_pci_detach() swallows device_delete_children() failure: unconditional controller reset, IRQ/MMIO/DMA teardown and kfree'd softc under a still-attached child, with detach reporting success
sys/bus/u4b/controller/ohci_pci.c:329 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5771 |
Low |
4.1 |
mmc_rescan_cards()/mmc_delete_cards() free card ivars unconditionally after device_delete_child() β latent UAF if a child driver's detach ever fails
sys/bus/mmc/mmc.c:1728 Β· pass 2 Β· new |
slow kernel-memory leak (5770) / latent UAF (5771) |
untested |
not_testable |
untriaged |
β |
β |
| DF-2960 |
Info |
4.1 |
kcollect_register pins no caller-module lifetime; kcollect_unregister unenforced β latent UAF (indirect call + strlen) for loadable-module consumers
sys/kern/kern_collect.c:81 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3438 |
Info |
4.1 |
Cipher registry has no reference accounting: ieee80211_crypto_unregister clears ciphers[] while keys may still hold wk_cipher into the module; policy-module nrefs gate read unsynchronized at MOD_UNLOAD ('XXX disallow if references') - kldunload TOCTOU -> UAF
sys/netproto/802_11/wlan/ieee80211_crypto.c:194 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4483 |
Info |
4.1 |
build_rq_buffer malloc-failure path frees the whole request via abortrequest() and then every caller frees it again (latent double-free / UAF)
sys/dev/raid/vinum/vinumrequest.c:833 Β· pass 2 Β· new |
Latent heap double-free/UAF landmine (dead today: Malloc is M_WAITOK and never fails) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5763 |
Info |
4.1 |
netbt_dispose wired as dom_dispose is a dead-code booby trap: it destroys the three GLOBAL netbt vm_zones per socket flush β one PR_RIGHTS flag bit away from a deterministic global UAF/double-free (rig-proven, 3/3 panics at zdestroy+0x19)
sys/netbt/bt_proto.c:128 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2830 |
Medium |
4.0 |
Off-by-one NUL-terminator clobber in sysctl_vm_zone name padding causes kernel-stack OOB read in unprivileged vm.zone output (13+ char zone names, in-tree trigger rfcomm_credit)
sys/vm/vm_zone.c:835 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4299 |
Low |
4.0 |
emu_pcm_attach late-failure path frees sc while the mixer remains registered: dangling mixer devinfo UAF on /dev/mixer ioctls and leaked AC97 submixer
sys/dev/sound/pci/emu10kx-pcm.c:1399 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5040 |
Low |
4.0 |
vbus_ext->timer never drained before vbus_ext is freed at shutdown: os_timer_for_ldm() fires on freed memory (UAF)
sys/dev/raid/hpt27xx/hpt27xx_os_bsd.c:230 Β· pass 2 Β· new |
probe panic / shutdown-window UAF per finding |
untested |
not_testable |
untriaged |
β |
β |
| DF-2742 |
Low |
3.9 |
diskstrategy consumes dp->d_slice with no serialization while disk_probe/disk_invalidate replace and free it β use-after-free window for every in-flight bio
sys/kern/subr_disk.c:1246 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3495 |
Low |
3.9 |
v1 ng_l2tp session-hook / hook-private use-after-free: unreferenced cached hook+hpriv used across a microsecond-scale window while concurrent rmhook frees both
sys/netgraph/l2tp/ng_l2tp.c:661 Β· pass 2 Β· new |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-4139 |
Low |
3.9 |
throw_rude_remark strcpy of up-to-1024-byte message into ioctl_reply->msg[256]: up to 4 bytes past the VINUM_CREATE ioctl allocation, plus dangling static ioctl_reply (UAF write)
sys/dev/raid/vinum/vinumconfig.c:114 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4195 |
Low |
3.9 |
drm_connector_register() error path leaves dangling connector->kdev β latent double-free on re-register; unchecked kzalloc in the sysfs stub
sys/dev/drm/drm_connector.c:453 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5552 |
Low |
3.9 |
cam_devq reference count is a non-atomic int and cam_devq_release() frees the devq with active I/O after only a warning
sys/bus/cam/cam_queue.c:242 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4675 |
Info |
3.9 |
bktr_detach removes only the minor==unit device node β /dev/tunerN (unit+16) and /dev/vbiN (unit+32) persist after detach, stranding cdevs that reference the driver's dev_ops (use-after-free after module unload)
sys/dev/video/bktr/bktr_os.c:325 Β· pass 2 Β· new |
bktr_detach removes only minor==unit - /dev/tunerN and /dev/vbiN persist, stranding cdevs referencing the driver's dev_ops (dev_ops UAF after module unload) |
untested |
not_testable |
untriaged |
β |
β |
| DF-2931 |
Medium |
3.8 |
if_getanyethermac() type-confusion via uuid_node() leaks kernel driver-softc memory into unprivileged uuidgen(2) output (and returns wrong 'MAC' on vtnet/ena/oce)
sys/kern/kern_uuid.c:86 Β· pass 2 Β· new |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2717 |
Medium |
3.6 |
nlookup_init()/retry path read the shared fd_ncdir/fd_nrdir nchandle pairs without fd_spin while sibling threads swap them β torn (ncp,mount) pairs and hold-after-drop race on the jail '..'-gate comparison inputs
sys/kern/vfs_nlookup.c:149 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4710 |
Medium |
3.6 |
feed_eq_feed FXROUND/FXDIV align-overshoot at the SND_FXDIV_MAX boundary: reads/writes up to align-1 bytes past the caller's byte window and returns count+align-1 (sndbuf_acquire ring overflow; tmpbuf OOB write when the 64KB-exact allocation geometry holds)
sys/dev/sound/pcm/feeder_eq.c:461 Β· pass 2 Β· new |
none |
reproduced |
β |
untriaged |
β |
β |
| DF-2760 |
Low |
3.6 |
sys_getsid reads the p_pgrp->pg_session chain without pt->p_token; sys_setpgid reads curp->p_session unlocked β lifetime race vs. enterpgrp's pgrp free (stale/UAF read)
sys/kern/kern_prot.c:153 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2855 |
Low |
3.6 |
rman_reserve_resource window arithmetic wraps when count-1 > end: allocation escapes the caller's [start,end] window (and can produce an inverted r_end < r_start node when start+count-1 overflows)
sys/kern/subr_rman.c:224 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3308 |
Low |
3.6 |
IPV6_MULTICAST_IF caches an unreferenced ifnet pointer that is never purged for TCP6 pcbs β dangling im6o->im6o_multicast_ifp after interface destruction
sys/netinet6/ip6_output.c:2253 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3333 |
Low |
3.6 |
nm_kr_rxpos() single conditional subtract turns DF-0359's corrupted nr_hwcur/nr_hwavail into an out-of-bounds slot write in netmap_transmit()
sys/net/netmap/netmap.c:910 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3371 |
Low |
3.6 |
ip_setmoptions IP_ADD_MEMBERSHIP: route reference dropped before rt_ifp is read β use-after-release race and permanent rtentry leak when the lookup held the last reference
sys/netinet/ip_output.c:1658 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3460 |
Low |
3.6 |
rssadapt_sysctl_interval dereferences vap->iv_rs freed by rssadapt_deinit during the vap-teardown window before ieee80211_sysctl_vdetach removes the oid β unprivileged 4-byte kernel-heap UAF read (world-readable sysctl), root 4-byte UAF write; amrr twin is the default ratectl
sys/netproto/802_11/wlan/ieee80211_rssadapt.c:151 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3624 |
Low |
3.6 |
Double free of adev->pm.dpm.ps on the kzalloc-failure path of ci_parse_power_table (plus leak of already-parsed ci_ps states)
sys/dev/drm/amd/amdgpu/ci_dpm.c:5694 Β· pass 2 Β· new |
OOM-gated double free |
untested |
β |
untriaged |
β |
β |
| DF-3747 |
Low |
3.6 |
sccngetch(): 8-byte size_t store through (size_t *)&fkeycp pun writes 4 bytes past a kernel static; unclamped bcopy into the 17-byte static fkey trusts the DF-1503-corruptible fkeytab length
sys/dev/misc/syscons/syscons.c:2005 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4108 |
Low |
3.6 |
vge TX short-frame pad path writes one fragment past vge_frag[7] when a <60-byte frame arrives with 7 DMA segments (vge_encap maxsegs off-by-one corrupts the next descriptor's vge_sts/vge_ctl)
sys/dev/netif/vge/if_vge.c:676 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4206 |
Low |
3.6 |
vlv_dsi_init !fixed_mode error path kfrees a registered drm_connector without drm_connector_cleanup β dangling entry on mode_config.connector_list and in the mode-object IDR
sys/dev/drm/i915/vlv_dsi.c:1860 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5263 |
Low |
3.6 |
mtw_key_set defers the raw ieee80211_key pointer; pairwise keys are node-embedded, so a node freed before mtw_key_set_cb runs makes the callback read and WRITE (k->wk_pad) freed node memory
sys/bus/u4b/wlan/if_mtw.c:1940 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5604 |
Low |
3.6 |
device_set_usb_desc uses shared per-udev scratch after dropping the enum lock β transiently unterminated buffer makes device_set_desc_copy's strlen/strcpy an OOB heap read disclosed via device_printf("<%s>")
sys/bus/u4b/usb_util.c:110 Β· pass 2 Β· new |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4450 |
Low |
3.5 |
hsw_activate_psr2() overflows two 4-bit EDP_PSR2_CTL fields when sink reports max resync latency, corrupting IDLE_FRAME/FRAME_BEFORE_SU/TP2_TIME in one register write
sys/dev/drm/i915/intel_psr.c:415 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4687 |
Low |
3.5 |
ar2425: unbounded kk pdadc walk writes past pcdacTable[PWR_TABLE_SIZE_2413=128] β intra-object heap OOB write into RF bank scratch (twin of DF-4619/4648/4660/4680)
sys/dev/netif/ath/ath_hal/ar5212/ar2425.c:452 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4690 |
Low |
3.5 |
cardbus_cis: decode_tuple_bar keeps the attacker-controlled 32-bit CIS BAR size (truncated to a negative int) and passes it unchecked as the resource count; 1<<(ffs(0x80000000)-1) = 1<<31 signed-overflow UB also yields a negative count β both beyond DF-1811's ffs(0) case
sys/dev/pccard/cardbus/cardbus_cis.c:308 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5175 |
Low |
3.5 |
CIS-controlled PCMCIA I/O window size drives out-of-allocation port I/O in ata_pccard_attach()
sys/dev/disk/nata/ata-card.c:93 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5495 |
Info |
3.5 |
uether_rxmbuf() sets m_len/m_pkthdr.len from the caller-supplied len with no clamp β the core's unguarded RX entry point (live instance: DF-5396 urndis 2-byte heap overflow)
sys/bus/u4b/net/usb_ethernet.c:563 Β· pass 2 Β· new |
mbuf cluster leak per stall-unplug cycle (DF-5494) / future unguarded-len overflows (DF-5495) |
untested |
not_testable |
untriaged |
β |
β |
| DF-3730 |
Low |
3.4 |
ciss_cam_complete_fixup: padstr writes 16 bytes into the 4-byte inq->revision -> 12-byte heap overflow past short CAM INQUIRY buffers
sys/dev/raid/ciss/ciss.c:3325 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-4134 |
Low |
3.4 |
give_plex_to_volume() writes vol->plex[MAXPLEX] past the last member of struct volume when the 'too many plexes' throw is swallowed by disk-config mode
sys/dev/raid/vinum/vinumconfig.c:198 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4342 |
Low |
3.4 |
ngmn_newhook channel aliasing: DOWN-state reuse admits two live hooks on one schan β silent second connect, blackholed peer hook, permanent nhooks drift blocking line reconfig, and a concurrent dual-teardown double-free enabler
sys/dev/netif/mn/if_mn.c:470 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5104 |
Low |
3.4 |
led_attach() kstrdup()s the GPIOATTACH consumer arg without type validation: GPIO_TYPE_INT delivers an integer-as-pointer (arbitrary strlen/kstrdup deref) and the string variant is not termination-bounded (kernel-stack over-read)
sys/dev/misc/gpio/gpio_led.c:186 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5647 |
Low |
3.4 |
Negative port/portsize/maddr/msize hints accepted: poisoned resource-list entries (inverted start>end ranges, sign-extended UINT64_MAX bases) and rman double-claims of already-allocated I/O ports
sys/bus/isa/isahint.c:61 Β· pass 2 Β· new |
kernel resource bookkeeping corruption (inverted rle/rman ranges, overlapping/double-claimed I/O ports) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3531 |
Medium |
3.3 |
ng7 ng_tty: closing the tty with a pending chand callout permanently leaks the ng_item + node reference (ng_uncallout twin of DF-3515/DF-3523)
sys/netgraph7/tty/ng_tty.c:453 Β· pass 2 Β· new |
leak |
reproduced |
inconclusive |
untriaged |
β |
β |
| DF-2735 |
Low |
3.3 |
socket_wait() leaks one file descriptor into the caller's fd table on every call (and on its error path)
sys/kern/sys_generic.c:1699 Β· pass 2 Β· new |
denial_of_service |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2746 |
Low |
3.3 |
sys_mincore() off-by-one: kernel writes one NUL byte below the user-supplied vec pointer; vecindex/lastvecindex truncate at 8TB ranges
sys/vm/vm_mmap.c:829 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2819 |
Low |
3.3 |
kmalloc_obj zone-limit accounting uses cacheline-aligned ks_objsize while callers must derive limits from unaligned sizeof β tmpfs inode quota exhausts (ENOSPC) at ~85% of the configured cap
sys/kern/kern_kmalloc.c:899 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2956 |
Low |
3.3 |
timespec2fattime: post-2107 timestamps silently wrap the 7-bit FAT year field and truncate t2 64β32 bits β far-future utimes() persisted as arbitrary plausible dates (year-4.4M stored as 2023-11-23)
sys/kern/subr_fattime.c:157 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3114 |
Low |
3.3 |
hammer_ioc_gethistory ATKEY: ++cursor.key_beg.key signed-overflow at HAMMER_MAX_KEY wraps to INT64_MIN (full history disclosed for a past-EOF key); obj_type default EINVAL silently overwritten
sys/vfs/hammer/hammer_ioctl.c:296 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3159 |
Low |
3.3 |
msdosfs_setattrβdetrunc/deextend lack the va_size upper-bound check the write path has: ftruncate beyond FAT's 32-bit max silently drives deextend past the on-disk size field instead of EFBIG
sys/vfs/msdosfs/msdosfs_denode.c:509 Β· pass 2 Β· new |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3240 |
Low |
3.3 |
Signed-overflow bypass of the buflen guard in procfs_domap(): wrapped sum survives the INT_MAX check, int-truncated sbuf, wild fault-protected kernel-side read
sys/vfs/procfs/procfs_map.c:61 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4924 |
Low |
3.3 |
gfx_v9_0 gfx-ring emit_frame_size never reserves the 2-dword TMZ FRAME_CONTROL emission that amdgpu_ib_schedule() makes unconditionally β ring-reservation overrun of 2 dwords for every CS job with num_ibs == 24 (mod 64)
sys/dev/drm/amd/amdgpu/amdgpu_ib.c:159 Β· pass 2 Β· new |
dos |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3051 |
Info |
3.3 |
statfs/statvfs accounting overflow and unvalidated compat feature bits (has_journal RW without replay)
sys/vfs/ext2fs/ext2_vfsops.c:296 Β· pass 2 Β· new |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-3397 |
Info |
3.3 |
rx-ring init writes 4-byte int into const uint16_t nr_buf_size, clobbering the adjacent flags field (latent β module does not build on DFly)
sys/net/netmap/netmap_mem2.c:974 Β· pass 2 Β· new |
none |
build_failed |
not_testable |
untriaged |
β |
β |
| DF-5682 |
Info |
3.3 |
prop_number_unsigned() is the only prop_number accessor without a type guard - type-confused 4-byte heap OOB read (bitfield word at +40..43 vs 40-byte prop_string)
sys/libprop/prop_number.c:379 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3349 |
Low |
3.2 |
LACP leaks the slow-protocols multicast membership and ifma refcount on every member-port removal: if_delmulti_ifma is #if 0'd out and no equivalent cleanup exists in the tree
sys/net/lagg/ieee8023ad_lacp.c:544 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3670 |
Low |
3.2 |
ixgbe_calc_eeprom_checksum_generic walks NVM sections on NVM-resident pointer/length with u16 index and no word_size bounds β upstream FreeBSD fix missing in DragonFly
sys/dev/netif/ix/ixgbe_common.c:2214 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3274 |
Low |
3.1 |
Use-after-free read in TX accounting: m->m_pkthdr.len read after m_freem(m) when the control queue is full
sys/net/sppp/if_spppsubr.c:1318 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3638 |
Low |
3.1 |
ath_tx_retry_clone() dmasetup-failure path: node reference leaked forever and nbf recycled to the free list with bf_m dangling at a freed mbuf
sys/dev/netif/ath/ath/if_ath_tx.c:4568 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4548 |
Low |
3.1 |
ar5212_attach: halKeyCacheSize taken unclamped from 4-bit EEPROM AR_EEP_KCENTRIES field (up to 32768) vs 128-entry hardware key table; every HAL keycache bounds check validates against the attacker-controlled value
sys/dev/netif/ath/ath_hal/ar5212/ar5212_attach.c:867 Β· pass 2 Β· new |
Latent MMIO OOB-write primitive (key-cache writes past the 128-entry table into PHY register space); defused in-tree by if_ath's ATH_KEYMAX=128 clamp |
untested |
not_testable |
untriaged |
β |
β |
| DF-2704 |
Low |
3.0 |
vop_cache_operate_ap dispatches through mnt_vn_journal_ops unsynchronized against journal_detach kfree (UAF window, root-gated)
sys/kern/vfs_vopops.c:1781 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2936 |
Low |
3.0 |
module_register_init MOD_LOAD-failure path destroys the module registry entry while kldload(2) reports success β module lifecycle desynchronized from linker-file lifecycle (zombie module, teardown-order inversion)
sys/kern/kern_module.c:110 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2969 |
Low |
3.0 |
suspend_kproc holds no reference on the target thread: concurrent kthread_exit yields use-after-free read/write on a recycled struct thread and an unkillable sleeper
sys/kern/kern_kthread.c:188 Β· pass 2 Β· new |
denial_of_service |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2970 |
Low |
3.0 |
linesw[] registry accepts conflicting registrations and deregisters in-use disciplines with no validation β dual NETGRAPHDISC(6) registration by netgraph and netgraph7 tty modules silently aliases/strands live ttys
sys/kern/tty_conf.c:105 Β· pass 2 Β· new |
denial_of_service |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3237 |
Low |
3.0 |
iod-shutdown race: after nfssvc_iod_stop1() the reader re-queues EINPROGRESS requests onto nm_reqtxq whose only consumer (the writer thread) is already exiting β stranded nfsreq + nfsm_info + bio (biodone never called, buffer stuck B_BUSY), queue head embedded in the nfsmount that nfs_unmount then frees
sys/vfs/nfs/nfs_iod.c:134 Β· pass 2 Β· new |
leak |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3281 |
Low |
3.0 |
if_addgroup() increments ifg_refcnt outside ifgroup_lock and makes the find-or-create decision non-atomically: lost-update refcount -> premature group destruction with live references (latent UAF/double-free)
sys/net/if.c:1174 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3307 |
Low |
3.0 |
ip6_output(): stale exthdrs[] mbuf pointers across pfil_run_hooks() β use-after-free read+write in the fragmentation path
sys/netinet6/ip6_output.c:658 Β· pass 2 Β· new |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3401 |
Low |
3.0 |
ip_fw3_ctl_nat_get_record walks all CPUs' lockless per-CPU NAT state with no synchronization; break-vs-continue truncation
sys/net/ipfw3_nat/ip_fw3_nat.c:585 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4137 |
Low |
3.0 |
remove_plex_entry compacts vol->plex[] with a byte count instead of element count and decrements vol->plexes even when the plex was not found
sys/dev/raid/vinum/vinumconfig.c:1849 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4243 |
Low |
3.0 |
dptexecuteccb send-failure path frees CCB without callout_stop β armed timeout later runs dpttimeout on stale/recycled state (premature abort of unrelated command / UAF read)
sys/dev/raid/dpt/dpt_scsi.c:778 Β· pass 2 Β· new |
none demonstrated on guest (no DPT hardware); source-level impact: stale armed callout after send failure β premature abort of unrelated command / UAF-read on recycled ccb |
untested |
not_testable |
untriaged |
β |
β |
| DF-4294 |
Low |
3.0 |
Kernel heap OOB read via non-NUL-terminated NGM_TEXT_CONFIG data fed to strcmp/strtol
sys/dev/misc/musycc/musycc.c:1013 Β· pass 2 Β· new |
Kernel heap over-read (match/no-match oracle; page-fault panic at arena boundary). Root-only ngctl + LMC1504 hardware. |
untested |
not_testable |
untriaged |
β |
β |
| DF-4343 |
Low |
3.0 |
mn_attach error-path asymmetry: discarded BAR resource handles (unreleasable), leaking ENXIO returns, failures reported as attach success, dangling sc->node after node destruction, and no device_detach
sys/dev/netif/mn/if_mn.c:1302 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4534 |
Low |
3.0 |
lptclose() frees the I/O buffers while the lptout callout and the registered interrupt handler can still execute (use-after-free read window)
sys/dev/misc/lpt/lpt.c:596 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4640 |
Low |
3.0 |
ips: attach-time info-command timeout unwind frees the DMA buffer and recycles the static command slot while the adapter still owns the command - device UAF write / zeroed-callback call on late completion
sys/dev/raid/ips/ips_commands.c:313 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4972 |
Low |
3.0 |
Magic-map desync across master swap leaves dangling drm_file* in the old master's idr β use-after-free bit-write via DRM_IOCTL_AUTH_MAGIC
sys/dev/drm/drm_auth.c:65 Β· pass 2 Β· new |
corruption |
untested |
not_testable |
untriaged |
β |
β |
| DF-5167 |
Low |
3.0 |
bt_pci_attach() error unwind after bus_setup_intr() failure leaves an XPT-registered SIM and wildcard CAM path live over released port/IRQ rman records, freed DMA memory and a lockuninit'd softc lock (UAF-class teardown)
sys/dev/disk/buslogic/bt_pci.c:152 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4776 |
Info |
3.0 |
am7990_start_locked feeds unbounded mbuf chains into lance_put, memcpy'ing into the fixed LEBLEN(1522)-byte TX slot with no clamp (dead-code twin of DF-4746)
sys/dev/netif/lnc/am7990.c:523 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5194 |
Info |
3.0 |
Snake movement engine confines itself purely by wall-bounce arithmetic writing through the completely unchecked sc_vtb_putc: any geometry inconsistency escapes and runs away with unbounded 2-byte OOB writes marching through the video window into adjacent DMAP'd memory (latent β no in-tree path produces the trigger)
sys/dev/misc/syscons/snake/snake_saver.c:100 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5197 |
Info |
3.0 |
set_video_mode() return value ignored in warp_saver(): on failure vid aliases the stale 32KB text window and the 64000-byte bzero (plus every star write) overruns it by 32KB into 0xC0000+ (DF-5114 twin)
sys/dev/misc/syscons/warp/warp_saver.c:87 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5202 |
Info |
3.0 |
rain_saver(): set_video_mode() return value ignored β on blank-time failure vid aliases the stale 32KB text window and the 64000-byte bzero + drop-fill overrun it into 0xC0000+, while blanked/vid state commits as if the saver were active (DF-5114/DF-5197/DF-5198 family twin, last saver)
sys/dev/misc/syscons/rain/rain_saver.c:77 Β· pass 2 Β· new |
latent out-of-window MMIO writes + text-mode corruption |
untested |
not_testable |
untriaged |
β |
β |
| DF-5002 |
Low |
2.9 |
miibus leaks every kmalloc'd newbus ivars (mii_attach_args per PHY child, mii_probe_args per bus) β nothing in the kernel ever frees them
sys/dev/netif/mii_layer/mii.c:157 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5537 |
Low |
2.8 |
vconswinch_intr() manipulates tty token-protected state (t_winsize write, t_pgrp read + pgsignal) without tp->t_token β INTR_MPSAFE lock-protocol violation with theoretical pgrp use-after-free (self-pinned in practice) and vconsole double-load vs vconsterm
sys/platform/vkernel64/platform/console.c:276 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3107 |
Medium |
2.5 |
ufs_checkpath uses vp->v_mount after vput() drops intermediate ancestors to refcount 0 β read of unreferenced/reclaimable vnode on every deep rename (FreeBSD caches mp; ext2_checkpath shares the bug)
sys/vfs/ufs/ufs_lookup.c:1158 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2885 |
Low |
2.5 |
kern_ptrace permission checks dereference tracer (and pre-token target) ucred pointers with no crhold and no token β freed-cred read racing cratom_proc (DF-2868 analog in sys_process.c)
sys/kern/sys_process.c:153 Β· pass 2 Β· new |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3071 |
Low |
2.5 |
tmpfs memory/node limit enforcement is check-then-act: tm_pages_used ENOSPC test races its atomic_add (and tm_nodes_inuse check races the TMPFS_LOCK'd increment) β concurrent growth can overshoot tmpfs limits
sys/vfs/tmpfs/tmpfs_subr.c:1007 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3334 |
Low |
2.5 |
netmap_mem_get_info() failure paths unbalance the adapter refcount: premature free/UAF (NIOCREGIF) and pinned adapters (NIOCGINFO)
sys/net/netmap/netmap.c:1331 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3359 |
Low |
2.5 |
rtsock message builders fully trust producer sa_len for source reads β no clamp against sizeof(sockaddr_storage) (DF-3320 residual: OOB heap read leaked to unprivileged route-socket listeners)
sys/net/rtsock.c:1140 Β· pass 2 Β· new |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3484 |
Low |
2.5 |
Global netgraph queue (ngqbase/ngqlast/ngqfree) manipulated under crit_enter only: cross-CPU producer races silently orphan queue entries, permanently leaking their mbufs/messages and pinning node/hook references
sys/netgraph/netgraph/ng_base.c:1871 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3572 |
Low |
2.5 |
u32 wrap in SKL DDB data-rate sum over-subscribes the per-pipe DDB (un-carried Linux v5.2 u64 rework)
sys/dev/drm/i915/intel_pm.c:4216 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3840 |
Low |
2.5 |
1-byte use-after-free read in iwi_frame_intr(): frame->rate read at :1353 from the old rx mbuf after ieee80211_input() consumed/freed it (softled enabled by default)
sys/dev/netif/iwi/if_iwi.c:1353 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3851 |
Low |
2.5 |
dc_setfilt_21143/dc_setfilt_xircom enqueue the setup frame with no TX-ring-space check: descriptor clobber of an in-flight frame, leaked mbuf, and tx_cnt overrun when invoked on a saturated ring
sys/dev/netif/dc/if_dc.c:1055 Β· pass 2 Β· new |
TX-power correctness (bwn) / mbuf leak + ring wedge (dc) |
untested |
β |
untriaged |
β |
β |
| DF-3896 |
Low |
2.5 |
Unsigned resid underflow on the DATA_UNDERRUN path: csio->resid = cm_length β IOC-supplied TransferCount with no clamp (DF-3675 twin)
sys/dev/raid/mps/mps_sas.c:1943 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4041 |
Low |
2.5 |
polaris10 MVDD stash walks: SmioTable2.Pattern reads entries[count] instead of entries[level]; populate_mvdd_value walks the raw MCLK-dependency count past mvdd_voltage_table.entries[32]
sys/dev/drm/amd/powerplay/smumgr/polaris10_smumgr.c:657 Β· pass 2 Β· new |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| DF-4142 |
Low |
2.5 |
wi_rx_intr ignores wi_read_bap() failure: uninitialized kernel heap delivered to the 802.11 stack and BPF (device-fed info disclosure)
sys/dev/netif/wi/if_wi.c:1356 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4265 |
Low |
2.5 |
amdgpu_cs_wait_all_fences reads fence->error after the final dma_fence_put (use-after-free read, value returned as ioctl errno)
sys/dev/drm/amd/amdgpu/amdgpu_cs.c:1501 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4969 |
Low |
2.5 |
adw_pci_attach error unwinds leak the PCI register/IRQ resources (and the softc on the setup() path): adw_free() never calls bus_release_resource
sys/dev/disk/advansys/adw_pci.c:211 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5350 |
Low |
2.5 |
Unsynchronized dmat->segments allocation and map_count bookkeeping race under concurrent map create/destroy (double allocation leak; tag UAF window)
sys/platform/pc64/x86_64/busdma_machdep.c:337 Β· pass 2 Β· new |
device-side out-of-window DMA (DF-5349) / segments leak + tag UAF window (DF-5350) |
untested |
not_testable |
untriaged |
β |
β |
| DF-2701 |
Info |
2.5 |
swap_pager_getpage() 20-second timeout diagnostic dereferences the completed-and-released pbuf (use-after-free read in console path)
sys/vm/swap_pager.c:1527 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2913 |
Info |
2.5 |
plimit COW swap stores p->p_limit without p->p_spin, leaving a theoretical ref-acquisition race window against cross-process readers (schedcpu)
sys/kern/kern_plimit.c:189 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3185 |
Info |
2.5 |
vfs_findname() bcmp of buflen+1 bytes can read past the NUL of kernel rodata name tables (match/no-match oracle on adjacent .rodata bytes)
sys/vfs/procfs/procfs_subr.c:491 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5584 |
Low |
2.4 |
usb_idesc_foreach() uint8_t alt-index wraparound on configs with >256 alternate settings (missing upstream FreeBSD 6da5df47 fix)
sys/bus/u4b/usb_parse.c:135 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3214 |
Low |
2.3 |
netaddr_match union type confusion for RC_NAM cache entries: rc_nam pointer compared as an IPv4 address in the dup-reply-cache hash walk β spoofed-source false cache hits and a silently inert duplicate cache for non-AF_INET transports
sys/vfs/nfs/nfs_srvcache.c:194 Β· pass 2 Β· new |
leak |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3504 |
Low |
2.3 |
ng7 twin of DF-0512: finish_accept copies an unbounded sa (sa_len up to 255) into ng_ksocket_accept.addr declared as a fixed struct sockaddr
sys/netgraph7/ksocket/ng_ksocket.c:1250 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3551 |
Low |
2.3 |
mbuf+meta leak on the debug-hook data path: the only NG_FREE_DATA is gated on an unreachable condition (v1 twin of DF-0690)
sys/netgraph/ng_sample.c:237 Β· pass 2 Β· new |
dos |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4596 |
Low |
2.3 |
set_drive_parms() re-Mallocs drive->freelist without freeing the previous allocation (leak on drive re-init)
sys/dev/raid/vinum/vinumio.c:143 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5135 |
Low |
2.3 |
TUNABLE_bool stores a 4-byte int through (int*)&_Bool_param: setting any i915 bool tunable silently corrupts the following parameters (and the registered names are mangled to KBUILD_MODNAME.<param>)
sys/dev/drm/i915/i915_params.c:80 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3220 |
Info |
2.3 |
Mount/unmount error-path hygiene family: KTR_LOG reads freed dmp->dm_path after kfree, dirfs_root KTR prints uninitialized `error`, and mp->mnt_data is left dangling over freed dmp on failed mounts
sys/vfs/dirfs/dirfs_vfsops.c:131 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4339 |
Low |
2.0 |
atom_parse name[512] stays unterminated when the VBIOS message is 511 printable bytes β %s leaks uninitialized kernel stack past the buffer to console/log; msg string also walked unbounded past the image
sys/dev/drm/radeon/atom.c:1276 Β· pass 2 Β· new |
none |
inconclusive |
inconclusive |
untriaged |
β |
β |
| DF-3005 |
Low |
1.9 |
Read-after-free of cdev->si_name in devfs_destroy_related_without_flag_worker after devfs_destroy_dev_worker frees the device
sys/vfs/devfs/devfs_core.c:1508 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-3041 |
Low |
1.9 |
hammer_install_volume dereferences the volume header after brelse(bp) β buffer-cache use-after-release read of vol0_stat_bigblocks into f_blocks
sys/vfs/hammer/hammer_ondisk.c:250 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3420 |
Low |
1.9 |
pfi_update_status() snapshots the pf-group member-list head outside the ifgroup lock, then walks the snapshot β use-after-free of ifg_member under concurrent group churn
sys/net/pf/pf_if.c:722 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3666 |
Low |
1.9 |
sumo_rlc_init() save/restore buffer object undersized for the ON/LN/TN packed format: deterministic 172-byte write past the 324-byte BO
sys/dev/drm/radeon/evergreen.c:4155 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-3913 |
Low |
1.9 |
intel_sdvo_connector_state leaked when intel_sdvo_connector_init() fails (all four SDVO connector init paths)
sys/dev/drm/i915/intel_sdvo.c:2481 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4052 |
Low |
1.9 |
nfe_alloc_{rx,tx}_ring error paths destroy data[i].map in a loop over j β dmamap leak + tag map_count underflow on attach failure
sys/dev/netif/nfe/if_nfe.c:1725 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4128 |
Low |
1.9 |
Ignored rv6xx_convert_clock_to_stepping failures (:249-250, :302) leave uninitialized stepping structs programmed into the SPLL; VBIOS-driven step count overruns the SPLL step register block into VID_RT@0x6f8+
sys/dev/drm/radeon/rv6xx_dpm.c:225 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-4205 |
Low |
1.9 |
vlv_dsi_init dereferences vbt.dsi.config without a NULL/dangling guard β boot-time NULL-page panic or UAF read of freed config
sys/dev/drm/i915/vlv_dsi.c:1797 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4955 |
Low |
1.9 |
mpr_pci_free destroys the parent DMA tag while mpr_free can early-return without freeing the 7 child tags β DragonFly's bus_dma_tag_destroy kfree()s unconditionally, permanently leaking all IOC-facts DMA memory and tags on a wedged-controller failed attach
sys/dev/raid/mpr/mpr_pci.c:232 Β· pass 2 Β· new |
leak |
untested |
not_testable |
untriaged |
β |
β |
| DF-5042 |
Low |
1.9 |
adv_pci_attach leaks parent_dmat on the adv_init() and IRQ failure unwinds β init_level is bumped to the ccb_infos teardown tier after creating parent_dmat
sys/dev/disk/advansys/adv_pci.c:202 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5074 |
Low |
1.9 |
acpi_acad has no device_detach: ACPI notify handler (context=dev), global ACPIIO_ACAD_GET_STATUS ioctl hook and hw.acpi.acline sysctl OID are never removed (DF-5006-family; resource pinning + blocked kldunload, structurally non-UAF today)
sys/dev/acpica/acpi_acad.c:76 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5091 |
Low |
1.9 |
acpi_button has no device_detach: ACPI notify handler and fixed-event handler (context = softc) plus PRW wake GPE are never removed β DF-5006/DF-5074 family teardown gap, guaranteed UAF if a detach path is ever added
sys/dev/acpica/acpi_button.c:74 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5094 |
Low |
1.9 |
Unbounded vinum daemon instantiation with pid-blind lazy abdication: N concurrent daemons, unkillable P_SYSTEM processes, non-unloadable module; the plausible multi-consumer daemonq double-free is refuted on current DragonFly only by incidental MP-token serialization
sys/dev/raid/vinum/vinumdaemon.c:83 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5103 |
Low |
1.9 |
apple_fw detach leaves softc-backed world-readable sysctls live while newbus frees the softc: use-after-free read window during driver unload
sys/dev/apple/fw/apple_fw.c:144 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5124 |
Low |
1.9 |
hyperv_md_uninit() frees the reference-TSC DMA page without quiescing in-flight hyperv_tc64 readers β shutdown-time use-after-free read window
sys/dev/virtual/hyperv/x86_64/hyperv_machdep.c:96 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5149 |
Low |
1.9 |
pps driver has no device_detach and never destroy_dev()s its make_dev() cdev (DF-5006/5074/5091 teardown-gap family): /dev/ppsN and the ppbus child are permanent, module unload is structurally blocked, and a future naive detach is an interrupt-context UAF
sys/dev/misc/pps/pps.c:103 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5150 |
Low |
1.9 |
acpi_lid has no device_detach: ACPI_DEVICE_NOTIFY handler installed with context = softc, AcpiOsExecute deferrals of that softc, and the enabled PRW wake GPE are never removed β DF-5091 (acpi_button) mirror; guaranteed UAF if a detach path is ever added
sys/dev/acpica/acpi_lid.c:66 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5158 |
Low |
1.9 |
ata_ati_chipinit AHCI fallback attaches with dangling ctlr->r_res2: double bus_release_resource (rman UAF/panic) at detach
sys/dev/disk/nata/chipsets/ata-ati.c:108 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5404 |
Low |
1.9 |
sgread(): unlocked re-check of rdwr->state races another reader's remove+free β 4-byte use-after-free read and tsleep on a freed object (PINTERLOCKED pattern)
sys/bus/cam/scsi/scsi_sg.c:795 Β· pass 2 Β· new |
UAF-read driven control flow (DF-5404) / uninit stack tag match (DF-5405) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5440 |
Low |
1.9 |
targbhctor leaks the softc when targbhenlun() fails: cam_periph_alloc() never calls the dtor on ctor failure
sys/bus/cam/scsi/scsi_targ_bh.c:384 Β· pass 2 Β· new |
per-attach softc leak + speculative abort-refusing-SIM UAF (DF-5440) / stale CTIO timeout (DF-5441) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5544 |
Low |
1.9 |
uhci_pci_detach() swallows device_delete_children() failure: unconditional IRQ/IO/DMA teardown and kfree'd softc under a still-attached child, with detach reporting success
sys/bus/u4b/controller/uhci_pci.c:374 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-5631 |
Low |
1.9 |
kqueue_del() latent API hazards: close-before-delete EV_DELETE-ENOENT panics the whole vkernel; delete-vs-dispatch kfree races kqueue_intr()'s in-flight udata dispatch on another vCPU host thread (zero in-tree callers today)
sys/platform/vkernel64/platform/kqueue.c:164 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2726 |
Info |
1.9 |
cluster_write() reads bp->b_bio2.bio_offset after bdwrite()/bawrite() released the buffer β type-stable use-after-free reads corrupting write-clustering heuristics
sys/kern/vfs_cluster.c:1340 Β· pass 2 Β· new |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2942 |
Info |
1.9 |
sysref_activate's negative-space gate is ambiguous between initializing and terminating: an activate during the termination window resurrects the object and drives double (or unbounded) termination with zero layer diagnostics
sys/kern/kern_sysref.c:164 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3556 |
Info |
1.9 |
ng_ipfw is unbuildable dead code on this tree β DF-0735/DF-0736 cannot manifest on any buildable kernel
sys/netgraph7/ng_ipfw.c:44 Β· pass 2 Β· new |
none (unbuildable dead code) |
reproduced |
β |
untriaged |
β |
β |
| DF-4894 |
Info |
1.9 |
aac_disk_dump() consumes firmware-derived geometry with no host-side clamping: max_sectors==0 β infinite dump loop, sg_tablesize/SectorCount/BlockNumber overflow the FIB fields, single static dump map shared across controllers
sys/dev/raid/aac/aac_disk.c:256 Β· pass 2 Β· new |
dos |
untested |
not_testable |
untriaged |
β |
β |
| DF-4968 |
Info |
1.9 |
radeon GART table_size / num_gpu_pages 32-bit wrap (DF-2012's radeon twin): missing table-size invariant check in radeon_gart_table_{vram,ram}_alloc β power-of-two validator currently forces the wrapped size to 0 (fail-closed)
sys/dev/drm/radeon/radeon_gart.c:68 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5098 |
Info |
1.9 |
oce_page_list() hardcodes the segment bound (8) regardless of the destination pages[] array size β latent out-of-bounds write into RQ/CQ mailbox commands
sys/dev/netif/oce/oce_util.c:258 Β· pass 2 Β· new |
latent intra-object OOB write into fw command struct |
untested |
not_testable |
untriaged |
β |
β |
| DF-5114 |
Info |
1.9 |
dragon_saver(): set_video_mode() return value ignored β on failure vid would alias the wrong (32KB text) video window and 64000-byte writes would overrun it
sys/dev/misc/syscons/dragon/dragon_saver.c:192 Β· pass 2 Β· new |
latent out-of-window video MMIO writes (not kernel RAM) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5281 |
Info |
1.9 |
Vendor-database parsing: ksscanf("%80[^\n]") writes up to 81 bytes into kmalloc(80); pci_load_vendor_data() writes one byte past the preloaded blob
sys/bus/pci/pci.c:3243 Β· pass 2 Β· new |
VPD lookup always ENXIO (DF-5279) / devq UAF read race (DF-5280) / boot-time off-by-one (DF-5281) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5652 |
Info |
1.9 |
elcr_read_trigger/elcr_write_trigger: irq bounds enforced only by an INVARIANTS-only KASSERT with no signed lower bound β negative irq executes a C-undefined shift that aliases a real ISA bit and programs the live ELCR port; irq>=16 silently corrupts the shadow on production kernels
sys/platform/pc64/icu/elcr.c:57 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5665 |
Info |
1.9 |
FRAMEUP stack-walk heuristic accepts non-monotonic, non-aligned, non-contained frame pointers β a stale kernel %rbp can fault the chain walk (panic-only ceiling; hardening)
sys/cpu/x86_64/misc/ktr.c:67 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5319 |
Info |
1.8 |
usbd_req_get_ss_hub_descriptor() length formula overflows struct usb_hub_ss_descriptor by one byte for nports >= 249 β latent kernel stack OOB write with device-controlled byte
sys/bus/u4b/usb_request.c:1503 Β· pass 2 Β· new |
1-byte device-controlled write past 42-byte stack struct if a caller forwards unclamped bNbrPorts |
untested |
not_testable |
untriaged |
β |
β |
| DF-3008 |
Low |
1.1 |
devfs_find_device_by_devid/name return an unreferenced cdev: kern.devname sysctl (CTLFLAG_ANYBODY) reads si_name after devfs_lock is released β microscopic UAF-read race
sys/vfs/devfs/devfs_core.c:910 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4684 |
Low |
1.1 |
amdgpu_fence_wait_empty: dead dma_fence_get_rcu bail β racing reader resurrects and keeps using an already-released fence (double-free tail empirically blocked by the port's refcount_inc saturation)
sys/dev/drm/amd/amdgpu/amdgpu_fence.c:295 Β· pass 2 Β· new |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2893 |
Info |
1.1 |
sockbuf drop/flush family ignores M_SOLOCKED β latent use-after-free window against sorecvtcp's token-released uiomove loop
sys/kern/uipc_sockbuf.c:473 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2954 |
Info |
1.1 |
vfs_unmount tears down quota accounting (VFS_ACDONE) before the filesystem unmount commits β failed unmounts leave a live mount with accounting already 'done'
sys/kern/vfs_vfsops.c:131 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2982 |
Info |
1.1 |
Stale comments describe retired page-swapblk design, misdocumenting the OBJT_DEFAULT no-swap-metadata invariant that three files silently depend on
sys/vm/default_pager.c:33 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3472 |
Info |
1.1 |
raw_attach failure contract violated by callers: rts_attach frees the rawcb while so->so_pcb still points at it and the pcb socket reference is never dropped (latent β soreserve cannot fail in current DF)
sys/net/raw_cb.c:81 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3602 |
Info |
1.1 |
Off-by-one OOB write in hdaa_pcmchannel_setup: ch->io[ret] = -1 with ret==16 writes one nid_t past nid_t io[16]
sys/dev/sound/pci/hda/hdaa.c:5317 Β· pass 2 Β· new |
intra-object clobber only |
untested |
β |
untriaged |
β |
β |
| DF-4810 |
Info |
1.1 |
AHCI command-table stride ATA_AHCI_CT_SIZE=256 != sizeof(struct ata_ahci_cmd_tab)=1152: latent work-area OOB the moment per-tag (NCQ) dispatch is enabled
sys/dev/disk/nata/chipsets/ata-ahci.c:254 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4838 |
Info |
1.1 |
amdgpu userptr MMU-notifier invalidation is entirely absent on DragonFly β inert shim, compiled-out amdgpu_mn.c, stubbed userptr ioctl; latent missed-invalidation GPU DMA + stripped-kref p->mn UAF if ever enabled
sys/dev/drm/amd/amdgpu/amdgpu_mn.c:72 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5060 |
Info |
1.1 |
feed_format_init does not bound the channel count: AFMT's 5-bit channel field (up to 31) flows unvalidated into ialign/oalign sizing against a reservoir and FXDIV table dimensioned for SND_CHN_MAX β latent reservoir heap overflow and snd_fxdiv_table OOB index if a >SND_CHN_MAX-channel format ever becomes constructible
sys/dev/sound/pcm/feeder_format.c:48 Β· pass 2 Β· new |
none (latent invariant gap) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5144 |
Info |
1.1 |
Latent unchecked res_pool deref + lockless dc->current_state walk in dead public API dc_plane_get_status()
sys/dev/drm/amd/display/dc/core/dc_surface.c:115 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5159 |
Info |
1.1 |
WARN-only range guards: silent 64-bit wrap in bw_int_to_fixed_nonconst / bw_frc_to_fixed / bw_mul in release builds
sys/dev/drm/amd/display/dc/calcs/bw_fixed.c:49 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5178 |
Info |
1.1 |
hw_hpd set_config consumes the gpio_config_data tagged union's hpd member without validating config_data->type
sys/dev/drm/amd/display/dc/gpio/hw_hpd.c:107 Β· pass 2 Β· new |
latent tagged-union confusion -> masked MMIO mis-programming |
untested |
not_testable |
untriaged |
β |
β |
| DF-5225 |
Info |
1.1 |
amdgpu_vf_error: signed int ring counters used as modulo array indices β 2^31 wrap is signed-overflow UB and produces negative array-index writes (contained inside amdgpu_vf_error_buffer)
sys/dev/drm/amd/amdgpu/amdgpu_vf_error.c:42 Β· pass 2 Β· new |
latent signed-overflow UB, in-struct self-corruption ceiling |
untested |
not_testable |
untriaged |
β |
β |
| DF-5709 |
Info |
1.1 |
HEX_NCPYLEN(s) does not parenthesize its argument β compound expressions mis-size caller buffers 3x undersize, latent linear overflow inside hexncpy
sys/libkern/hexncpy.c:56 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3441 |
Low |
0.8 |
div_bind() writes sin_addr = INADDR_ANY at offset 4..8 of the user bind sockaddr before any length validation (OOB write lands in own-chunk slab slack)
sys/netinet/ip_divert.c:472 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2737 |
Info |
0.8 |
Dead code: oid_running is never incremented, so the dynamic-oid teardown drain and CTLFLAG_DYING machinery in sysctl_remove_oid_locked are inoperative
sys/kern/kern_sysctl.c:384 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3417 |
Info |
0.8 |
in6_ifdetach purges UDP moptions from udbinfo[0] only while the IPv4 twin loops all CPUs β latent purge gap that is complete today only by accident of udp6_attach()
sys/netinet6/in6_ifattach.c:818 Β· pass 2 Β· new |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-4464 |
Info |
0.8 |
uguru_attach sensor-table loop writes sc_sensors[i] with no bound against UGURU_MAX_SENSORS β one table entry away from a kernel softc overflow
sys/dev/powermng/uguru/uguru.c:867 Β· pass 2 Β· new |
Latent softc overflow if a future board table exceeds 27 entries (max today 26) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5329 |
Info |
0.8 |
cam_periph_invalidate()'s underflow guard is dead code: `u_int32_t refcount < 0` never fires, so periph refcount underflows (DF-5273/DF-5327 classes) are silent
sys/bus/cam/cam_periph.c:576 Β· pass 2 Β· new |
silent integrity failure: the CAM core's only periph-refcount underflow detector (cam_periph.c:576) provably never fires because refcount is u_int32_t and is compared < 0; underflowed periphs (DF-5273/DF-5327 classes) become silent zombies with no diagnostic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5379 |
Info |
0.8 |
sub_info->uvc_info stores a dangling pointer to the initializer's dead stack frame (persisted in the heap control graph)
sys/bus/u4b/uvc/uvc_ctrls.c:776 Β· pass 2 Β· new |
latent stale-stack back-pointer in the heap control graph |
untested |
not_testable |
untriaged |
β |
β |
| DF-5010 |
Info |
0.7 |
vkd_doio performs COW-mode bcopy and backing-file pread/pwrite with no driver-level bounds check on bio_offset/b_bcount (latent arbitrary-offset OOB R/W in the vkernel host process; shielded today only by dscheck)
sys/dev/virtual/vkernel/disk/vdisk.c:311 Β· pass 2 Β· new |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-4050 |
Info |
0.6 |
adjust_display_pll_v2 never executes the AdjustDisplayPll BIOS command (missing EXEC block; always returns BP_RESULT_FAILURE)
sys/dev/drm/amd/display/dc/bios/command_table.c:1457 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-2690 |
Info |
0.5 |
m_extadd() lacks the M_EXT precondition guard m_mclget() has β calling it on a cluster mbuf yields m_sharecount()/m_free() type confusion and a wrong-cache objcache_put
sys/kern/uipc_mbuf.c:1477 Β· pass 2 Β· new |
β |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2790 |
Info |
0.5 |
blist API performs no domain validation: count==0 triggers shift-by-64 UB that can clear a whole leaf or poison a live node as a terminator (bm_bighint = -1); blist_create lacks a BLIST_MAXBLKS guard (int64 radix wrap β infinite loop)
sys/kern/subr_blist.c:188 Β· pass 2 Β· new |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2817 |
Info |
0.5 |
lwkt_token_swap() lower-bound-only KKASSERTs: <2-token invocation corrupts memory before td_toks_array in non-INVARIANTS kernels
sys/kern/lwkt_token.c:952 Β· pass 2 Β· new |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2919 |
Info |
0.5 |
vfs_register() walks sysctl__vfs_children without SYSCTL_XLOCK while unlinking/relinking the iterated oid mid-loop
sys/kern/vfs_init.c:338 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2987 |
Info |
0.5 |
refcount_release/_n have no underflow floor or INVARIANTS assert β double-release silently wraps the count to 0xFFFFFFFF and hides DF-2941-class double-put/double-free bugs at runtime
sys/kern/kern_refcount.c:54 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-3089 |
Info |
0.5 |
nfs_getauth()/nfs_savenickauth() take NFSKERBKEY_T (u_char[2]) as a parameter but bcopy sizeof(NFSKERBKEY_T) == 8 bytes into/out of 2-byte struct members β padding-absorbed today, latent overflow on any layout change
sys/vfs/nfs/nfs_syscalls.c:1075 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3123 |
Info |
0.5 |
Latent memory-safety landmines in the #if 0-disabled htree write path: heap memcpy overflow in the index-node split, four double-brelse-after-bwrite error paths, u16 reclen truncation at 64K blocks
sys/vfs/ext2fs/ext2_htree.c:457 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3210 |
Info |
0.5 |
krpc_call() early-error exits (socreate/sosetopt/sobind) leak the caller's request mbuf chain β md_mount/md_lookup_swap's 'message already freed' ownership contract is false
sys/vfs/nfs/nfs_mountrpc.c:146 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-3306 |
Info |
0.5 |
expire_upcalls() frees bw meters without unschedule_bw_meter() β latent UAF (FreeBSD divergence; unreachable today)
sys/net/ip_mroute/ip_mroute.c:1423 Β· pass 2 Β· new |
none |
untested |
fixed |
untriaged |
β |
β |
| DF-3899 |
Info |
0.5 |
Off-by-one bounds guard in intel_get_shared_dpll_id(): one-past-end pointer passes the WARN_ON and yields id == num_shared_dpll (== 7 == I915_NUM_PLLS on ICL)
sys/dev/drm/i915/intel_dpll_mgr.c:103 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4131 |
Info |
0.5 |
Latent stack OOB in oce_mbox_eqd_modify_periodic: protocol array delay[8] filled from set_eqd[OCE_MAX_EQ=32] with num<=neqs
sys/dev/netif/oce/oce_mbox.c:1795 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4282 |
Info |
0.5 |
drm addmap/rmmap validation gaps: unbounded _DRM_SCATTER_GATHER offset, x86_64 offset-wrap check compiled out, RM_MAP lacks ownership check (tokens enumerable via unauthenticated GET_MAP)
sys/dev/drm/drm_bufs.c:311 Β· pass 2 Β· new |
Currently theoretical (root-gated creation + the mmap units mismatch). |
untested |
not_testable |
untriaged |
β |
β |
| DF-4463 |
Info |
0.5 |
amdtemp_detach frees dev.cpu.N.temperature oids but leaves dangling entries in the cpu devices' sysctl contexts β latent UAF if a cpu device is ever destroyed
sys/dev/powermng/amdtemp/amdtemp.c:674 Β· pass 2 Β· new |
Latent UAF/double-free if a cpu device is ever hot-destroyed (none today - pc64 cpu driver has no detach) |
untested |
not_testable |
untriaged |
β |
β |
| DF-4536 |
Info |
0.5 |
lptopen() sc_state check-then-set TOCTOU: double open double-allocates and the paired closes double-free the same M_LPT chunks (latent β currently blocked by the mplock)
sys/dev/misc/lpt/lpt.c:458 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4565 |
Info |
0.5 |
Unbounded flicker-filter table index: a non-matching flicker_removal exits the SLOPE_limit walk at i==5 and reads SLOPE_value[5]/YCOEF_value[5]/YCOEF_EN_value[5] one element past the [5]-element arrays (latent; unreachable with current constants)
sys/dev/drm/radeon/radeon_legacy_tv.c:647 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4578 |
Info |
0.5 |
amdgpu_amdkfd_gfx_v8: entire gfx8 KFD backend is dead code on DragonFly; latent unvalidated vmid/engine index arithmetic and a structurally broken fw-NULL guard must be fixed before KFD is ever enabled (gfx8 sibling of DF-4499)
sys/dev/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c:245 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4638 |
Info |
0.5 |
ig_hal: e1000_read_posted_mbx/e1000_write_posted_mbx dispatch to ops.read/ops.write with unvalidated size, bypassing the read-clamp/write-reject discipline enforced only by the non-posted wrappers β latent kernel-buffer overflow footgun on the live igb VF path
sys/dev/netif/ig_hal/e1000_mbx.c:246 Β· pass 2 Β· new |
none demonstrated (latent API hazard): any future caller of e1000_read_posted_mbx/e1000_write_posted_mbx with size > mbx->size(16) gets an unconditional ops.read/ops.write word loop (e1000_mbx.c:476-477/:512-513/:697-698/:736-737) past its buffer β kernel overflow with PF-controlled mailbox content plus OOB E1000_VMBMEM register-array writes; all in-tree callers (e1000_vf.c) pass sizes 1/2/3/16 with correctly sized buffers |
untested |
not_testable |
untriaged |
β |
β |
| DF-4746 |
Info |
0.5 |
am79900_start_locked feeds unbounded mbuf chains into lance_put, which memcpy's them into a fixed LEBLEN(1522)-byte TX buffer slot with no length clamp
sys/dev/netif/lnc/am79900.c:560 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-4811 |
Info |
0.5 |
aps(4): every EC transaction reads and writes I/O port 0x161F, one byte past the driver's allocated 0x1f-byte I/O resource window
sys/dev/powermng/aps/aps.c:102 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4912 |
Info |
0.5 |
Dead stats module carries a latent length==0 off-by-one OOB write in mod_stats_update_event (unsigned wrap β event_string[-1]); module not compiled by any Makefile β delete it or guard
sys/dev/drm/amd/display/modules/stats/stats.c:316 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4921 |
Info |
0.5 |
Parent-NIC softc type confusion gated only by 4-char driver-name prefix (strncmp "stge")
sys/dev/netif/mii_layer/ip1000phy.c:435 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-4944 |
Info |
0.5 |
id_to_offset GPIO_ID_GPIO_PAD branch compares the derived mask against the pin-index bound GPIO_GPIO_PAD_MAX: valid pads 5..30 wrongly rejected; enβ₯32 hits the C11 6.5.7 UB shift and is accepted with a bogus mask
sys/dev/drm/amd/display/dc/gpio/dce80/hw_translate_dce80.c:378 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-4984 |
Info |
0.5 |
dm_target_snapshot.c is unbuildable, unregistered dead scratch code (dmirror DF-4973 class) whose latent memory-safety bugs β cross-allocator free, double-unbusy refcount underflow, NULL-deref panics β must never be revived; delete it
sys/dev/disk/dm/snapshot/dm_target_snapshot.c:113 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5056 |
Info |
0.5 |
smu10_smu_init error paths leave hwmgr->smu_backend dangling after kfree(priv)
sys/dev/drm/amd/powerplay/smumgr/smu10_smumgr.c:232 Β· pass 2 Β· new |
latent UAF hardening, not reachable in this tree |
untested |
not_testable |
untriaged |
β |
β |
| DF-5069 |
Info |
0.5 |
psm_fini_power_state_table() leaves hwmgr->boot_ps and hwmgr->uvd_ps dangling into the freed hwmgr->ps allocation (incomplete cleanup; no in-tree reader today)
sys/dev/drm/amd/powerplay/hwmgr/pp_psm.c:102 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5101 |
Info |
0.5 |
Non-atomic, lock-inconsistent dev->irq_enabled test-and-clear in drm_irq_uninstall() admits double driver->irq_uninstall()+free_irq(), amplified into a double-free/UAF by the unlocked free_irq() lookup in linux_irq.c
sys/dev/drm/drm_irq.c:182 Β· pass 2 Β· new |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-5118 |
Info |
0.5 |
dcons_crom_detach half-clears the global dcons state: dcons_conf->dma_map is left dangling over the map freed two lines below and the module-static dcons_paddr is never reset β a re-attached dcons_crom takes dmamap_cb's 'already set' early-return and can never re-wire dcons_conf, silently disabling DMA sync; memory safety rests solely on the incidental dma_tag!=NULL guards in dcons_os.c
sys/dev/misc/dcons/dcons_crom.c:199 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5142 |
Info |
0.5 |
rdrand_rng() asm loop body executes unconditionally: called with limit < 8 it writes a full 8-byte RDRAND word past a sub-word buffer
sys/dev/crypto/rdrand/rdrand.c:85 Β· pass 2 Β· new |
latent 8B OOB write on sub-word call / GPU DMA to aliased physical pages |
untested |
not_testable |
untriaged |
β |
β |
| DF-5156 |
Info |
0.5 |
orm_identify() scan loop lacks a MAX_ROMS bound β latent OOB write past the 196-byte orm_softc (rid[]/res[]), currently unreachable because the ISA bus caps SYS_RES_MEMORY rids at ISA_NMEM=8
sys/dev/misc/orm/orm.c:104 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5185 |
Info |
0.5 |
intel_guc_ads_create() indexes GUC_MAX_ENGINES_NUM-sized ADS arrays with sparse engine->guc_id (hw_id) values β out-of-bounds array writes on ICL (VCS3_HW=6) that stay contained inside the packed blob but corrupt GuC-visible ADS fields
sys/dev/drm/i915/intel_guc_ads.c:109 Β· pass 2 Β· new |
corrupted GuC-visible ADS data (in-blob contained) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5317 |
Info |
0.5 |
USB_FS_STOP bounds-checks u.pstop->ep_index but indexes the array with u.pstart->ep_index β latent union type-confusion, benign only because the two ioctl structs are layout-identical
sys/bus/u4b/usb_generic.c:1435 Β· pass 2 Β· new |
latent unchecked index (DF-5317) / unpriv log flooding (DF-5318) |
untested |
not_testable |
untriaged |
β |
β |
| DF-5499 |
Info |
0.5 |
passioctl() runs CAMIOCOMMAND/CAMGETPASSTHRU with no periph reference across unkillable blocking sleeps (DF-5273/5327 hold/release class) β latent premature-free/UAF, currently blocked by devfs close semantics
sys/bus/cam/scsi/scsi_pass.c:451 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-5585 |
Info |
0.5 |
Quirk-apply fast path trusts stale pf / absent pf_last state: latent write-after-free and NULL-page write (unreachable with the shipped quirk table)
sys/bus/pccard/pccard_cis_quirks.c:248 Β· pass 2 Β· new |
none |
untested |
not_testable |
untriaged |
β |
β |
| DF-5625 |
Info |
0.5 |
ppb_ecp_sync()/ppb_reset_epp_timeout() return indeterminate register garbage: interface declares int methods, the only implementations are void (C UB through the DEVMETHOD dispatch)
sys/bus/ppbus/ppb_base.c:159 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5641 |
Info |
0.5 |
isa_alloc_resource/isa_release_resource cast grandchild ivars via DEVTOISA unconditionally β type-confused (often NULL) resource-list pointer passed through, safe today only because resource_list_alloc/release early-forward on passthrough
sys/bus/isa/x86_64/isa.c:85 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2864 |
Info |
0.3 |
Per-candidate struct mount + syncer-thread leak and permanent vfc_refcount leak on failed root-mount attempts (mp overwritten next iteration; error path never drops mp->mnt_vfc->vfc_refcount)
sys/kern/vfs_conf.c:435 Β· pass 2 Β· new |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-5328 |
Medium |
β |
cam_periph_alloc() TOCTOU on the borrowed cam_periph_find() pointer: camperiphfree() can free the periph between find() and the unlocked NEW_DEV_FOUND/deferred_callback stores (UAF write), and camperiphfree() can see the flag set before deferred_callback is published (NULL/garbage indirect call)
sys/bus/cam/cam_periph.c:176 Β· pass 2 Β· new |
none observed; code-level race: camperiphfree() can free the periph inside cam_periph_alloc()'s find()->flag-store window (UAF write into freed 144B M_CAMPERIPH chunk) and camperiphfree() can observe CAM_PERIPH_NEW_DEV_FOUND with an unpublished NULL deferred_callback -> indirect call through NULL/garbage |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-3060 |
Low |
β |
dm_fdlist is walked and mutated without any common lock β nresolve's TAILQ scan races dirfs_node_setpassive's INSERT/REMOVE on SMP vkernels (UAF / list corruption)
sys/vfs/dirfs/dirfs_vnops.c:171 Β· pass 2 Β· new |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0569 |
High |
9.8 |
Heap OOB write via byte-swapped alias_port used as array index: every NAT deployment corrupts heap ~1.6% of connections
sys/net/ipfw3_nat/ip_fw3_nat.c:436 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2597 |
High |
9.8 |
TCP-MD5 signature option writes past 40-byte opt[] stack buffer with no bounds check
sys/netinet/tcp_output.c:186 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0393 |
Critical |
9.6 |
Remote heap buffer overflow via oversized Mesh ID IE in sta_add: memcpy 2+meshid[1] into se_meshid[34] with no bounds check
sys/netproto/802_11/wlan/ieee80211_scan_sta.c:310 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0285 |
High |
9.6 |
Remote heap overflow via unchecked MESHID IE length in ieee80211_parse_meshid
sys/netproto/802_11/wlan/ieee80211_mesh.c:3456 |
Real CWE-787 heap OOB write in ieee80211_parse_meshid (up to 223 bytes) reaching ni_mltimer.toc / ni_mlhtimer.toc pointers => indirect function-pointer-control RCE surface on wifi-equipped MBSS hosts; NOT runtime-triggerable on this KVM guest (no wifi hardware). |
inconclusive |
β |
untriaged |
β |
β |
| DF-0326 |
High |
9.6 |
Remote heap overflow: unbounded SSID IE length copied into fixed 32-byte ni_essid
sys/netproto/802_11/wlan/ieee80211_node.c:815 |
remote-unauth heap overflow corrupting ni_chan kernel pointer (panic/DoS minimum, code-exec plausible) on any host with a wlan radio |
inconclusive |
β |
untriaged |
β |
β |
| DF-0631 |
High |
9.0 |
Use-after-free on ipfw3_state->stub after the owning rule is deleted
sys/net/ipfw3_basic/ip_fw3_state.c:210 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1215 |
Critical |
8.8 |
METEORSVIDEO ioctl allows unprivileged user to set arbitrary physical DMA target address
sys/dev/video/bktr/bktr_core.c:1396 |
none |
inconclusive |
fixed |
untriaged |
β |
β |
| 1083 |
High |
8.8 |
Off-by-one in CROM_MAX_DEPTH check in crom_next() allows stack OOB write of 12 bytes
sys/bus/firewire/fwcrom.c:115 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0616 |
High |
8.8 |
Heap buffer overflow in generic_netmap_rxsync: unbounded m_copydata into fixed-size netmap buffer
sys/net/netmap/netmap_generic.c:669 |
heap-oob-write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0753 |
High |
8.8 |
Stale mbuf pointer after mpls_output may reallocate β use-after-free/double-free when route has PUSH op
sys/netproto/mpls/mpls_input.c:208 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0981 |
High |
8.8 |
Heap buffer overflow in run_bulk_rx_callback aggregated-frame path (m_getcl cluster too small for device-controlled dmalen)
sys/bus/u4b/wlan/if_run.c:2989 |
heap-oob-write (hardware-gated on this guest; up to ~2035B on a run(4)-equipped host) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0987 |
High |
8.8 |
cdcheckmedia unbounded TOC entry count overflows softc->toc.entries[100] -> heap corruption
sys/bus/cam/scsi/scsi_cd.c:2947 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1020 |
High |
8.8 |
OOB heap write in fw_bus_explore_callback via wire-controlled ongoaddr jump -> arbitrary 4-byte kernel heap write
sys/bus/firewire/firewire.c:1500 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1216 |
High |
8.8 |
METEORSETGEO + METEORSACTPIXFMT pixel-format mismatch yields OOB DMA write and OOB uiomove heap info-leak
sys/dev/video/bktr/bktr_core.c:1084 |
leak:4177936 |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1410 |
High |
8.8 |
Unauthenticated remote heap overflow in xe RX: missing upper-bound check on frame length before copying into 2KB mbuf cluster
sys/dev/netif/xe/if_xe.c:752 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0269 |
Medium |
8.8 |
Stack buffer overflow in sppp_print_bytes: VLA sized len but hexncpy writes 3*len bytes
sys/net/sppp/if_spppsubr.c:5290 |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0289 |
Medium |
8.8 |
UAF/TOCTOU: mesh route pointers returned unreferenced, forward_to_gates drops lock mid-traversal
sys/netproto/802_11/wlan/ieee80211_mesh.c:230 |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2012 |
Medium |
8.8 |
Integer overflow in GART table_size yields undersized VRAM table and OOB write via amdgpu_gart_bind/unbind
sys/dev/drm/amd/amdgpu/amdgpu_gart.c:362 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0053 |
High |
8.4 |
Heap buffer overflow in sysctl_jail_list (kern.jail.list) via unsigned underflow in size arithmetic
sys/kern/kern_jail.c:671 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1264 |
High |
8.4 |
drm_dp_sideband_msg_build OOB write past chunk[48] via unchecked msg_len from malicious MST hub
sys/dev/drm/drm_dp_mst_topology.c:349 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1314 |
High |
8.4 |
Off-by-one in btc_copy_vbios_mc_reg_table + post-write bound check in btc_set_mc_special_registers allows VBIOS OOB write
sys/dev/drm/radeon/btc_dpm.c:1992 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1319 |
High |
8.4 |
Unvalidated DisplayPort lane_count from malicious sink causes stack buffer overflow in link-training helpers
sys/dev/drm/amd/display/dc/core/dc_link_dp.c:1784 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1437 |
High |
8.4 |
Heap OOB write in sumo_construct_vid_mapping_table via unchecked VBIOS usVoltageIndex
sys/dev/drm/radeon/sumo_dpm.c:1624 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1483 |
High |
8.4 |
Integer overflow in user-fence offset check allows OOB GPU memory write
sys/dev/drm/amd/amdgpu/amdgpu_cs.c:59 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1837 |
High |
8.4 |
Heap buffer overflow in dm_helpers_read_local_edid via uncapped EDID extension count
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c:583 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2349 |
High |
8.4 |
uint8_t loop index in uvc_ctrl_init_dev wraps causing infinite loop and heap OOB write on malicious UVC descriptor
sys/bus/u4b/uvc/uvc_ctrls.c:925 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2354 |
High |
8.4 |
txd_fw buffer overflow on firmware load: 6 KB heap overflow + kernel-memory leak to USB device on every attach
sys/bus/u4b/wlan/if_mtw.c:128 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1526 |
Medium |
8.3 |
Missing RX length bounds check + RX buffer-length misprogramming allows heap OOB read (info leak) and DMA heap overflow write
sys/dev/netif/sf/if_sf.c:883 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-0291 |
High |
8.2 |
Heap buffer overflow in setmlme_assoc_adhoc: unbounded im_ssid_len into 32-byte buffers
sys/netproto/802_11/wlan/ieee80211_ioctl.c:1568 |
none observed; real shipped heap+stack overflow (CWE-787) unreachable on this guest (no wlan vap possible without a wifi radio) |
inconclusive |
β |
untriaged |
β |
β |
| DF-0362 |
High |
8.2 |
pfr_fix_anchor unbounded slash-count loop causes size_t wraparound in bcopy/memset: kernel panic via DIOCRGETTABLES
sys/net/pf/pf_table.c:1740 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0401 |
High |
8.2 |
Heap buffer overflow via unchecked slot->len in VALE bridge forwarding: pkt_copy up to 65536 bytes into 2048-byte buffer
sys/net/netmap/netmap_vale.c:988 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0449 |
High |
8.2 |
Heap buffer overflow in ng_string_parse: missing *buflen bounds check before bcopy of user-supplied string
sys/netgraph/netgraph/ng_parse.c:704 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1356 |
High |
8.2 |
Heap overflow in AMR_CMD_PASS ioctl via unchecked cdb length
sys/dev/raid/amr/amr.c:825 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1499 |
High |
8.2 |
Heap buffer overflow in NGM_TEXT_STATUS via status_chans + status_8370
sys/dev/misc/musycc/musycc.c:443 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2425 |
Low |
8.2 |
CDB heap overflow via unchecked cdb_len into 12-byte CmdBlock
sys/dev/disk/amd/amd.c:399 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| 1085 |
High |
8.1 |
crom_parse_text() write-underflow when text leaf crc_len < 2 corrupts memory before the caller buffer
sys/bus/firewire/fwcrom.c:215 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0492 |
High |
8.1 |
Lockless race on L2TP seq/window state: concurrent timer + remote packet processing -> UAF on xwin[] mbufs and node private data
sys/netgraph/l2tp/ng_l2tp.c:1126 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0640 |
High |
8.1 |
ieee80211_crypto_decap minimum-length check ignores hdrlen, causing OOB-read panic or mbuf double-free on crafted encrypted frames
sys/netproto/802_11/wlan/ieee80211_crypto.c:587 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0733 |
High |
8.1 |
acl_check walks ACL hash without lock β UAF race vs concurrent acl_remove/acl_free_all from receive path (unauth remote)
sys/netproto/802_11/wlan_acl/ieee80211_acl.c:161 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0767 |
High |
8.1 |
nfs_lookitup returns uninitialized nfsnode pointer when server echoes parent filehandle β wild-pointer deref in create/mkdir/mknod/symlink
sys/vfs/nfs/nfs_vnops.c:3061 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0117 |
High |
8.0 |
UAF on kdmsg state in diskiodone: state refcount not held across async I/O
sys/kern/subr_diskiocom.c:372 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1213 |
High |
8.0 |
Unchecked device-supplied rxcd->rxd_idx yields OOB array access, OOB write, arbitrary-pointer write, and infinite loop in RX completion path
sys/dev/virtual/vmware/vmxnet3/if_vmx.c:2056 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2575 |
High |
8.0 |
ip_fw3_dummynet_io caches rule pointer in dn_pkt->dn_priv with no refcount rule deletion during pipe transit causes UAF read+write on reinject
sys/net/ipfw3/ip_fw3.c:630 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0320 |
Medium |
8.0 |
Reorder buffer rxa_m[] mutated without dedicated lock: RX races timer flush and ADDBA re-init (double-free/UAF)
sys/netproto/802_11/wlan/ieee80211_ht.c:780 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0783 |
Critical |
7.8 |
ext2_rename writes 24 attacker-controlled bytes onto kernel stack via (caddr_t)&dirbuf β stack overflow corrupted ptr deref arbitrary free + info leak (CRITICAL)
sys/vfs/ext2fs/ext2_vnops.c:693 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1171 |
Critical |
7.8 |
Intel MatrixRAID parser: OOB heap write on ar_softc via unclamped map->total_disks
sys/dev/disk/nata/ata-raid.c:2165 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1326 |
Critical |
7.8 |
Stack buffer overflow in mpr_user_pass_thru: copyin of user-controlled RequestSize into 12-byte MPI2_REQUEST_HEADER before bounds check
sys/dev/raid/mpr/mpr_user.c:742 |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1359 |
Critical |
7.8 |
Stack buffer overflow in mps_user_pass_thru via unbounded copyin into 12-byte tmphdr
sys/dev/raid/mps/mps_user.c:747 |
uid0 β root |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2132 |
Critical |
7.8 |
dma_buf_get returns unrefcounted pointer; caller dma_buf_put over-drops f_count causing UAF (local unpriv->root)
sys/dev/drm/linux_dma-buf.c:174 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0509 |
High |
7.8 |
Stack buffer overflow in ng_ksocket_sockaddr_unparse via negative pathlen (PF_LOCAL sun_len underflow)
sys/netgraph7/ksocket/ng_ksocket.c:323 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0676 |
High |
7.8 |
Double-free of mbuf in XMIT_ALL error path via NG_FREE_ITEM + NG_FREE_M on a peeked (non-detached) mbuf
sys/netgraph7/one2many/ng_one2many.c:425 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0754 |
High |
7.8 |
mpls_output() takes mbuf by-value but helpers silently reallocate head β root cause of DF-0753, also manifests in mpls_output_process double-free/leak + ip_output stale-m
sys/netproto/mpls/mpls_output.c:50 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0776 |
High |
7.8 |
Missing production bounds validation on B-tree node count/type β crafted image heap OOB read/write via bcopy element shift
sys/vfs/hammer/hammer_btree.c:818 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0780 |
High |
7.8 |
Heap buffer overflow in fuse_io_execute READ from oversized daemon reply β memcpy daemon-chosen size into fixed buffer
sys/vfs/fuse/fuse_vnops.c:2048 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0803 |
High |
7.8 |
Integer truncation in e2fs_gcount computation bypasses overflow check β heap OOB from crafted ext2 64bit image
sys/vfs/ext2fs/ext2_vfsops.c:620 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0859 |
High |
7.8 |
Unbounded ab_busycnt in hpfs_splitalsec/hpfs_concatalsec/hpfs_alblk2alsec bcopy overflows alsec heap buffer
sys/vfs/hpfs/hpfs_alsubr.c:225 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0861 |
High |
7.8 |
hpfs_cpinit unbounded code-page inner loop writes attacker data past hpm_cpdblk allocation (heap overflow)
sys/vfs/hpfs/hpfs_subr.c:274 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0887 |
High |
7.8 |
Heap overflow in ffs_truncate symlink fast-path via unbounded bzero of attacker-controlled di_size
sys/vfs/ufs/ffs_inode.c:159 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0894 |
High |
7.8 |
Crafted fs_nindir in superblock causes OOB read/write of indirect-block buffers in ffs_balloc
sys/vfs/ufs/ffs_balloc.c:291 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0903 |
High |
7.8 |
Heap OOB write in ffs_write via crafted fs_qbmask (missing xfersize bounds check present in ffs_read)
sys/vfs/ufs/ufs_readwrite.c:292 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0915 |
High |
7.8 |
fuse_device_write trusts daemon ohd->len over actual write size yielding heap OOB read and overflow write
sys/vfs/fuse/fuse_device.c:182 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0994 |
High |
7.8 |
sastart ERR_PENDING drain uses stale bio pointer after goto again -> double biodone, queue corruption, bio UAF
sys/bus/cam/scsi/scsi_sa.c:1601 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1057 |
High |
7.8 |
FW_ASYREQ bcopy writes payload into &xfer->send.payload (field address) instead of xfer->send.payload (buffer) β kernel heap overflow + arbitrary kfree
sys/bus/firewire/fwdev.c:558 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1058 |
High |
7.8 |
fw_write trusts user-supplied stream packet header len field for the second uiomove, overflowing the per-packet DMA buffer slot
sys/bus/firewire/fwdev.c:388 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1065 |
High |
7.8 |
Use-after-free: bq->mem kfree()d while userspace mmap mappings keep wired fictitious pages pointing at freed memory
sys/bus/u4b/uvc/uvc_buf.c:517 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1076 |
High |
7.8 |
Slave-controlled block-read count overflows fixed 32-byte sc->block_data buffer in ISR
sys/bus/smbus/ichsmb/ichsmb.c:575 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1081 |
High |
7.8 |
Stack buffer overflow in cue_setmulti: 8-byte hashtbl for 64-byte (512-bit) multicast hash table
sys/bus/u4b/net/if_cue.c:273 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1141 |
High |
7.8 |
Heap OOB write in ci_setup_default_dpm_tables: VBIOS counts index fixed-size dpm_levels[8] unchecked
sys/dev/drm/amd/amdgpu/ci_dpm.c:3593 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1142 |
High |
7.8 |
Heap OOB write in ci_populate_smc_uvd/vce/acp/samu_level: VBIOS counts index fixed-size SMU7 level arrays unchecked
sys/dev/drm/amd/amdgpu/ci_dpm.c:2791 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1146 |
High |
7.8 |
i915_gem_fault missing offset bounds check and partial-view GMADR misaddressing allow cross-object GPU memory read/write
sys/dev/drm/i915/i915_gem.c:2229 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1149 |
High |
7.8 |
Heap OOB write in SMC UVD/VCE/ACP/SAMU level population from unbounded VBIOS count
sys/dev/drm/radeon/ci_dpm.c:2689 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1150 |
High |
7.8 |
Heap OOB write in ci_setup_default_dpm_tables from unbounded VBIOS dependency-table counts
sys/dev/drm/radeon/ci_dpm.c:3514 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1166 |
High |
7.8 |
Heap overflow: unvalidated VBIOS dependency-table count overflows fixed dpm_levels[8] array
sys/dev/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:784 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1172 |
High |
7.8 |
LSI v2 parser: OOB write on static ata_raid_arrays[] via unvalidated meta->raid_number
sys/dev/disk/nata/ata-raid.c:2802 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1189 |
High |
7.8 |
ciss_notify_logical: unbounded bus/target from controller notify event yields kernel OOB read/write
sys/dev/raid/ciss/ciss.c:3931 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1190 |
High |
7.8 |
ciss_init_logical: unbounded CISS_LUN_TO_BUS/TARGET at attach yields kernel OOB write of pointers and objects
sys/dev/raid/ciss/ciss.c:1386 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1191 |
High |
7.8 |
ciss_cam_complete: controller-supplied sense_length overflows fixed-size csio->sense_data on CHECK_CONDITION
sys/dev/raid/ciss/ciss.c:3248 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1198 |
High |
7.8 |
Heap buffer overflow via state_index/i index mismatch in radeon_atombios_parse_power_table_6
sys/dev/drm/radeon/radeon_atombios.c:2704 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1209 |
High |
7.8 |
r100_packet3_load_vbpntr unsigned underflow on c==0 yields unbounded heap OOB writes via CS ioctl
sys/dev/drm/radeon/r100.c:1315 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1258 |
High |
7.8 |
Heap buffer overflow / OOB read in MFI_CMD and MFI_LINUX_CMD_2 ioctl SGL copyin/copyout
sys/dev/raid/mfi/mfi.c:2991 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1271 |
High |
7.8 |
VBIOS-controlled mm_dep_table->count drives heap overflow in UVD/VCE/ACP SMC level population
sys/dev/drm/amd/powerplay/smumgr/tonga_smumgr.c:1320 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1272 |
High |
7.8 |
VBIOS-controlled vdd_dep_on_sclk->count drives Sclk_voltageOffset[8] heap overflow in clock stretcher
sys/dev/drm/amd/powerplay/smumgr/tonga_smumgr.c:1584 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1282 |
High |
7.8 |
OOB heap write via unchecked firmware-controlled DeviceIndex in _mapping_process_dpm_pg0
sys/dev/raid/mpr/mpr_mapping.c:2251 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1283 |
High |
7.8 |
OOB heap write via unsigned underflow in slot arithmetic in _mapping_add_new_device/_mapping_add_new_pcie_device
sys/dev/raid/mpr/mpr_mapping.c:1637 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1284 |
High |
7.8 |
Unbounded scatter-gather loop overflows pmap->psg[17], tmpSg[512] stack, and PRD heap table
sys/dev/raid/hptmv/entry.c:2800 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1311 |
High |
7.8 |
Stack buffer overflow in hptiop_post_req_itl via unbounded SG list (HIGH_MEM_ACESS path)
sys/dev/raid/hptiop/hptiop.c:2417 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1337 |
High |
7.8 |
Use-after-free write in chn_write (and UAF read in chn_read) via concurrent chn_resizebuf during uiomove unlock window
sys/dev/sound/pcm/channel.c:502 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1340 |
High |
7.8 |
u32 integer overflow in CB/DB size validation bypasses BO bounds check (cross-process GPU memory corruption)
sys/dev/drm/radeon/r600_cs.c:430 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1342 |
High |
7.8 |
r600_dma_cs_parse reads/writes IB past length_dw (heap OOB via DMA packet at IB end)
sys/dev/drm/radeon/r600_cs.c:2388 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1374 |
High |
7.8 |
Unvalidated firmware DeviceIndex in _mapping_process_dpm_pg0 causes heap OOB write into mapping_table
sys/dev/raid/mps/mps_mapping.c:1495 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1375 |
High |
7.8 |
Unvalidated slot arithmetic in topology-event handling causes heap OOB write (underflow + num_slots overflow)
sys/dev/raid/mps/mps_mapping.c:968 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1442 |
High |
7.8 |
INQUIRY TRIM status writes past short inquiry buffer (heap overflow during DV probe)
sys/dev/disk/ahci/ahci_cam.c:1134 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1470 |
High |
7.8 |
VBIOS-supplied table offsets never validated against firmware image size
sys/dev/drm/amd/powerplay/hwmgr/processpptables.c:61 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1534 |
High |
7.8 |
Unbounded recursion in atom_op_calltable causes kernel stack overflow
sys/dev/drm/radeon/atom.c:624 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1535 |
High |
7.8 |
Integer overflow in FB scratch bounds check enables heap OOB read/write
sys/dev/drm/radeon/atom.c:281 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1536 |
High |
7.8 |
Unbounded PS operand index causes kernel stack OOB read/write via caller buffer
sys/dev/drm/radeon/atom.c:224 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1542 |
High |
7.8 |
amdgpu atom_op_calltable unbounded recursion causes kernel stack overflow
sys/dev/drm/amd/amdgpu/atom.c:610 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1543 |
High |
7.8 |
amdgpu atom FB scratch bounds check integer overflow enables heap OOB read/write
sys/dev/drm/amd/amdgpu/atom.c:270 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1544 |
High |
7.8 |
amdgpu atom PS operand index unbounded -> kernel stack OOB read/write via caller buffer
sys/dev/drm/amd/amdgpu/atom.c:213 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1556 |
High |
7.8 |
mps_config_get_raid_volume_pg0 missing MIN() guard on final bcopy β heap overflow from firmware-supplied PageLength
sys/dev/raid/mps/mps_config.c:1084 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1557 |
High |
7.8 |
mps_wd_config_pages writes DD_column_map via firmware-supplied PhysDiskMap with no bounds check β heap OOB write past end of mps_softc
sys/dev/raid/mps/mps_config.c:460 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1574 |
High |
7.8 |
Heap OOB write in get_vddc_lookup_table: buffer sized for 16 records, loop walks up to 255
sys/dev/drm/amd/powerplay/hwmgr/process_pptables_v1_0.c:168 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1585 |
High |
7.8 |
Use-after-free of fbc->compressed_llb on second cleanup / driver unload
sys/dev/drm/i915/intel_fbc.c:559 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1586 |
High |
7.8 |
Heap buffer overflow in get_vddc_lookup_table: VBIOS ucNumEntries > caller max_levels writes ~2.5KB past slab object
sys/dev/drm/amd/powerplay/hwmgr/vega10_processpptables.c:1026 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1606 |
High |
7.8 |
Kernel heap overflow via fixed-size cmi_order[128] array in /dev/hpcmi read path
sys/dev/acpica/acpi_hp/acpi_hp.c:147 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1662 |
High |
7.8 |
i915: GEM context destroy ioctl double-close race -> refcount underflow -> UAF
sys/dev/drm/i915/i915_gem_context.c:278 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1664 |
High |
7.8 |
twa: unbounded kvsprintf+strcpy into 98-byte parameter_data -> stack/heap overflow + format-string
sys/dev/raid/twa/tw_cl_misc.c:505 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1676 |
High |
7.8 |
nvme: unvalidated device-controlled indices in nvme_poll_completions -> OOB write + RIP hijack
sys/dev/disk/nvme/nvme.c:713 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1692 |
High |
7.8 |
amdgpu_debugfs: heap OOB read+write in amdgpu_debugfs_gpr_read via byte-offset/dword-index unit confusion
sys/dev/drm/amd/amdgpu/amdgpu_debugfs.c:701 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1719 |
High |
7.8 |
amdgpu_gem: GEM_VA ioctl passes unchecked offset_in_bo/map_size into amdgpu_vm_bo_map enabling offset+size wrap to corrupt GPU page tables
sys/dev/drm/amd/amdgpu/amdgpu_gem.c:644 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1753 |
High |
7.8 |
radeon_vce: OOB read and OOB write of IB buffer in cs_parse/cs_reloc via unchecked multi-dword command fields
sys/dev/drm/radeon/radeon_vce.c:565 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1797 |
High |
7.8 |
smu_helper: heap OOB write in phm_get_svi2_*_voltage_table and phm_trim_voltage_table via unchecked VBIOS count
sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c:244 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1805 |
High |
7.8 |
bktr_os: bktr_filter_detach calls knote_insert instead of knote_remove -> UAF via corrupted klist
sys/dev/video/bktr/bktr_os.c:724 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1880 |
High |
7.8 |
Heap OOB write in oce_hw_update_multicast: loop guard uses 64 but mac[] array has 32 slots
sys/dev/netif/oce/oce_hw.c:568 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1881 |
High |
7.8 |
UAF / double-free in reservation RCU readers via unsafe dma_fence_get_rcu shim and non-RCU dma_fence_free
sys/dev/drm/linux_reservation.c:357 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1891 |
High |
7.8 |
Unbounded ctlr->channels from AHCI CAP/PI registers: source-side of interrupt[] OOB (variant of DF-1716)
sys/dev/disk/nata/chipsets/ata-ahci.c:101 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1912 |
High |
7.8 |
mdstrategy_preload uses stale buf pointer across biodone: UAF + OOB bcopy on preloaded md image
sys/dev/disk/md/md.c:349 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1917 |
High |
7.8 |
Unbounded sgl_off yields OOB SGE write into cmd->frame DMA allocation
sys/dev/raid/mrsas/mrsas_ioctl.c:219 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1918 |
High |
7.8 |
Unbounded sense_off yields OOB pointer-sized write into cmd->frame
sys/dev/raid/mrsas/mrsas_ioctl.c:266 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1919 |
High |
7.8 |
Integer truncation size_t->int in iov_len splits DMA alloc size from copyin size: heap overflow
sys/dev/raid/mrsas/mrsas_ioctl.c:161 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2002 |
High |
7.8 |
Forged EEPROM pwr_table_offset drives OOB write/read in ar9280AdjustPDADCValues (up to 64KB overflow)
sys/dev/netif/ath/ath_hal/ar9002/ar9280_olc.c:188 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2028 |
High |
7.8 |
Use-after-free in GDT_IOCTL_GENERAL: framework-owned ioctl buffer queued into persistent controller command list
sys/dev/raid/iir/iir_ctrl.c:245 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2051 |
High |
7.8 |
DFS_GET_THRESH writes sizeof(HAL_PHYERR_PARAM) into outdata without validating allocation or size (heap overflow / NULL-deref write)
sys/dev/netif/ath/ath_dfs/null/dfs_null.c:268 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2059 |
High |
7.8 |
Missing privilege check on SIOCGATHDIAG/SIOCGATHPHYERR/SIOCGATHSPECTRAL exposes raw HAL diagnostic surface to unprivileged users
sys/dev/netif/ath/ath/if_ath_ioctl.c:299 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2079 |
High |
7.8 |
Heap buffer overflow and NULL-deref panic in SPECTRAL_CONTROL_GET_PARAMS due to missing output-buffer validation
sys/dev/netif/ath/ath/if_ath_spectral.c:218 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2145 |
High |
7.8 |
tasklet_kill() UAF: premature return on TASKLET_STATE_RUN leaves dangling tasklet_entry; runner later calls t->func from freed memory
sys/dev/drm/linux_tasklet.c:170 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2174 |
High |
7.8 |
__hrtimer_task epilogue unconditionally clears timer->active, defeating callback re-arm via hrtimer_start + NORESTART β un-cancellable timer leading to UAF
sys/dev/drm/linux_hrtimer.c:59 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2195 |
High |
7.8 |
kthread_stop() frees the LWKT thread via a bogus timed tsleep, causing use-after-free / double-free of struct thread
sys/dev/drm/linux_kthread.c:97 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2268 |
High |
7.8 |
Heap overflow in cdcheckmedia via uncapped num_entries from device-supplied TOC header
sys/bus/cam/scsi/scsi_cd.c:2947 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2282 |
High |
7.8 |
sgopen: missing cam_periph_acquire plus cam_periph_unlock-without-lock in securelevel path (lock/refcount protocol violation; refcount underflow->UAF)
sys/bus/cam/scsi/scsi_sg.c:385 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2332 |
High |
7.8 |
Stack buffer overflow in ACPI SMBus handler: buf[32] vs attacker-controlled GSBUS lengths
sys/bus/smbus/smbacpi/smbacpi.c:137 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2339 |
High |
7.8 |
Stack buffer overflow in cue_setmulti: 8-byte hashtbl indexed by 9-bit multicast hash
sys/bus/u4b/net/if_cue.c:273 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2346 |
High |
7.8 |
SIGIO recipient stored as raw unreferenced struct proc pointer -> use-after-free after fork+exit
sys/bus/u4b/usb_dev.c:1044 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2389 |
High |
7.8 |
Heap out-of-bounds write in link_add_prs when _PRS has more IRQ resources than _CRS
sys/dev/acpica/acpi_pci_link.c:311 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2424 |
High |
7.8 |
Scatter/gather list heap overflow via unchecked sglist_cnt in amdexecutesrb
sys/dev/disk/amd/amd.c:455 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2428 |
High |
7.8 |
Unbounded scatter/gather copy in btexecuteccb via CAM_SCATTER_VALID CCB (kernel heap overflow)
sys/dev/disk/buslogic/bt.c:1055 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2446 |
High |
7.8 |
dm_message_ioctl frees and dereferences an uninitialized stack msg pointer
sys/dev/disk/dm/dm_ioctl.c:1006 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2488 |
High |
7.8 |
Stack buffer overflow/underflow in ad_describe via unterminated model string
sys/dev/disk/nata/ata-disk.c:508 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2493 |
High |
7.8 |
Heap OOB write via untrusted disk index in ATA RAID metadata parsers
sys/dev/disk/nata/ata-raid.c:1806 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2494 |
High |
7.8 |
BSS out-of-bounds write on global ata_raid_arrays[] via untrusted LSI v2 raid_number
sys/dev/disk/nata/ata-raid.c:2802 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2495 |
High |
7.8 |
Kernel stack/heap OOB write via untrusted total_disks in ata_raid_create and ata_raid_status ioctls
sys/dev/disk/nata/ata-raid.c:1051 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2506 |
High |
7.8 |
TOCTOU kernel heap overflow in acd_send_cue via double-fetch of cuesheet->len
sys/dev/disk/nata/atapi-cd.c:1318 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2510 |
High |
7.8 |
Unbounded ctlr->channels (up to 32) overflows the fixed interrupt[8] dispatch array causing heap OOB write of function pointers and OOB indirect call on every IRQ
sys/dev/disk/nata/chipsets/ata-ahci.c:101 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2517 |
High |
7.8 |
Heap OOB write in sili_load_prb_callback via unchecked DMA segment count
sys/dev/disk/sili/sili.c:1245 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2520 |
High |
7.8 |
trm_ExecuteSRB writes user-controlled nseg SG entries into 32-slot pSRBSGL with no bounds check (heap overflow via pass(4) SCATTER_VALID)
sys/dev/disk/trm/trm.c:433 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2521 |
High |
7.8 |
trm_action bcopy of user-controlled cdb_len into 12-byte CmdBlock overflows the SRB struct (pass(4)-reachable heap corruption)
sys/dev/disk/trm/trm.c:591 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2580 |
High |
7.8 |
Missing bounds check on table id gives controlled kernel heap OOB read/write on every ipfw3 table opcode
sys/net/ipfw3_basic/ip_fw3_table.c:92 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0547 |
Medium |
7.8 |
Ring cleanup trusts userspace-writable buf_idx: cross-adapter double-free / buffer aliasing
sys/net/netmap/netmap_mem2.c:995 |
corruption |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1235 |
Medium |
7.8 |
Unbounded CDB copy into fixed 12-byte SRB CmdBlock overwrites SRB pointer fields
sys/dev/disk/trm/trm.c:591 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1454 |
Medium |
7.8 |
Heap buffer overflow in autosense data copy - missing sizeof(sense_data) bound
sys/dev/virtual/vmware/pvscsi/pvscsi.c:945 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1848 |
Medium |
7.8 |
ENA LLQ bounce buffer heap overflow via descs_left_in_line u16 underflow when device reports descs_num_before_header=0
sys/dev/virtual/amazon/ena/ena-com/ena_eth_com.c:150 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2469 |
Medium |
7.8 |
Heap OOB write via double channel offset in RQCS_SYNCXFER_FAILED status handler
sys/dev/disk/isp/isp.c:6282 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2492 |
Medium |
7.8 |
OOB heap write/read on interrupt[8] via AHCI controllers with >8 ports
sys/dev/disk/nata/ata-pci.c:383 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1046 |
High |
7.6 |
uint8_t loop-counter wrap in uvc_ctrl_init_dev causes unbounded kernel heap overflow from malicious USB descriptor
sys/bus/u4b/uvc/uvc_ctrls.c:917 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2490 |
High |
7.6 |
ATAPI PIO heap OOB write/read via unvalidated device byte_count_limit
sys/dev/disk/nata/ata-lowlevel.c:329 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0017 |
High |
7.5 |
Unbounded recursion in kdmsg_simulate_failure overflows the kernel thread stack (remote DoS)
sys/kern/kern_dmsg.c:1321 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0417 |
High |
7.5 |
Use-after-free race on nd_defrouter: defrtrlist_update returns unreferenced pointer consumed unlocked across RA prefix loop
sys/netinet6/nd6_rtr.c:285 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0580 |
High |
7.5 |
ieee80211_defrag UAF/dangling-pointer: DragonFly m_cat frees fragment but code reads wh + m_pkthdr.len after
sys/netproto/802_11/wlan/ieee80211_input.c:248 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0617 |
High |
7.5 |
Use-after-free in ng_ether_rcv_upper: bridge_input_p() return value discarded, freed mbuf fed to ether_demux_oncpu
sys/netgraph7/ether/ng_ether.c:657 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0740 |
High |
7.5 |
gre_input2 missing packet length validation β m_len/m_pkthdr.len underflow from crafted GRE option flags (no checksum verification)
sys/netinet/ip_gre.c:148 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0945 |
High |
7.5 |
swapoff_one mutates global swapblist without vm_token, racing with concurrent page-out (blist corruption / UAF on resize)
sys/vm/swap_pager.c:536 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1184 |
High |
7.5 |
Heap buffer overflow in arcmsr_Read_iop_rqbuffer_data_D: 128-byte kmalloc overwritten by firmware-controlled data_len
sys/dev/raid/arcmsr/arcmsr.c:1446 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1381 |
High |
7.5 |
vge_newbuf RX-ring refill loop writes OOB when idx<VGE_RXCHUNK due to non-modular signed decrement
sys/dev/netif/vge/if_vge.c:1162 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2358 |
High |
7.5 |
Heap buffer overflow in USB RX frame aggregation: m_getcl (2048B) too small for m_copydata of up to 4080B
sys/bus/u4b/wlan/if_run.c:3013 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0533 |
Medium |
7.5 |
Unsynchronized sc->inq/outq between hard ISR and netgraph forward: ifqueue corruption / UAF
sys/netgraph7/bluetooth/drivers/bt3c/ng_bt3c_pccard.c:939 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0581 |
Medium |
7.5 |
ieee80211_setup_rates trusts attacker-controlled IE length byte: latent heap overflow of rs_rates[15]
sys/netproto/802_11/wlan/ieee80211_input.c:420 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0730 |
Medium |
7.5 |
ra_rate_thresh[3][8] heap OOB read/write β indexed up to rs_nrates-1(14) from remote peer rates IE
sys/netproto/802_11/wlan/ieee80211_rssadapt.c:241 |
heap-oob-rw (latent) |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1060 |
Medium |
7.5 |
FW_GTPMAP bcopy uses (topology_map->crc_len + 1) * 4 as the count β attacker-inflatable crc_len drives unbounded kernel OOB read up to 256 KB
sys/bus/firewire/fwdev.c:657 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1249 |
Medium |
7.5 |
dc_pnic_rx_bug_war unbounded copy loop - heap overflow if PNIC produces >5 descriptors
sys/dev/netif/dc/if_dc.c:2414 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1352 |
Medium |
7.5 |
Heap overflow via unbounded device-supplied event_info_size in virtio-scsi
sys/dev/virtual/virtio/scsi/virtio_scsi.c:301 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2285 |
Medium |
7.5 |
Use-after-free in target teardown: fixed 500ms sleep before kfree(softc) does not drain in-flight CTIOs
sys/bus/cam/scsi/scsi_targ_bh.c:402 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0572 |
High |
7.4 |
Per-CPU cfg_nat pointer cached in shared firewall rule: cross-CPU RB-tree races -> corruption
sys/net/ipfw3_nat/ip_fw3_nat.c:158 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1236 |
High |
7.4 |
Extended SCSI message accumulation overflows MsgInBuf[6] into adjacent SRB pointer fields
sys/dev/disk/trm/trm.c:1832 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1395 |
High |
7.4 |
Firmware-controlled size_of_struct in oce_read_mac_addr drives unbounded bcopy (heap overflow into softc)
sys/dev/netif/oce/oce_mbox.c:447 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1716 |
High |
7.4 |
ata-pci: out-of-bounds interrupt[] write/read when AHCI reports >8 channels -> kernel heap corruption + RIP control on next IRQ
sys/dev/disk/nata/ata-pci.c:230 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1737 |
High |
7.4 |
ata-lowlevel: heap OOB write via unchecked ATAPI byte-count register polluting request->donecount
sys/dev/disk/nata/ata-lowlevel.c:329 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0083 |
Medium |
7.4 |
OOB write into cpu_topology_nodes[MAXCPU] during boot topology construction on high-CPU-count systems
sys/kern/subr_cpu_topology.c:115 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1385 |
Medium |
7.4 |
Unbounded VBIOS num_entries overflows MC register table arrays (heap OOB write+read)
sys/dev/drm/radeon/cypress_dpm.c:1052 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1950 |
Medium |
7.4 |
Unvalidated ACPI ATRM return object: heap buffer overflow and type confusion in amdgpu_atrm_call
sys/dev/drm/amd/amdgpu/amdgpu_bios.c:264 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2484 |
Medium |
7.4 |
Untrusted IOC-supplied indices index raid_disks/raid_volumes arrays without bounds checks (OOB read/write of kernel heap)
sys/dev/disk/mpt/mpt_raid.c:414 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0074 |
High |
7.3 |
DIOCGSLICEINFO heap buffer overflow via crafted GPT disk image (dss_nslices > MAX_SLICES)
sys/kern/subr_diskslice.c:556 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0795 |
High |
7.3 |
Stack buffer overflow in VFAT long-filename reassembly via crafted FAT directory entry β no kernel stack canary
sys/vfs/msdosfs/msdosfs_vnops.c:1662 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0806 |
High |
7.3 |
dirfs_readlink off-by-one heap overflow and OOB read via truncated symlink target
sys/vfs/dirfs/dirfs_vnops.c:1328 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2060 |
High |
7.3 |
Invalid free / non-heap kfree in ath_ioctl_diag when HAL diagcode replaces result pointer (ATH_DIAG_DYN + HAL_DIAG_REVS/FATALERR)
sys/dev/netif/ath/ath/if_ath_ioctl.c:201 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2322 |
High |
7.3 |
MSI-X table/PBA out-of-bounds MMIO read/write - no BAR-size validation against attacker-controlled table offset and vector count
sys/bus/pci/pci.c:1431 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2356 |
High |
7.3 |
Unvalidated hardware frame length in RX path allows heap OOB read / uninitialized-memory info leak
sys/bus/u4b/wlan/if_rum.c:1146 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2401 |
High |
7.3 |
intel_gtt_insert_page swaps index/physical arguments causing out-of-bounds MMIO write into Intel IGD BAR
sys/dev/agp/intel-gtt.c:1407 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2114 |
Medium |
7.3 |
ata_serialize() clobbers PCI bus pci_devinfo ivar on controller device -- heap OOB read + cross-device PCI config corruption on ATP850R
sys/dev/disk/nata/chipsets/ata-acard.c:206 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2522 |
Medium |
7.3 |
trm_SRBdone auto-sense bcopy uses user-controlled sense_len to copy out of 32-byte DMA slot and into 32-byte csio field (heap OOB read+write via pass(4))
sys/dev/disk/trm/trm.c:2529 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0275 |
Medium |
7.2 |
Heap buffer overflow in WPA/RSN IE construction: variable-length IE written into fixed sizeof(ieee80211_ie_wpa)=100 slot
sys/netproto/802_11/wlan/ieee80211_output.c:1976 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2357 |
Medium |
7.2 |
Wrong TX frame-size bound causes 16-byte overflow of USB DMA buffer
sys/bus/u4b/wlan/if_rum.c:438 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0638 |
High |
7.1 |
Decompress path avail_in integer underflow feeds OOB heap reads to inflate() from crafted PPP frame
sys/netgraph7/deflate/ng_deflate.c:539 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0700 |
High |
7.1 |
User-controlled edge count not bounded by MAX_EDGES β BSS OOB array write/read on centre_socks[]
sys/net/ipfw3_basic/ip_fw3_sync.c:143 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0701 |
High |
7.1 |
Heap OOB read in centre_conf bcopy and integer overflow in size math
sys/net/ipfw3_basic/ip_fw3_sync.c:143 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0702 |
High |
7.1 |
Mbuf UAF and double-free in centre_test and send_state (sosend consumes m, loop reuses it)
sys/net/ipfw3_basic/ip_fw3_sync.c:339 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0766 |
High |
7.1 |
Heap OOB write in NFS READDIR/READDIRPLUS reply XDR null-padding β missing nfsm_clget before pad bytes
sys/vfs/nfs/nfs_serv.c:3186 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-0781 |
High |
7.1 |
Kernel heap info leak via unvalidated namelen in fuse_vop_readdir β bcopy past reply buffer + len underflow wild ptr
sys/vfs/fuse/fuse_vnops.c:1066 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0811 |
High |
7.1 |
OOB kernel heap write in ext2_cg_block_bitmap_init via buggy ext2_block_in_group divisor β setbit at wild offset
sys/vfs/ext2fs/ext2_alloc.c:856 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0820 |
High |
7.1 |
ffs_mountfs performs no validation of superblock geometry (fs_ncg/fs_ipg/fs_fpg/fs_fsize/fs_frag/fs_sbsize) β crafted image causes div-by-zero/infinite-loop/heap-overflow/bzero-corruption/OOB-read
sys/vfs/ufs/ffs_vfsops.c:642 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0831 |
High |
7.1 |
Heap overflow in udf_getfid via negative frag_size from 4-byte FID alignment β size_t(-3) bcopy
sys/vfs/udf/udf_vnops.c:543 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0888 |
High |
7.1 |
ext2_indirtrunc bzero heap OOB write via ftruncate past indirect-block structural limit
sys/vfs/ext2fs/ext2_inode.c:138 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1179 |
High |
7.1 |
Heap OOB write in DPM-table population: unbounded VBIOS ucNumEntries overflows dpm_levels[8]
sys/dev/drm/amd/powerplay/hwmgr/vega10_hwmgr.c:1200 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1180 |
High |
7.1 |
Heap OOB write in voltage-table builders: unbounded dep_table->count overflows entries[32]
sys/dev/drm/amd/powerplay/hwmgr/vega10_hwmgr.c:1026 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1227 |
High |
7.1 |
mpr_build_nvme_prp heap overflow via unbounded user-supplied data length
sys/dev/raid/mpr/mpr.c:2716 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1259 |
High |
7.1 |
mfi_stp_cmd unbounded SGE loop corrupts mfi_softc via size-[2] DMA arrays and STP frame SGL
sys/dev/raid/mfi/mfi.c:2724 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1754 |
High |
7.1 |
radeon_vce: OOB read of p->relocs[] and wild pointer deref via non-multiple-of-4 chunk_relocs length_dw
sys/dev/drm/radeon/radeon_vce.c:470 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1795 |
High |
7.1 |
plip: heap overflow / OOB-read in lp_intr racing SIOCSIFMTU buffer swap
sys/dev/netif/plip/if_plip.c:348 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1818 |
High |
7.1 |
sckmsrndr: fill_rect24 slow path over-advances draw_pos by 3*width per row writing past framebuffer mapping
sys/dev/misc/syscons/sckmsrndr.c:438 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2133 |
High |
7.1 |
dma_buf_export never initializes dmabuf->resv; GPU drivers dereference uninitialized slab pointer
sys/dev/drm/linux_dma-buf.c:127 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2419 |
High |
7.1 |
Heap OOB write in INQUIRY handler when data buffer length is 36..95 bytes
sys/dev/disk/ahci/ahci_cam.c:1109 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0706 |
Medium |
7.1 |
Lifecycle bugs in edge handler cleanup: UAF on replaced edge_sock, missing thread join, soclose+sofree imbalance
sys/net/ipfw3_basic/ip_fw3_sync.c:195 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0998 |
Medium |
7.1 |
TX DMA buffer overflow: mbuf length clamp uses wrong bound -> 16-byte heap overwrite past USB DMA buffer
sys/bus/u4b/wlan/if_rum.c:438 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1197 |
Medium |
7.1 |
2-byte DMA heap overflow in RX buffer when ETHER_ALIGN applied with jumbo MTU
sys/dev/netif/emx/if_emx.c:2918 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1237 |
Medium |
7.1 |
Scatter/gather list copy has no bounds vs the 32-entry hardware SG buffer
sys/dev/disk/trm/trm.c:434 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1476 |
Medium |
7.1 |
intel_gtt_insert_page swaps (index, physical) arguments to install_gtt_pte causing OOB MMIO write past BAR
sys/dev/agp/intel-gtt.c:1406 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1551 |
Medium |
7.1 |
snread subtracts 6 from u_short packet_length with no bound: underflow -> ~63KB kernel heap overflow write via insw into 2KB mbuf cluster
sys/dev/netif/sn/if_sn.c:983 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2142 |
Medium |
7.1 |
Unbounded wire-controlled pos in dcons_checkc allows kernel OOB read / panic via FireWire peer
sys/dev/misc/dcons/dcons.c:96 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0315 |
High |
7.0 |
UAF: wg_peer_destroy frees peer struct while data-plane paths access it without peer refcount
sys/net/wg/if_wg.c:589 |
none observed dynamically (code-level UAF real + reachable; race window too narrow to panic on GENERIC) |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0590 |
High |
7.0 |
No serialization of bridge state in legacy netgraph/ng_bridge -- UAF in rehash, OOB heap write in GET_TABLE, deterministic KASSERT panics under concurrent traffic
sys/netgraph/bridge/ng_bridge.c:297 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0636 |
High |
7.0 |
ngt_rcvdata accesses sc->outq without tp->t_token, racing with ngt_start (UAF write / queue corruption)
sys/netgraph7/tty/ng_tty.c:591 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0691 |
High |
7.0 |
UAF / NULL-deref in mld6_input MLD_LISTENER_QUERY path: in6m freed concurrently with iteration
sys/netinet6/mld6.c:280 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0692 |
High |
7.0 |
UAF and unsynchronized list walk in mld6_fasttimeo over global in6_multihead
sys/netinet6/mld6.c:382 |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0745 |
High |
7.0 |
Dead callout_active guard + callback-owns-free design causes double-free / TAILQ corruption race in l2cap_request_free
sys/netbt/l2cap_misc.c:168 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0843 |
High |
7.0 |
Missing global lock on dirhash list enables use-after-free and list corruption across concurrent directory operations
sys/vfs/ufs/ufs_dirhash.c:302 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0917 |
High |
7.0 |
Use-after-free on fuse_ipc during tx completion (daemon read/write drops lock before fip access)
sys/vfs/fuse/fuse_ipc.c:112 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0925 |
High |
7.0 |
UAF in fuse_alloc_node races vnode reclaim (no refcount on fuse_node)
sys/vfs/fuse/fuse_node.c:106 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1136 |
High |
7.0 |
Heap buffer overflow in si_get_svi2_voltage_table: unbounded VBIOS count writes past entries[32]
sys/dev/drm/radeon/si_dpm.c:3939 |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1192 |
High |
7.0 |
ciss_filter_physical: bus=CISS_EXTRA_BUS2(ea)-1 can be -1 -> OOB pointer write via ciss_physical[-1][target]
sys/dev/raid/ciss/ciss.c:1551 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1246 |
High |
7.0 |
OOB read/write past IB end in evergreen_dma_cs_parse (no per-packet bounds check)
sys/dev/drm/radeon/evergreen_cs.c:2806 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1296 |
High |
7.0 |
Unchecked VBIOS UVD/VCE/ACP level counts cause heap OOB write past fixed-size SMC arrays
sys/dev/drm/amd/powerplay/smumgr/ci_smumgr.c:1525 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1298 |
High |
7.0 |
Heap overflow in update_slot_layout_info via unchecked ucConnNum
sys/dev/drm/amd/display/dc/bios/bios_parser.c:2634 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1305 |
High |
7.0 |
Heap OOB write/read in kv_init_graphics_levels via unbounded VBIOS table->count
sys/dev/drm/radeon/kv_dpm.c:2355 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1416 |
High |
7.0 |
Heap OOB write in power-state callback via unbounded ucNumDPMLevels
sys/dev/drm/amd/powerplay/hwmgr/smu8_hwmgr.c:1355 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1487 |
High |
7.0 |
Out-of-bounds descriptor write in wb_encap when TX chain fills all 16 fragments under minimum frame length
sys/dev/netif/wb/if_wb.c:1221 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1640 |
High |
7.0 |
Use-after-free + double-free of DM_TABLE_PARAMS string across table entries
sys/dev/disk/dm/dm_ioctl.c:688 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1749 |
High |
7.0 |
amdgpu_acpi: UAF - ACPI notify handler never removed on device detach
sys/dev/drm/amd/amdgpu/amdgpu_acpi.c:369 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1843 |
High |
7.0 |
UAF in device-mapper open path: dmopen releases busy reference before open lifetime, racing dm_dev_remove_ioctl
sys/dev/disk/dm/device-mapper.c:209 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1863 |
High |
7.0 |
TOCTOU in amdgpu_ctx_add_fence: concurrent CS double dma_fence_put -> UAF/double-free
sys/dev/drm/amd/amdgpu/amdgpu_ctx.c:445 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1927 |
High |
7.0 |
UAF race in drm_sched_entity_fini: broken kthread_park allows concurrent scheduler pop_job during entity teardown
sys/dev/drm/scheduler/sched_entity.c:273 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2146 |
High |
7.0 |
Unbounded AUX reply byte count causes heap/stack OOB write on DP read path
sys/dev/drm/radeon/radeon_dp_auxch.c:177 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2188 |
High |
7.0 |
vmap_list traversed and mutated without consistent lock; races yield list corruption UAF and double-free
sys/dev/drm/linux_vmalloc.c:64 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2206 |
High |
7.0 |
iounmap() walks the global iomap_list without iomap_lock, racing concurrent inserters/removers into UAF read, double-free and NULL-deref panic
sys/dev/drm/linux_iomapping.c:68 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2292 |
High |
7.0 |
FW_ASYREQ response copy overflows ioctl heap buffer with oversized FireWire RRESB payload
sys/bus/firewire/fwdev.c:576 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2298 |
High |
7.0 |
Heap OOB read/write via zero-length segment array from integer overflow in n
sys/bus/firewire/fwdma.c:145 |
memcorrupt: demonstrated OOB-read-to-arbitrary-write through production fw_write (write target = groom-controlled pointer read 8 bytes past a 32-byte kmalloc; content = attacker iso payload, length up to u16 65535 per packet); fw_read is the arbitrary-read mirror; ungroomed firing = wild write/panic. uid=0 chain not completed -- entry requires a FireWire controller's /dev/fw* node (0660 root:operator), absent in QEMU; same evidence-class standard as DF-5413/DF-5548/DF-5613. |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2435 |
High |
7.0 |
Heap buffer overflow in status_str via ksprintf of negative strtouq offsets
sys/dev/disk/dm/crypt/dm_target_crypt.c:462 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2443 |
High |
7.0 |
UAF / double-free race in dm_dev_remove lifecycle (no-ref-held precondition)
sys/dev/disk/dm/dm_dev.c:65 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2447 |
High |
7.0 |
dm_dev_remove_ioctl / dm_dev_resume_ioctl use-after-free: dmv operated on after dm_dev_unbusy drops the last reference
sys/dev/disk/dm/dm_ioctl.c:349 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0003 |
Medium |
7.0 |
Negative unit number in devclass_alloc_unit causes heap OOB write via dc->devices[]
sys/kern/subr_bus.c:1064 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0033 |
Medium |
7.0 |
Unsynchronized fdtol->fdl_refcount ++ / list splice in rfork fdshare path (UAF via refcount race)
sys/kern/kern_fork.c:568 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0420 |
Medium |
7.0 |
Use-after-free in SCO reassembly buffer: sc_isoc_in_buffer retains dangling pointer after mbuf forwarded and realloc fails
sys/netgraph7/bluetooth/drivers/ubt/ng_ubt.c:1103 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0497 |
Medium |
7.0 |
TOCTOU use-after-free on rtentry in ng_btsocket_l2cap_raw_bind: releases rt_lock before storing pointer
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c:690 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0513 |
Medium |
7.0 |
Rule-chain mutation raced with concurrent ip6_fw_chk: lock-free linked list + kfree after crit_exit -> UAF on SMP
sys/net/ip6fw/ip6_fw.c:856 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0521 |
Medium |
7.0 |
PF_LOCAL sockaddr unparse: sun_len<pathoff underflow -> giant bcopy -> stack OOB write (DF-0509 v1 twin)
sys/netgraph/ksocket/ng_ksocket.c:321 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0586 |
Medium |
7.0 |
Lockless global hci_pcb list allows use-after-free during concurrent socket teardown and packet tap
sys/netbt/hci_socket.c:87 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0589 |
Medium |
7.0 |
sc->outq mbuf-queue race in ng_h4: IF_DEQUEUE in ng_h4_start (tty ctx) vs IF_DRAIN in disconnect/shutdown (netgraph ctx); NG_H4_LOCK is only per-CPU crit_enter
sys/netgraph7/bluetooth/drivers/h4/ng_h4.c:88 |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0755 |
Medium |
7.0 |
Unlocked global trace index tcp_debx races into runaway out-of-bounds write (TCPDEBUG-only)
sys/netinet/tcp_debug.c:84 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0774 |
Medium |
7.0 |
Use-after-free in devfs_clone β clone handler freed during lock release window before nhandler call
sys/vfs/devfs/devfs_core.c:2322 |
panic |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-0793 |
Medium |
7.0 |
Use-after-free in async TRIM block-free path β ffs_blkfree stores unrefcounted mount/device pointers in deferred task
sys/vfs/ufs/ffs_alloc.c:1633 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1061 |
Medium |
7.0 |
LOOPRECOVER watchdog silently abandons unacknowledged TLB invalidations, enabling stale-TLB use-after-free / info leak
sys/platform/pc64/x86_64/pmap_inval.c:342 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1153 |
Medium |
7.0 |
Use-after-free in reset functions when kzalloc fails (connector/crtc/plane state)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c:3190 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1289 |
Medium |
7.0 |
Heap overflow of CAM CCB sense buffer from untrusted controller sense_length
sys/dev/raid/mly/mly.c:2356 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1290 |
Medium |
7.0 |
OOB write on softc via untrusted controller event channel/target/lun in mly_process_event
sys/dev/raid/mly/mly.c:1323 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1295 |
Medium |
7.0 |
METEORSSIGNAL stores curproc without reference causing UAF via fork+child-exit+DMA interrupt
sys/dev/video/cxm/cxm.c:2760 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1300 |
Medium |
7.0 |
dc_add_all_planes_for_stream writes plane_states[MAX_SURFACES=3] with unchecked plane_count (dead API, latent stack overflow)
sys/dev/drm/amd/display/dc/core/dc_resource.c:1564 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1358 |
Medium |
7.0 |
Stack buffer overflow in amr_quartz_get_work via controller-supplied completion count
sys/dev/raid/amr/amr.c:2095 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1366 |
Medium |
7.0 |
Heap OOB write in vegam_populate_smc_vce_level via unbounded VBIOS mm_dep_table->count
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:1217 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1367 |
Medium |
7.0 |
Heap OOB write in vegam_populate_smc_uvd_level via unbounded VBIOS mm_dep_table->count
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:1330 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1368 |
Medium |
7.0 |
Heap+stack OOB writes in clock-stretcher/AVFS/CAC table population via unbounded VBIOS counts
sys/dev/drm/amd/powerplay/smumgr/vegam_smumgr.c:515 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1411 |
Medium |
7.0 |
DragonFly sysctl backlight handler captures drm_connector_state before modeset lock enabling UAF
sys/dev/drm/i915/intel_panel.c:1815 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1417 |
Medium |
7.0 |
Stack/heap OOB write in smu8_get_clock_by_type from unbounded SMU-derived count
sys/dev/drm/amd/powerplay/hwmgr/smu8_hwmgr.c:1613 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1449 |
Medium |
7.0 |
Unvalidated firmware-reported disk/volume indices cause OOB read/write in RAID arrays and IOC page buffers
sys/dev/disk/mpt/mpt_raid.c:414 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1758 |
Medium |
7.0 |
ips: card-controlled command_id indexes commandarray[] with no bounds check in both interrupt handlers -> OOB r/w + indirect call
sys/dev/raid/ips/ips.c:567 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1911 |
Medium |
7.0 |
r600_audio_update_hdmi walks encoder_list without mode_config.mutex: UAF race vs modeset/unload (variant of DF-1878)
sys/dev/drm/radeon/r600_hdmi.c:114 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1959 |
Medium |
7.0 |
dm_dev_remove use-after-free via concurrent stale-pointer removal: operator-group to root heap corruption
sys/dev/disk/dm/dm_dev.c:305 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2041 |
Medium |
7.0 |
Imported GEM obj->resv set to uninitialized dma_buf->resv heap memory
sys/dev/drm/i915/i915_gem_dmabuf.c:322 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2072 |
Medium |
7.0 |
Signed table_id bounds check allows OOB heap read/write in SMU10 table copy
sys/dev/drm/amd/powerplay/smumgr/smu10_smumgr.c:116 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2086 |
Medium |
7.0 |
Double-free of ch->dma in ata_dmaalloc error path
sys/dev/disk/nata/ata-dma.c:151 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2125 |
Medium |
7.0 |
Lockless segment read in vm_phys_fictitious_to_vm_page races unreg->kfree yielding NULL-deref panic or UAF of vm_page array
sys/dev/drm/drm_vm.c:152 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2128 |
Medium |
7.0 |
Multi-page sg entry OOB read/write in sg_pcopy_from_buffer / sg_pcopy_to_buffer via DMAP
sys/dev/drm/linux_scatterlist.c:167 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2189 |
Medium |
7.0 |
vmap() computes allocation size in 32-bit arithmetic; large count overflows and maps count pages into undersized VA
sys/dev/drm/linux_vmalloc.c:55 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2191 |
Medium |
7.0 |
UAF: sio_pccard_detach does not stop/drain dtr_ch and busy_ch callouts before softc is freed
sys/dev/serial/sio/sio_pccard.c:117 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2304 |
Medium |
7.0 |
Double-free / UAF in fwohci_pci_add_child error path: detach deletes child then caller deletes it again
sys/bus/firewire/fwohci_pci.c:446 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2331 |
Medium |
7.0 |
Slave-controlled block-read byte count overflows sc->block_data[32] in interrupt handler
sys/bus/smbus/ichsmb/ichsmb.c:575 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2353 |
Medium |
7.0 |
Use-after-free on device disconnect: sc->data freed before /dev/videoX cdev is destroyed
sys/bus/u4b/uvc/uvc_drv.c:2493 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2382 |
Medium |
7.0 |
Heap OOB write in cmi_order[] when BIOS exposes >128 CMI instances
sys/dev/acpica/acpi_hp/acpi_hp.c:1165 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2414 |
Medium |
7.0 |
Unvalidated 32-bit ccb_index read from firmware LRAM used to index ccb_infos[] in all four halt/error paths - OOB read NULL-deref and UAF
sys/dev/disk/advansys/advlib.c:1005 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2453 |
Medium |
7.0 |
Use-after-free of target config in async read iodone callback
sys/dev/disk/dm/flakey/dm_target_flakey.c:303 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2474 |
Medium |
7.0 |
Stale base pointer in isp_pci_mbxdma error cleanup causes kernel-heap multi-free
sys/dev/disk/isp/isp_pci.c:1600 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2552 |
Medium |
7.0 |
Integer overflow in sbuf_extend/sbuf_extendsize yields undersized reallocation and ~2GiB heap overflow
sys/kern/subr_sbuf.c:131 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2553 |
Medium |
7.0 |
sbuf_uionew truncates ssize_t uio_resid to int length then uiomove()s full original size into undersized buffer
sys/kern/subr_sbuf.c:237 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0105 |
Low |
7.0 |
DT_CALLOUT_ARMED set before callout_reset creates enqueue/cancel race (panic or tq_callouts underflow + spurious UAF)
sys/kern/subr_taskqueue.c:355 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0557 |
Low |
7.0 |
Callout UAF race on hook disconnect/node shutdown: callout_stop doesnt drain ticker
sys/netgraph/lmi/ng_lmi.c:1062 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1001 |
Low |
7.0 |
INQUIRY EVPD Unit Serial Number pre-fill writes past short CAM buffer
sys/bus/u4b/storage/umass.c:2326 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1002 |
Low |
7.0 |
INQUIRY EVPD Supported Page List augmentation trusts device-supplied length against unvalidated buffer
sys/bus/u4b/storage/umass.c:2578 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1016 |
Low |
7.0 |
FIOASYNC stores raw struct proc pointer without PHOLD -> kernel heap UAF on process exit via fork
sys/bus/u4b/usb_dev.c:1044 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1154 |
Low |
7.0 |
Unbounded per-CRTC plane count can overflow MAX_SURFACES stack/heap buffers
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c:4496 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1435 |
Low |
7.0 |
DVDIOCREADSTRUCTURE BCA/MANUFACT heap overflow via device-controlled length field
sys/dev/disk/nata/atapi-cd.c:1582 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2034 |
Low |
7.0 |
Signed table_id comparison allows OOB array index in vega10_copy_table_from_smc / _to_smc
sys/dev/drm/amd/powerplay/smumgr/vega10_smumgr.c:37 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2209 |
Low |
7.0 |
Stale pointer after kfree in drm_sysfs_connector_remove -- connector->kdev not NULLed, creating latent UAF via drm_sysfs_connector_add early-return guard
sys/dev/drm/drm_sysfs.c:35 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2234 |
Low |
7.0 |
iconv_add() and iconv_register_cspair() accept unbounded charset names; iconv_sysctl_cslist() strcpy overflows 31-byte stack buffer
sys/libiconv/iconv.c:179 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2248 |
Low |
7.0 |
min() truncates 64-bit size_t to 32-bit u_int then stores in signed int: negative loop count unbounded buffer overrun
sys/libiconv/iconv_xlat.c:86 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2249 |
Low |
7.0 |
convchar==1 path converts one byte without checking inbytesleft/outbytesleft > 0: 1-byte OOB read/write
sys/libiconv/iconv_xlat.c:92 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0490 |
High |
6.8 |
Type confusion in in_lifaddr_ioctl: AF_INET6 check matches IPv6 addresses cast to in_ifaddr β unpriv heap OOB read/info leak via SIOCGLIFADDR
sys/netinet/in.c:908 |
leak:0 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0983 |
High |
6.8 |
Heap overflow in urtwn_efuse_read_data via crafted efuse extended header on RTL8188EU
sys/bus/u4b/wlan/if_urtwn.c:1755 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1011 |
High |
6.8 |
Integer overflow in nitv (uint16_t) during UVC descriptor parsing -> ~250KB heap buffer overflow
sys/bus/u4b/uvc/uvc_drv.c:1674 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2288 |
High |
6.8 |
OOB heap write/read in fw_bus_explore_callback via unchecked ongoaddr (Config ROM parser)
sys/bus/firewire/firewire.c:1500 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2289 |
High |
6.8 |
Off-by-one stack buffer overflow in crom_next depth guard allows kernel stack corruption
sys/bus/firewire/fwcrom.c:115 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2359 |
High |
6.8 |
urtwn_efuse_read_data writes past sc->rom union on malicious USB device (RTL8188EU extended efuse header)
sys/bus/u4b/wlan/if_urtwn.c:1756 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1097 |
Medium |
6.8 |
Use-after-free and double-free in fwohci_pci_add_child error path
sys/bus/firewire/fwohci_pci.c:442 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1268 |
Medium |
6.8 |
Unbounded VBIOS dependency-table counts overflow fixed SMU7 level arrays (heap OOB write)
sys/dev/drm/amd/amdgpu/kv_dpm.c:2422 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1280 |
Medium |
6.8 |
Unchecked reply-frame offset in mpt_intr allows OOB read/write via malicious IOC address reply
sys/dev/disk/mpt/mpt.c:734 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1767 |
Medium |
6.8 |
virtqueue: host-controlled descriptor indices used without runtime bounds validation cause OOB read/write
sys/dev/virtual/virtio/virtio/virtqueue.c:559 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1868 |
Medium |
6.8 |
Write-reply stack buffer overflow in aux_engine: missing bound of returned_byte against reply_data[16]
sys/dev/drm/amd/display/dc/i2caux/aux_engine.c:415 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1882 |
Medium |
6.8 |
Stack buffer overflow/underflow in ad_describe via non-NUL-terminated IDENTIFY model string
sys/dev/disk/nata/ata-disk.c:508 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1938 |
Medium |
6.8 |
Write-reply stack overflow via self-comparing bound check in read_channel_reply (cross-file with DF-1868)
sys/dev/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c:316 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2361 |
Medium |
6.8 |
P packet out-of-bounds stack write via NUM_REGS/struct mismatch and missing lower bound
sys/cpu/x86_64/misc/x86_64-gdbstub.c:438 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2362 |
Medium |
6.8 |
m/M packets accept unbounded length overflowing 400-byte static I/O buffers
sys/cpu/x86_64/misc/x86_64-gdbstub.c:118 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1694 |
Low |
6.8 |
dce_aux: stack buffer overflow in AUX write-reply path (bound check compares HW field against itself)
sys/dev/drm/amd/display/dc/dce/dce_aux.c:285 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0410 |
High |
6.7 |
Heap buffer overflow in ng_encode_string: buffer allocated by strlen(raw) but loop iterates attacker-controlled slen
sys/netgraph7/netgraph/ng_parse.c:919 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0472 |
High |
6.7 |
ip_fw3_ctl_add_rule missing cmd_len validation: heap over-read + info leak + OOB function pointer call
sys/net/ipfw3/ip_fw3.c:950 |
leak:~1KB |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0668 |
High |
6.7 |
Unbounded table id in all dispatch/ioctl handlers -> per-CPU heap OOB write, OOB read, and wild function-pointer call
sys/net/ipfw3_basic/ip_fw3_table.c:92 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0720 |
High |
6.7 |
Heap overflow: if_alloc(IFT_PPP) returns sizeof(struct ifnet) but sppp_attach writes ~1KB of struct sppp fields past allocation (LATENT β file does not compile)
sys/netgraph7/ng_sppp.c:249 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0897 |
High |
6.7 |
Stack buffer overflow via non-NUL-terminated name/linkname in devfs_rule_ioctl
sys/vfs/devfs/devfs_rules.c:104 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1064 |
High |
6.7 |
Unbounded CPU counter in MADT LAPIC/x2APIC enumeration causes out-of-bounds kernel BSS writes
sys/platform/pc64/acpica/acpi_madt.c:274 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1066 |
High |
6.7 |
Integer underflow in uvc_buf_queue_mmap_locked bounds check allows out-of-bounds vtophys() when buf_size==0
sys/bus/u4b/uvc/uvc_buf.c:107 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1133 |
High |
6.7 |
RLC v2.0 firmware register-list parsing: integer-overflow kmalloc + unvalidated offset to heap OOB write/read
sys/dev/drm/amd/amdgpu/gfx_v8_0.c:1106 |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1134 |
High |
6.7 |
cz_init_cp_jump_table: unvalidated jt_offset/jt_size from CE/PFP/ME/MEC fw headers -> OOB read/write
sys/dev/drm/amd/amdgpu/gfx_v8_0.c:1301 |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1163 |
High |
6.7 |
gfx_v7_0_init_cp_pg_table heap OOB write+read via untrusted firmware jt_offset/jt_size
sys/dev/drm/amd/amdgpu/gfx_v7_0.c:3788 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1203 |
High |
6.7 |
Heap buffer overflow via unbounded ucStateEntrySize in power table parsing
sys/dev/drm/radeon/ni_dpm.c:3927 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1407 |
High |
6.7 |
Unbounded i2c_bus[i] write via BIOS-controlled num_indices in amdgpu_atombios_i2c_init
sys/dev/drm/amd/amdgpu/amdgpu_atombios.c:140 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1503 |
High |
6.7 |
SETFKEY signed-flen heap/static overflow via imin(-1, MAXFK) wrapped into u_char .len
sys/dev/misc/kbd/kbd.c:1090 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1529 |
High |
6.7 |
hpt_create_array_v2 dereferences unvalidated Members[1..nDisk-1] as kernel pointers (arbitrary kernel memory write)
sys/dev/raid/hptmv/gui_lib.c:571 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1539 |
High |
6.7 |
Heap buffer overflow in NGM_TEXT_STATUS handler via unbounded ksprintf into 1024-byte response
sys/dev/netif/mn/if_mn.c:352 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1560 |
High |
6.7 |
Heap buffer overflow in pp_dpm_set_pp_table via sysfs pp_table write
sys/dev/drm/amd/powerplay/amd_powerplay.c:676 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1563 |
High |
6.7 |
Heap overflow via unbounded CAM scatter-gather count in hpt_scsi_io
sys/dev/raid/hpt27xx/hpt27xx_osm_bsd.c:715 |
leak:heap |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1578 |
High |
6.7 |
Heap OOB write in INQUIRY/READ_CAPACITY/SERVICE_ACTION_IN via missing dxfer_len check
sys/dev/raid/hptrr/hptrr_osm_bsd.c:582 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1732 |
High |
6.7 |
vinumio: heap buffer overflow - unbounded config-line copy in vinum_scandisk reads attacker-controlled disk data into 2KB buffer
sys/dev/raid/vinum/vinumio.c:763 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1851 |
High |
6.7 |
32-bit integer overflow in hptmv HPT_IOCTL_PARAM size check enables kernel heap overflow
sys/dev/raid/hptmv/hptproc.c:292 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1894 |
High |
6.7 |
Integer overflow in dmc_header->fw_size*4 causes unbounded heap OOB read in intel_csr_load_program
sys/dev/drm/i915/intel_csr.c:404 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1946 |
High |
6.7 |
amdgpu_ucode_validate only checks datasize==size_bytes: no minimum size, no header cross-validation (root of DF-1838 family)
sys/dev/drm/amd/amdgpu/amdgpu_ucode.c:251 |
leak:24+ |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1947 |
High |
6.7 |
Integer underflow + missing bounds in amdgpu_ucode_init_single_fw/patch_jt memcpy: heap OOB write
sys/dev/drm/amd/amdgpu/amdgpu_ucode.c:347 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0056 |
Medium |
6.7 |
Heap overflow via unchecked p_filesz > p_memsz in PT_LOAD segment loading
sys/kern/link_elf.c:507 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0402 |
Medium |
6.7 |
Direct kernel dereference of user-controlled pointer in netmap_bdg_learning before copyin: panic or kernel info-leak
sys/net/netmap/netmap_vale.c:994 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0573 |
Medium |
6.7 |
Unvalidated ioc->id used as nats[] index: OOB read/write of pointer array
sys/net/ipfw3_nat/ip_fw3_nat.c:745 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1112 |
Medium |
6.7 |
Stack buffer overflow: 32-byte buf[] used for GSBUS BLOCK/BYTES transfers carrying up to 255 bytes
sys/bus/smbus/smbacpi/smbacpi.c:137 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1128 |
Medium |
6.7 |
Zero-level power state: OOB read performance_levels[-1] and integer underflow memset overflow in SMC state upload
sys/dev/drm/amd/amdgpu/si_dpm.c:5662 |
leak:4 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1176 |
Medium |
6.7 |
Unvalidated RLC firmware header fields cause integer overflow in kmalloc and OOB heap read/write
sys/dev/drm/amd/amdgpu/gfx_v9_0.c:691 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1178 |
Medium |
6.7 |
gfx_v9_1_parse_ind_reg_list: stack buffer overflow on indirect_start_offsets[10] and unbounded OOB read
sys/dev/drm/amd/amdgpu/gfx_v9_0.c:2084 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1185 |
Medium |
6.7 |
arcmsr_iop_message_xfer writes up to 1031 bytes past CAM buffer sized by dxfer_len
sys/dev/raid/arcmsr/arcmsr.c:2604 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1221 |
Medium |
6.7 |
RX completion req_id used as array index without bounds check (OOB read/write/panic)
sys/dev/virtual/amazon/ena/ena.c:1450 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1820 |
Medium |
6.7 |
amr_pci: UAF - amr_pci_intr runs concurrently with DMA/command teardown in amr_pci_free; interrupt torn down LAST
sys/dev/raid/amr/amr_pci.c:477 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1854 |
Medium |
6.7 |
Heap overflow in psp_asd_load via unvalidated asd_ucode_size from PSP ASD firmware header
sys/dev/drm/amd/amdgpu/amdgpu_psp.c:254 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1933 |
Medium |
6.7 |
Heap OOB write in dm_target_stripe_table via unchecked ksnprintf return value
sys/dev/disk/dm/striped/dm_target_striped.c:208 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1955 |
Medium |
6.7 |
Unvalidated firmware header fields enable heap overflow in ASD firmware copy (variant of DF-1838/1854/1875)
sys/dev/drm/amd/amdgpu/psp_v10_0.c:142 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2015 |
Medium |
6.7 |
vce_v1_0_load_fw trusts unvalidated firmware-blob fields (num/len/datasize) causing kernel heap OOB write and OOB read
sys/dev/drm/radeon/vce_v1_0.c:158 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2104 |
Medium |
6.7 |
radeon ci_load_smc_ucode trusts unvalidated firmware header fields (dead limit, no blob/header bounds) -> kernel heap OOB read and arbitrary SMC SRAM write (radeon twin of DF-2096)
sys/dev/drm/radeon/ci_smc.c:186 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2119 |
Medium |
6.7 |
Double dma_fence_put on normal benchmark completion (heap double-free / UAF)
sys/dev/drm/amd/amdgpu/amdgpu_benchmark.c:36 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2156 |
Medium |
6.7 |
_alloc_safe_mem size math is broken: heap underflow on small req_sz and integer overflow on huge req_sz
sys/dev/misc/tbridge/safe_mem.c:80 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0480 |
Low |
6.7 |
TCP-MD5 signature option construction overflows 40-byte opt[] stack buffer (disabled by default)
sys/netinet/tcp_output.c:779 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1007 |
Low |
6.7 |
fwohci_rx_enable ignores fwohci_add_rx_buf allocation failure -> db[-1] OOB write
sys/bus/firewire/fwohci.c:1406 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1482 |
Low |
6.7 |
vr_encap copies m_pkthdr.len bytes into fixed MCLBYTES TX buffer without bounds check: heap overflow when MTU raised
sys/dev/netif/vr/if_vr.c:1288 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1823 |
Low |
6.7 |
aac_cam: unbounded sense-data bcopy heap overflow in aac_cam_complete (min(sense_len,sense_returned) not bounded to sizeof(sense_data)=32)
sys/dev/raid/aac/aac_cam.c:608 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1825 |
Low |
6.7 |
evdev_mt: unbounded match_slot in SYN_MT_REPORT path causes OOB heap read/write and KKASSERT panic
sys/dev/misc/evdev/evdev_mt.c:416 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2084 |
Low |
6.7 |
mpu401_un_init frees mpu401 struct without stopping/draining the live callout (use-after-free via mpu401_timeout)
sys/dev/sound/midi/mpu401.c:103 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0797 |
High |
6.6 |
Unvalidated vol_no from crafted volume header causes kernel heap OOB write in volume_map bitmap
sys/vfs/hammer/hammer_ondisk.c:210 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1320 |
High |
6.6 |
Unbounded MST stream_count overflows stack work_table[MAX_CONTROLLER_NUM=6] in update_mst_stream_alloc_table
sys/dev/drm/amd/display/dc/core/dc_link.c:2322 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1400 |
High |
6.6 |
Stack buffer overflow in wi_write_wep LUCENT WEP-key load (wk_keylen up to 16 copied into wi_keydat[14])
sys/dev/netif/wi/if_wi.c:1751 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1781 |
High |
6.6 |
drm_crtc: uninitialized heap read in drm_mode_setcrtc cleanup derefs garbage connector pointers
sys/dev/drm/drm_crtc.c:713 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1243 |
Medium |
6.6 |
mrsas_get_pd_list indexes local_pd_list with unchecked firmware deviceId (OOB write)
sys/dev/raid/mrsas/mrsas.c:3307 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1244 |
Medium |
6.6 |
mrsas_get_ld_list indexes ld_ids with unchecked firmware targetId (OOB byte write)
sys/dev/raid/mrsas/mrsas.c:3380 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1561 |
Medium |
6.6 |
Stack OOB write in pp_dpm_get_pp_num_states when hwmgr->num_ps > 16
sys/dev/drm/amd/powerplay/amd_powerplay.c:619 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1625 |
Medium |
6.6 |
Integer overflow in VCE create-command img_size bypasses BO size validation
sys/dev/drm/amd/amdgpu/amdgpu_vce.c:823 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2507 |
Medium |
6.6 |
afd_reinit frees softc without destroying disk orphaning device with freed memory (UAF / NULL-deref panic)
sys/dev/disk/nata/atapi-fd.c:176 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0489 |
High |
6.5 |
Neighbor Advertisement handler leaks route refcount on every received NA: remote kernel memory exhaustion DoS
sys/netinet6/nd6_nbr.c:734 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0508 |
High |
6.5 |
L2CAP ConfigReq unknown-option echo inflates m_pkthdr.len past mbuf data -> remote kernel heap info leak
sys/netgraph7/bluetooth/l2cap/ng_l2cap_evnt.c:599 |
leak:252 |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0594 |
High |
6.5 |
TKIP RX length underflow on too-short frames -> OOB read and KASSERT panic in wep_decrypt/michael_mic/m_copydata
sys/netproto/802_11/wlan_tkip/ieee80211_crypto_tkip.c:266 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0596 |
Medium |
6.5 |
Unsynchronized SMP race on xmitWin causes heap OOB write on timeSent[] in ng_pptpgre
sys/netgraph/pptpgre/ng_pptpgre.c:121 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1646 |
Medium |
6.5 |
bre() plex_concat builds rqe with negative sdoffset for subdisk-gap plexes, corrupting/arbitrary-leaking drive data outside the subdisk
sys/dev/raid/vinum/vinumrequest.c:494 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2541 |
Medium |
6.5 |
Network input paths X_ipip_input and pim_input dereference viftable/last_encap_vif without mroute_token racing vif teardown to NULL deref or 5.5MB OOB read
sys/net/ip_mroute/ip_mroute.c:1716 |
panic |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-0524 |
High |
6.4 |
Stored raw pointer to member ifnet with no refcount: UAF when member interface destroyed
sys/netgraph/fec/ng_fec.c:408 |
panic |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-0525 |
High |
6.4 |
ng_fec_tick iterates port list with no list lock: UAF race vs addport/delport
sys/netgraph/fec/ng_fec.c:579 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0662 |
High |
6.4 |
Use-after-free of readq: ng_device_disconnect frees readq BEFORE destroy_dev drains in-flight operations
sys/netgraph/ng_device.c:407 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0732 |
High |
6.4 |
TOCTOU in MACCMD_LIST: as_nacls read without lock before buffer sizing β heap OOB write (grow) and uninit heap info leak (shrink)
sys/netproto/802_11/wlan_acl/ieee80211_acl.c:313 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1018 |
High |
6.4 |
TRIM req->data heap buffer overflow and OOB DMA read via device-controlled small secsize
sys/bus/cam/scsi/scsi_da.c:1341 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1109 |
High |
6.4 |
TOCTOU double-fetch of d->nmsgs in I2CRDWR ioctl causes kernel heap buffer overflow
sys/bus/iicbus/iic.c:291 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1346 |
High |
6.4 |
Heap buffer overflow populating VCE/UVD SMC levels from unclamped VBIOS MM-dependency count
sys/dev/drm/amd/powerplay/smumgr/polaris10_smumgr.c:1298 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1496 |
High |
6.4 |
Unbounded VBIOS ucSclkEntryNum overflows fixed 8-entry stack table in atomctrl_get_smc_sclk_range_table
sys/dev/drm/amd/powerplay/hwmgr/ppatomctrl.c:1368 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1783 |
High |
6.4 |
radeon_bios: heap buffer overflow in radeon_atrm_call - unbounded memcpy of ACPI-returned buffer into 256K BIOS buffer
sys/dev/drm/radeon/radeon_bios.c:183 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0246 |
Medium |
6.4 |
UAF: eventhandler dispatch traverses entry list without token while deregister frees entries
sys/kern/subr_eventhandler.c:114 |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0296 |
Medium |
6.4 |
UAF/cross-node races: peer hooks/nodes dereferenced without reference or peer-token
sys/netgraph7/netgraph/ng_base.c:1092 |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0306 |
Medium |
6.4 |
UAF in add_bw_upcall: mfc pointer used after mroute_token released across blocking kmalloc
sys/net/ip_mroute/ip_mroute.c:2285 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0355 |
Medium |
6.4 |
nd6_sysctl_drlist/prlist iterate defrouter/prefix lists without nd6_mtx: UAF race with RA processing
sys/netinet6/nd6.c:2168 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0503 |
Medium |
6.4 |
ifnet locking-contract violation and stored-pointer UAF on member ifnets
sys/netgraph7/ng_fec.c:370 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0529 |
Medium |
6.4 |
Double-kfree/interior-pointer kfree in ng_fec_constructor error paths: heap corruption
sys/netgraph/fec/ng_fec.c:1085 |
panic |
reproduced |
fix_failed |
untriaged |
β |
β |
| DF-0605 |
Medium |
6.4 |
Use-after-free in pfi_get_ifaces() RB tree walk under concurrent interface detach
sys/net/pf/pf_if.c:763 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0609 |
Medium |
6.4 |
Missing return after m_freem in netisr_characterize causes UAF read and NULL-deref panic
sys/net/netisr.c:515 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0664 |
Medium |
6.4 |
Missing locking enables TOCTOU/UAF races across all device entry points
sys/netgraph/ng_device.c:309 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0712 |
Medium |
6.4 |
Undersized kmalloc in ieee80211_alloc_countryie: 3-byte heap overflow when channel list has >=84 distinct power runs
sys/netproto/802_11/wlan/ieee80211_regdomain.c:248 |
none_observable_intra_object_padding |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0735 |
Medium |
6.4 |
ip_input/ip_output called from netgraph thread context: ASSERT_NETISR_NCPUS panic (INVARIANTS) and PFIL list UAF (production)
sys/netgraph7/ng_ipfw.c:245 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0949 |
Medium |
6.4 |
sys_mlockall use-after-free: stale vm_map_entry pointer held across vm_fault_wire which releases the map lock
sys/vm/vm_mmap.c:1066 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1045 |
Medium |
6.4 |
UAF in targclose: softc kfree'd before periph's targdtor runs
sys/bus/cam/scsi/scsi_target.c:207 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1294 |
Medium |
6.4 |
Unvalidated hypervisor sq_idx causes stack buffer overflow in ena_com_ind_tbl_convert_from_device
sys/dev/virtual/amazon/ena/ena-com/ena_com.c:1156 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1404 |
Medium |
6.4 |
cuse_server_open re-initializes global cuse_global_mtx on every /dev/cuse open corrupting lock state
sys/dev/misc/cuse/cuse.c:791 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1502 |
Medium |
6.4 |
Lockless driver: interrupt handler races musycc_disconnect freeing tx/rx descriptor rings (UAF)
sys/dev/misc/musycc/musycc.c:1341 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1609 |
Medium |
6.4 |
Heap OOB write in PowerPlay table entry callback via unbounded levels[index]
sys/dev/drm/amd/powerplay/hwmgr/smu10_hwmgr.c:736 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1667 |
Medium |
6.4 |
ath EDMA: m_rxpending use-after-free / double-free in ath_edma_stoprecv vs deferred tasklet
sys/dev/netif/ath/ath/if_ath_rx_edma.c:188 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1685 |
Medium |
6.4 |
agp: UAF / TOCTOU race between agp_find_memory and AGP_{BIND,UNBIND,FREE}_MEMORY
sys/dev/agp/agp.c:488 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1768 |
Medium |
6.4 |
ar9285_reset: unbounded EEPROM pwrPdg delta causes OOB write/read in GetGainBoundariesAndPdadcs
sys/dev/netif/ath/ath_hal/ar9002/ar9285_reset.c:650 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1961 |
Medium |
6.4 |
Heap OOB write in k8pnow_decode_pst insertion sort from unchecked pst->n_states>16
sys/dev/powermng/powernow/powernow.c:99 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2157 |
Medium |
6.4 |
Global safe_mem list has no concurrency protection: concurrent alloc/free corrupts linkage (UAF / double-unlink)
sys/dev/misc/tbridge/safe_mem.c:55 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2159 |
Medium |
6.4 |
Unlocked traversal of irq_list in disable_irq/enable_irq and free_irq lookup yields UAF, double-free and SLIST_REMOVE NULL-deref panic
sys/dev/drm/linux_irq.c:116 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2233 |
Medium |
6.4 |
Lockless list traversal in iconv_open/iconv_lookupcs/iconv_lookupconv allows use-after-free via concurrent module unload
sys/libiconv/iconv.c:146 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2383 |
Medium |
6.4 |
Use-after-free of softc in acpi_hp_notify vs. acpi_hp_detach (DF-2381 AcpiOsWaitEventsComplete no-op)
sys/dev/acpica/acpi_hp/acpi_hp.c:591 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2397 |
Medium |
6.4 |
Unsynchronized AGP memory list operations enable UAF and TAILQ corruption via concurrent ioctls
sys/dev/agp/agp.c:455 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2499 |
Medium |
6.4 |
TAILQ_FOREACH iterates pending_hcbs while freeing each element use-after-free read
sys/dev/disk/nata/atapi-cam.c:885 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2500 |
Medium |
6.4 |
In-flight ATA requests outlive atapi_cam_detach atapi_cb dereferences freed hcb and destroyed state_lock
sys/dev/disk/nata/atapi-cam.c:619 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2536 |
Medium |
6.4 |
Sense-data bcopy length not capped to 32-byte sense buffer kernel heap overflow into CCB and info leak of request-frame memory
sys/dev/disk/mpt/mpt_cam.c:3141 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0679 |
Low |
6.4 |
Use-after-free: dangling match/nomatch hook pointers when ng_bpf_setprog fails in newhook
sys/netgraph7/bpf/ng_bpf.c:280 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0694 |
Low |
6.4 |
wep_setkey missing upper-bound key length validation allows stack overflow in RC4 key buffer
sys/netproto/802_11/wlan_wep/ieee80211_crypto_wep.c:122 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1068 |
Low |
6.4 |
pci_token does not serialize ioctl against kernel-side pci_devq mutation -> UAF/double-free window
sys/bus/pci/pci_user.c:59 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1394 |
Low |
6.4 |
Heap OOB write in seq_open when more than 32 MIDI devices registered
sys/dev/sound/midi/sequencer.c:541 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1501 |
Low |
6.4 |
Heap OOB write in musycc_attach when PCI device reports nchan > NPORT
sys/dev/misc/musycc/musycc.c:1494 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1649 |
Low |
6.4 |
acpi_ec: EcSpaceHandler missing Width<=64 bound -> OOB past UINT64 Value buffer
sys/dev/acpica/acpi_ec.c:818 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1670 |
Low |
6.4 |
if_vke: select()/FD_SET stack buffer overflow when sc_fd >= FD_SETSIZE
sys/dev/virtual/vkernel/net/if_vke.c:631 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1779 |
Low |
6.4 |
radeon_dp_mst: latent unbounded idx into new_attribs[6]/cur_stream_attribs[6] + ignored VCPI alloc failure
sys/dev/drm/radeon/radeon_dp_mst.c:114 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2113 |
Low |
6.4 |
Use-after-free: unimplemented led_detach leaves dangling gpio pointer in surviving LED cdevs
sys/dev/misc/gpio/gpio_led.c:206 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2115 |
Low |
6.4 |
Double dma_fence_put (UAF / double-free) on self-test copy-mismatch or kmap-failure paths
sys/dev/drm/amd/amdgpu/amdgpu_test.c:140 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2599 |
Low |
6.4 |
output_ifp stored without ifnet lifetime protection UAF on interface detach
sys/netgraph7/ng_source.c:623 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0593 |
Info |
6.4 |
Latent UAF: fairq_class_destroy does not clear dangling pif_default pointer (currently unreachable via pf ioctls)
sys/net/altq/altq_fairq.c:428 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1491 |
Info |
6.4 |
Missing MIN() bound in mpr_config_get_raid_volume_pg0 allows firmware-controlled heap-buffer overrun into caller struct
sys/dev/raid/mpr/mpr_config.c:1295 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0764 |
Medium |
6.3 |
Stale worklist_tail in add_to_worklist β process_worklist_item LK_NOWAIT can free the tail causing UAF write + orphaned items + unmount panic
sys/vfs/ufs/ffs_softdep.c:462 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0974 |
Medium |
6.3 |
xpt_action_sasync_cb use-after-free race on async_node during concurrent register/unregister
sys/bus/cam/cam_xpt.c:3353 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1194 |
Medium |
6.3 |
ciss_init_logical and ciss_free use <= instead of < on ciss_logical array (off-by-one OOB write/kfree)
sys/dev/raid/ciss/ciss.c:1376 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1285 |
Medium |
6.3 |
INQUIRY/READ_CAPACITY/SERVICE_ACTION_IN write fixed-size replies past dxfer_len-sized kernel buffer
sys/dev/raid/hptmv/entry.c:2709 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1398 |
Medium |
6.3 |
Off-by-one OOB array access in all four remove_*_entry functions (index==allocated passes > check)
sys/dev/raid/vinum/vinumconfig.c:1728 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1475 |
Medium |
6.3 |
Off-by-one in PhyNum target-ID fallback allows heap OOB write past sassc->targets[]
sys/dev/raid/mpr/mpr_sas_lsi.c:885 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1814 |
Medium |
6.3 |
tw_cl_init: tw_cli_init_connection double-inserts req into FREE_Q on any submit_and_poll failure -> queue list corruption
sys/dev/raid/twa/tw_cl_init.c:677 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2214 |
Medium |
6.3 |
32-bit integer overflow in DMA copy size (num_gpu_pages << 12) silently truncates copy
sys/dev/drm/radeon/rv770_dma.c:44 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1255 |
Low |
6.3 |
vega20_setup_single_dpm_table writes dpm_levels[16] without bounding SMU-returned num_of_levels
sys/dev/drm/amd/powerplay/hwmgr/vega20_hwmgr.c:466 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1384 |
Low |
6.3 |
TOCTOU race in nge_jref vs nge_jfree: unlocked check-then-add enables refcount confusion / UAF on jumbo buffers
sys/dev/netif/nge/if_nge.c:1148 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1637 |
Low |
6.3 |
Double-free of crypto_session on cryptoapi_cipher_setkey failure
sys/dev/disk/dm/crypt/dm_target_crypt.c:559 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2153 |
Low |
6.3 |
Unchecked integer overflow in dma_fence_array_create size computation yields heap OOB write (latent, EXPORT_SYMBOL)
sys/dev/drm/linux_fence-array.c:173 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1413 |
High |
6.1 |
Unchecked VBIOS conn_num drives OOB write past connectors[16] in update_slot_layout_info
sys/dev/drm/amd/display/dc/bios/bios_parser2.c:1732 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1473 |
High |
6.1 |
u16 truncation in EventDataLength*4 size computation causes zero-size alloc panic and undersized-buffer OOB read
sys/dev/raid/mpr/mpr_sas_lsi.c:136 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1642 |
High |
6.1 |
kfree of uninitialized msg pointer in dm_message_ioctl when DM_MESSAGE_STR absent
sys/dev/disk/dm/dm_ioctl.c:1006 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1696 |
High |
6.1 |
mps_sas_lsi: u16 truncation of EventDataLength*4 panics on kmalloc(0) and yields OOB heap read
sys/dev/raid/mps/mps_sas_lsi.c:128 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2024 |
High |
6.1 |
size_t underflow in multi-part SSIF write loop causes unbounded kernel heap OOB read and DoS
sys/dev/misc/ipmi/ipmi_ssif.c:126 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2227 |
High |
6.1 |
Unbounded while(*cp!="\"") scan in XML attribute-value parser causes heap OOB read / kernel panic
sys/libprop/prop_object.c:484 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0862 |
Medium |
6.1 |
hpfs_bminit integer overflow in hpm_dbnum computation undersizes bitmap arrays OOB read/write
sys/vfs/hpfs/hpfs_subr.c:109 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1012 |
Medium |
6.1 |
Heap underflow write when VS_COLORFORMAT or VS_FRAME precedes any VS_FORMAT descriptor
sys/bus/u4b/uvc/uvc_drv.c:1836 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1223 |
Medium |
6.1 |
XPT_RESET_DEV frees a regular-pool command via the high-priority free list, corrupting command-pool accounting
sys/dev/raid/mpr/mpr_sas.c:3351 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1547 |
Medium |
6.1 |
Missing cdb_len bounds check overflows the LRAM queue slot (sibling of DF-1356)
sys/dev/disk/advansys/advansys.c:548 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2594 |
Medium |
6.1 |
Unvalidated redo_data_bytes and REDO record size in recovery cause OOB kernel-memory read on mount of crafted image
sys/vfs/hammer/hammer_recover.c:1225 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2595 |
Medium |
6.1 |
Missing zero-length packet guard causes type confusion in bpf_filter OOB read panic
sys/netgraph/bpf/ng_bpf.c:403 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0471 |
High |
6.0 |
ip_fw3_ctl_x: size_t underflow in sopt_valsize when <4 causes unbounded bcopy heap corruption/panic
sys/net/ipfw3/ip_fw3.c:1038 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0661 |
High |
6.0 |
Kernel stack overflow via unchecked user-controlled VLA in ngdread/ngdwrite
sys/netgraph/ng_device.c:509 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1397 |
High |
6.0 |
Heap overflow in plex/subdisk auto-naming via strcat past filled 64-byte name field
sys/dev/raid/vinum/vinumconfig.c:1455 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0476 |
Medium |
6.0 |
ip_fw3_register_module: strncpy bounded by strlen(src) not sizeof(dst): buffer overflow + missing NUL
sys/net/ipfw3/ip_fw3.c:180 |
leak:22bytes |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1177 |
Medium |
6.0 |
rv_init_cp_jump_table: unbounded jt_size OOB write + NULL deref on missing mec2 firmware
sys/dev/drm/amd/amdgpu/gfx_v9_0.c:1078 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1733 |
Medium |
6.0 |
vinumio: heap overflow on drivelist[] - DRIVEPARTS(35) smaller than loop bound (240) in vinum_scandisk
sys/dev/raid/vinum/vinumio.c:678 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1750 |
Medium |
6.0 |
amdgpu_acpi: heap OOB read and ACPI_OBJECT type confusion in 4 ATIF/ATCS return buffer parsers
sys/dev/drm/amd/amdgpu/amdgpu_acpi.c:199 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1769 |
Medium |
6.0 |
ar9285_reset: chain loop uses AR5416_MAX_CHAINS=3 on 4k EEPROM struct with calPierData2G[1][3] -> OOB type-confusion via txMask
sys/dev/netif/ath/ath_hal/ar9002/ar9285_reset.c:607 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1875 |
Medium |
6.0 |
Unvalidated PSP firmware header fields cause heap OOB write in fw_pri_buf (sysdrv + sos load) β variant of DF-1838 for Vega20/Navi10
sys/dev/drm/amd/amdgpu/psp_v11_0.c:122 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1964 |
Medium |
6.0 |
Orphaned worker thread / use-after-free when write-side _init fails in dm_target_delay_init
sys/dev/disk/dm/delay/dm_target_delay.c:104 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2039 |
Medium |
6.0 |
Use-after-free: discard_buffer_callout not drained before freeing sc->buf and destroying dev_lock in tpm20_release
sys/dev/crypto/tpm/tpm20.c:137 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2065 |
Medium |
6.0 |
si_load_smc_ucode ignores limit and trusts firmware header offset/size fields without bounds checking -- heap OOB read and unbounded SMC SRAM write
sys/dev/drm/radeon/si_smc.c:211 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2078 |
Medium |
6.0 |
goto restart_search reads OOB past power-state array returning OOB pointer used to program SMC
sys/dev/drm/amd/powerplay/hwmgr/pp_psm.c:214 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2105 |
Medium |
6.0 |
Integer overflow in u32 bounds checks in ci_set_smc_sram_address and ci_copy_bytes_to_smc (wraparound defeats SMC SRAM upper bound)
sys/dev/drm/radeon/ci_smc.c:36 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2141 |
Medium |
6.0 |
tokenize() writes token pointers with no bounds check -> static-BSS OOB write via VINUM_CREATE ioctl
sys/dev/raid/vinum/vinumparser.c:162 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2207 |
Medium |
6.0 |
Signed 32-bit overflow in iounmap() byte-size math (npages * PAGE_SIZE) yields OOB pmap_unmapdev / wrong phys_avail match for >=2 GB mappings
sys/dev/drm/linux_iomapping.c:80 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2262 |
Medium |
6.0 |
XPT_DEV_MATCH trusts user-supplied EDT cookie kernel pointers: arbitrary kernel-address deref UAF KASLR leak
sys/bus/cam/cam_xpt.c:2446 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0042 |
Low |
6.0 |
Relocation r_offset never bounds-checked against target section size (OOB / wild kernel write)
sys/kern/link_elf_obj.c:940 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0061 |
Low |
6.0 |
Relocation r_offset never bounds-checked against module size (DF-0042 analogue, wild write)
sys/kern/link_elf.c:714 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0072 |
Low |
6.0 |
Missing sign/upper-bound validation on cfh_nfiles before heap alloc + file read (DoS; 32-bit integer-overflow heap OOB)
sys/kern/kern_checkpoint.c:596 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0975 |
Low |
6.0 |
XPT_DEV_MATCH cookie fields are user-controlled kernel pointers blindly dereferenced (arbitrary kread / panic)
sys/bus/cam/cam_xpt.c:2444 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1313 |
Low |
6.0 |
Ioctl copyin precedes bounds check vs HBA-controlled max_request_size + itl 8B copyout of 4B field
sys/dev/raid/hptiop/hptiop.c:1085 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1317 |
Low |
6.0 |
Heap buffer overflow in sbp_fix_inq_data via short INQUIRY data buffer
sys/dev/disk/sbp/sbp.c:1504 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1533 |
Low |
6.0 |
Unbounded cmd_7k->generic.size used as SG-list write offset in 9K_SA passthru
sys/dev/raid/twa/tw_cl_io.c:295 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1684 |
Low |
6.0 |
scvidctl: integer overflow in sc_set_pixel_mode bounds check allows OOB video-memory write via KDRASTER
sys/dev/misc/syscons/scvidctl.c:318 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2047 |
Low |
6.0 |
tbridge_printf size_t underflow yields OOB kernel write once 128kB buffer fills
sys/dev/misc/tbridge/tbridge.c:139 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0423 |
Medium |
5.9 |
Stale reg_mif_num after MRT6_DEL_MIF: remote NULL-deref panic via PIM REGISTER to freed register mif
sys/netinet6/ip6_mroute.c:642 |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0741 |
Medium |
5.9 |
gre_mobile_input bcopy size underflow (m_len-msiz-ip_hl*4) β huge overwrite when mobile header larger than mbuf
sys/netinet/ip_gre.c:223 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1155 |
Medium |
5.9 |
Heap overflow in isp_handle_platform_atio CDB copy (parallel SCSI target mode)
sys/dev/disk/isp/isp_freebsd.c:1926 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0356 |
Low |
5.9 |
nd6_resolve ln_hold mbuf accessed without nd6_mtx: UAF race with nd6_timer
sys/netinet6/nd6.c:2078 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0486 |
Low |
5.9 |
syncache_insert dereferences possibly-uninitialized sc2 in cache-overflow path when cachelimit=0
sys/netinet/tcp_syncache.c:359 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0657 |
Low |
5.9 |
ccmp_decrypt block-straddle path bounds-checked only by KASSERT (OOB read+write on oddly fragmented RX mbuf chains)
sys/netproto/802_11/wlan_ccmp/ieee80211_crypto_ccmp.c:619 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0044 |
Medium |
5.8 |
mount_get_by_nc returns struct mount without a hold -> use-after-free via cache_fullpath racing dounmount
sys/kern/vfs_mount.c:1235 |
none on this non-INVARIANTS kernel (race too tight); theoretical local DoS / info-leak if the race is won (unprivileged if vfs.usermount=1, else races a privileged unmount) |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0137 |
Medium |
5.8 |
Unlocked TAILQ traversal in varsymset_init() during fork: data race/UAF
sys/kern/kern_varsym.c:519 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0565 |
Medium |
5.8 |
Callout lifetime: ng_uncallout non-synchronizing + nglmi_shutdown omits ng_uncallout β ng7 twin of DF-0557
sys/netgraph7/lmi/ng_lmi.c:1053 |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0725 |
Medium |
5.8 |
if_clone_destroy UAF: drops ifnet_lock before dereferencing ifp->if_dname/if_dunit β concurrent destroy frees ifnet
sys/net/if_clone.c:110 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1383 |
Medium |
5.8 |
Out-of-bounds write in tl_encap when TX mbuf chain has exactly TL_MAXFRAGS non-empty mbufs totaling <64 bytes
sys/dev/netif/tl/if_tl.c:1794 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2087 |
Medium |
5.8 |
acpi_mapbase tracking list is mutated without any lock; concurrent AcpiOsMapMemory/UnmapMemory race into UAF and list corruption
sys/dev/acpica/Osd/OsdMemory.c:59 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2252 |
Medium |
5.8 |
Off-by-one NUL write before caller buffer when inlen <= 0
sys/libkern/hexncpy.c:52 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2417 |
Medium |
5.8 |
ADW_TARGET_GROUP macro off-by-factor-4 causes heap OOB write/read on user_sdtr[4] for all wide-SCSI targets (tid >= 4)
sys/dev/disk/advansys/adwlib.c:754 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0380 |
Low |
5.8 |
Non-atomic refcount --node->refs/--hook->refs under crit_enter only: cross-CPU UAF/double-free race
sys/netgraph/netgraph/ng_base.c:473 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0395 |
Low |
5.8 |
sta_lookup returns entry with table lock released: callers dereference unlocked TOCTOU use-after-free window
sys/netproto/802_11/wlan/ieee80211_scan_sta.c:1283 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1916 |
Low |
5.8 |
QCB free-list and queue manipulation race on SMP: crit_enter does not block cross-CPU ida_intr
sys/dev/raid/ida/ida.c:118 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0195 |
High |
5.7 |
Unlocked devstat list: concurrent device detach vs sysctl walk yields UAF (world-readable sysctl)
sys/kern/subr_devstat.c:268 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2572 |
High |
5.7 |
Use-after-free / NULL-deref: connection list mutated and traversed with no synchronization
sys/netgraph/ng_device.c:309 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0965 |
Medium |
5.7 |
twofish_set_key performs no key-length validation, allowing OOB stack writes and ctx corruption if reached with unsupported keylen
sys/crypto/twofish/twofish.c:425 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1072 |
Medium |
5.7 |
pnp_create_devices ANSI tag trim loop reads/writes stack below buf[0] with no lower bound
sys/bus/isa/pnp.c:398 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1090 |
Medium |
5.7 |
pnp_parse_desc accesses fixed descriptor offsets without validating payload length, causing heap OOB read and OOB byte-write
sys/bus/isa/pnpparse.c:90 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1464 |
Medium |
5.7 |
Unbounded scatter/gather list copy overflows per-CCB sg_list when CAM_SCATTER_VALID is set
sys/dev/raid/dpt/dpt_scsi.c:730 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1709 |
Medium |
5.7 |
iwm_scan: integer overflow in iwm_scan_size()/iwm_config_umac_scan via unbounded firmware n_scan_channels -> heap OOB write
sys/dev/netif/iwm/if_iwm_scan.c:486 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1713 |
Medium |
5.7 |
evdev: use-after-free race on ev_absinfo/ev_mt vs concurrent device detach in unlocked ioctls
sys/dev/misc/evdev/cdev.c:351 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2000 |
Medium |
5.7 |
UAF race in icioctl SIOCSIFMTU vs concurrent icoutput (TX) and icintr (RX)
sys/dev/netif/ic/if_ic.c:205 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2263 |
Medium |
5.7 |
EOF drain loop in sastart re-processes freed bio (double biodone / kernel hang)
sys/bus/cam/scsi/scsi_sa.c:1603 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2336 |
Medium |
5.7 |
Unbounded MMIO read/write in xHCI extended-capability list traversal
sys/bus/u4b/controller/xhci_pci.c:398 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0088 |
Low |
5.7 |
No runtime validation in free_unrl against out-of-range/double-free (KASSERT-only, defense-in-depth)
sys/kern/subr_unit.c:556 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0280 |
Low |
5.7 |
Integer overflow in ptr_array allocation in pf_setup_pfsync_matching (32-bit only theoretical)
sys/net/pf/pf_ioctl.c:942 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0578 |
Low |
5.7 |
SLIOCSUNIT struct-assigns embedded callout nodes: callout queue corruption
sys/net/sl/if_sl.c:365 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1187 |
Low |
5.7 |
arcmsr_build_srb 4GB-boundary split can overflow ARCMSR_CDB.u scatter list
sys/dev/raid/arcmsr/arcmsr.c:974 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1466 |
Low |
5.7 |
Sense-data bcopy and HBA reqlen use sense_len without bounding to sizeof(sense_data)
sys/dev/raid/dpt/dpt_scsi.c:858 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1477 |
Low |
5.7 |
agp_i810_bind_memory offset check bypassed via 64-bit integer wraparound -> OOB GTT writes
sys/dev/agp/intel-gtt.c:1259 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2007 |
Low |
5.7 |
amdgpu_sa_bo_manager_fini mutates lists without acquiring sa_manager->wq.lock -- UAF / list-corruption race with concurrent reader
sys/dev/drm/amd/amdgpu/amdgpu_sa.c:77 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2049 |
Low |
5.7 |
No synchronization: concurrent LOADTEST frees tbridge_testcase out from under running test kthread (UAF)
sys/dev/misc/tbridge/tbridge.c:240 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2117 |
Low |
5.7 |
drm_scdc_read/drm_scdc_write accept size_t but assign to uint16_t i2c_msg.len with no bounds check; drm_scdc_write can overflow 1+size before kmalloc/memcpy
sys/dev/drm/drm_scdc_helper.c:66 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2376 |
Low |
5.7 |
Fire-and-forget AcpiOsExecute battery tasks can run after detach using freed softc (UAF)
sys/dev/acpica/acpi_cmbat.c:154 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1042 |
Medium |
5.6 |
lapic_set_cpuid missing bounds validation allows OOB write to APIC ID mapping arrays via crafted MADT
sys/platform/pc64/apic/lapic.c:1212 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1884 |
Medium |
5.6 |
Missing bounds check on plexno in parityops allows OOB read/write on PLEX array
sys/dev/raid/vinum/vinumrevive.c:259 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1506 |
Low |
5.6 |
Missing emu_intr_unregister on detach and attach-failure leaves dangling IRQ consumer pointing at freed emu_pcm_info (UAF)
sys/dev/sound/pci/emu10kx-pcm.c:1453 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0807 |
High |
5.5 |
dirfs_readdir for-loop increment uses already-advanced dp β heap OOB read and memory disclosure
sys/vfs/dirfs/dirfs_vnops.c:1277 |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0923 |
High |
5.5 |
UAF of vm_map_backing and vm_map across per-iteration unlock in /proc/<pid>/map
sys/vfs/procfs/procfs_map.c:65 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1329 |
High |
5.5 |
Integer overflow in mpr_diag_read_buffer bounds check allows OOB read of diag DMA buffer
sys/dev/raid/mpr/mpr_user.c:1772 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2231 |
High |
5.5 |
Unbounded attacker-controlled pref_len in _prop_object_copyin causes kernel panic / memory exhaustion (prop_object_copyin_limit dead variable)
sys/libprop/prop_kern.c:383 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2281 |
High |
5.5 |
sgwrite: size_t->int truncation of uio_resid into buf_len plus unchecked kmalloc/M_ZERO memset-on-NULL yields local kernel panic
sys/bus/cam/scsi/scsi_sg.c:648 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0782 |
Medium |
5.5 |
Integer overflow in fuse_vop_write at offset near INT64_MAX triggers KKASSERT panic via negative newsize
sys/vfs/fuse/fuse_vnops.c:1469 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0919 |
Medium |
5.5 |
Unvalidated fs->fs_frag causes kernel panic and OOB array access in FFS bitmap/fragacct helpers
sys/vfs/ufs/ffs_subr.c:195 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0926 |
Medium |
5.5 |
Type-confusion panic in fuse_alloc_node when daemon reuses nodeid with conflicting type
sys/vfs/fuse/fuse_node.c:106 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1537 |
Medium |
5.5 |
Unbounded WS operand index and NULL dereference when ws=0
sys/dev/drm/radeon/atom.c:233 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1559 |
Medium |
5.5 |
Signedness bug in copy_batch min_t causes kernel heap overflow with large batch_len
sys/dev/drm/i915/i915_cmd_parser.c:1104 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1944 |
Medium |
5.5 |
afd_reinit frees softc without destroying disk cdev: orphan /dev/afd* NULL-deref/UAF on next I/O
sys/dev/disk/nata/atapi-fd.c:168 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1981 |
Medium |
5.5 |
Missing feature-arg-count validation in _init_features allows kernel panic via crafted dmsetup table string
sys/dev/disk/dm/flakey/dm_target_flakey.c:131 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2035 |
Medium |
5.5 |
Divide-by-zero kernel panic in vega20_fan_ctrl_set_fan_speed_rpm via 8*speed uint32 wraparound
sys/dev/drm/amd/powerplay/hwmgr/vega20_thermal.c:186 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2215 |
Medium |
5.5 |
Unconditional memset on FREEBLKS bios writes to unmapped KVA causing kernel panic
sys/dev/disk/dm/dm_target_zero.c:43 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2232 |
Medium |
5.5 |
Signed integer overflow in idr_grow() growth loop causes kernel hang or panic-sized kmalloc
sys/libkern/linux_idr.c:427 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2245 |
Medium |
5.5 |
Unbounded recursion in kqsort causes kernel stack overflow on adversarial input
sys/libkern/qsort.c:173 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2561 |
Medium |
5.5 |
Accept-filter NULL-deref/UAF race in soisconnected vs do_setopt_accept_filter
sys/kern/uipc_socket2.c:252 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1309 |
Low |
5.5 |
Static buffer overflow in ath_ee_FillVpdTable via crafted EEPROM pdg power range >126
sys/dev/netif/ath/ath_hal/ar5416/ar5416_reset.c:2427 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0612 |
Medium |
5.4 |
ieee80211_parse_tdma() join path skips IE length and tdma_slot validation, enabling heap OOB write via setbit() from crafted beacon
sys/netproto/802_11/wlan/ieee80211_tdma.c:645 |
oob_write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2578 |
Medium |
5.4 |
OOB heap write via unchecked tdma_slot in ieee80211_parse_tdma
sys/netproto/802_11/wlan/ieee80211_tdma.c:657 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0103 |
Medium |
5.3 |
p_tracenode/p_traceflag mutated without target p_token -> refcount double-drop/UAF and NULL-deref TOCTOU
sys/kern/kern_ktrace.c:506 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0162 |
Medium |
5.3 |
Global modules TAILQ mutated without mod_token: unpriv readers race with privileged kldload/unload
sys/kern/kern_module.c:141 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-0176 |
Medium |
5.3 |
cttyioctl forwards ioctls to ttyvp without vnode reference (UAF race)
sys/kern/tty_tty.c:238 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1070 |
Medium |
5.3 |
Teardown race in scsi_targ_bh: fixed hz/2 sleep with no wakeup allows CTIO completion after softc kfree (UAF)
sys/bus/cam/scsi/scsi_targ_bh.c:342 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1120 |
Medium |
5.3 |
Buddy allocator unbounded merge in ___sym_mfree causes heap OOB write past h[] array
sys/dev/disk/sym/sym_hipd.c:408 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1231 |
Medium |
5.3 |
Use-after-free race in aac_getnext_aif: AIF context list traversed and dereferenced without aac_aifq_lock
sys/dev/raid/aac/aac.c:3519 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1492 |
Medium |
5.3 |
Missing minimum COUNT validation in r300_packet3_check allows OOB read/write past IB buffer
sys/dev/drm/radeon/r300.c:1176 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1909 |
Medium |
5.3 |
acp_hw_fini frees genpd without pm_genpd_remove: dangling UAF in global genpd list
sys/dev/drm/amd/amdgpu/amdgpu_acp.c:217 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2167 |
Medium |
5.3 |
Integer overflow in evergreen_copy_dma size computation (sibling of DF-2091)
sys/dev/drm/radeon/evergreen_dma.c:115 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0021 |
Low |
5.3 |
Signed-int overflow in oversized kmalloc size reconstruction (*kup << PAGE_SHIFT)
sys/kern/kern_slaballoc.c:1202 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1082 |
Low |
5.3 |
miibus device_t UAF race between uether_ifdetach and unprivileged SIOCGIFMEDIA ioctl
sys/bus/u4b/net/usb_ethernet.c:289 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1101 |
Low |
5.3 |
Off-by-one write in decode_nfshandle corrupts root_saddr.sin_len, enabling OOB read via dup_sockaddr
sys/platform/vkernel64/x86_64/autoconf.c:351 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1900 |
Low |
5.3 |
Integer overflow in last_valid_bit can drive clear_bit with negative index into stack bitmap (latent: CONFIG_HSA_AMD not defined)
sys/dev/drm/amd/amdgpu/amdgpu_amdkfd.c:127 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2253 |
Low |
5.3 |
sep==NULL misplaces NUL terminator and truncates output
sys/libkern/hexncpy.c:56 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2534 |
Low |
5.3 |
xa_strategy / xa_size dereference sc without lifetime lock racing xa_terminate_check free
sys/dev/disk/xdisk/xdisk.c:801 |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0365 |
Medium |
5.2 |
ieee80211_media_setup unbounded rate-set merge overflows stack buffer rs_rates[15]: 17 unique rates across 11a/b/g/HALF/QUARTER
sys/netproto/802_11/wlan/ieee80211.c:1564 Β· π |
none |
not_reproduced |
not_testable |
disputed |
orchestrator |
β |
| DF-0633 |
Medium |
5.2 |
ip_fw3_ctl_state_get reads every other CPU RB tree without synchronization
sys/net/ipfw3_basic/ip_fw3_state.c:422 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0683 |
Medium |
5.2 |
hci_disable modifies queues and link list without hci_devlock, racing with hci_intr (panic / mbuf UAF)
sys/netbt/hci_unit.c:250 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0689 |
Medium |
5.2 |
Unsynchronized encaptab list yields use-after-free in encap4_input/encap6_input dispatch
sys/netinet/ip_encap.c:174 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1804 |
Medium |
5.2 |
snp: UAF / infinite-loop race between snpclose and concurrent snplwrite/snp_in on snooped tty
sys/dev/misc/snp/snp.c:484 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-0248 |
Low |
5.2 |
Lockless SLIST traversal in accept_filt_get races with crit_enter-only add/del -> UAF
sys/kern/uipc_accf.c:99 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2204 |
Low |
5.2 |
No device-removal path and non-idempotent add: stale/UAF list nodes and list corruption on re-add
sys/dev/drm/amd/amdgpu/amdgpu_xgmi.c:85 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0477 |
Medium |
5.1 |
ip_fw3_ctl_get_modules: bcopy without checking strlen(module_str) <= sopt_valsize: buffer overflow
sys/net/ipfw3/ip_fw3.c:985 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1540 |
Medium |
5.1 |
Use-after-free read of dangling sch->hook in NGM_TEXT_STATUS after hook disconnect
sys/dev/netif/mn/if_mn.c:474 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1989 |
Medium |
5.1 |
No BAR bounds validation on TPM-reported buffer offsets and sizes
sys/dev/crypto/tpm/tpm_crb.c:187 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-2110 |
Medium |
5.1 |
Negative PCX width/height passes mode-match and drives a multi-exabyte bcopy -> kernel panic / OOB write past the video window
sys/dev/video/fb/pcx/splash_pcx.c:176 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2121 |
Medium |
5.1 |
Unsigned integer underflow in EFI variable name NUL-terminator check causes OOB read / kernel panic
sys/dev/misc/efirt/efidev.c:110 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2410 |
Medium |
5.1 |
TPM-reported CRB buffer offsets/sizes used as BAR offsets without any BAR bounds check (and off-by-one in offset normalization)
sys/dev/crypto/tpm/tpm_crb.c:188 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0008 |
Low |
5.1 |
vfs_setpublicfs() use-after-vput of root vnode + refcount leak on VFS_VPTOFH error
sys/kern/vfs_subr.c:2255 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0024 |
Low |
5.1 |
Heap overflow in linker_search_path() via over-long kldload module name
sys/kern/kern_linker.c:1458 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0426 |
Low |
5.1 |
MFC table protected only by crit_enter (local-CPU) not token/lock: cross-CPU UAF race
sys/netinet6/ip6_mroute.c:359 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0726 |
Low |
5.1 |
if_cloners list and if_cloners_count accessed without synchronization β unprivileged SIOCIFGCLONERS races module load/unload UAF
sys/net/if_clone.c:43 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1186 |
Low |
5.1 |
arcmsr_handle_virtual_command INQUIRY always writes 36 bytes regardless of CAM dxfer_len
sys/dev/raid/arcmsr/arcmsr.c:2947 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2303 |
Low |
5.1 |
Latent negative-length bcopy in fwohci_arcv split-header reassembly can cause kernel panic
sys/bus/firewire/fwohci.c:2729 |
corruption |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-2407 |
Low |
5.1 |
Signed/unsigned promotion in tpm_tis12_write makes a zero-length write read past the stack buffer into the TPM
sys/dev/crypto/tpm/tpm.c:821 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0106 |
Medium |
5.0 |
dkcksum32 OOB read via crafted disklabel in writedisklabel path
sys/kern/subr_disklabel32.c:358 |
no observable runtime panic/leak on the writedisklabel path (bug real in source); sibling DF-0107 demonstrates the shared root-cause panic |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0262 |
Low |
4.8 |
IPv6 NAT destination-translation corrupts source address (copy-paste bug)
sys/net/pf/pf.c:3896 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0615 |
Medium |
4.7 |
Unsynchronized address-selection policy table: UAF race between unprivileged sysctl reader and privileged ioctl mutator
sys/netinet6/in6_src.c:728 |
leak:3384 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0696 |
Medium |
4.7 |
Missing return after NG_FREE_DATA in ng_etf_rcvdata turns discard path into NULL-deref panic
sys/netgraph/etf/ng_etf.c:381 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1035 |
Medium |
4.7 |
bus_dmamap_load_uio uses stale absolute segment index after advancing segs pointer -> KKASSERT panic or OOB write
sys/platform/pc64/x86_64/busdma_machdep.c:961 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2026 |
Medium |
4.7 |
Multi-part SSIF response read loop has no iteration cap -- infinite-loop DoS via malicious BMC
sys/dev/misc/ipmi/ipmi_ssif.c:255 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0076 |
Low |
4.7 |
soisconnected derefs head->so_accf based on inherited child SO_ACCEPTFILTER flag (NULL-deref/UAF race)
sys/kern/uipc_socket2.c:252 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0108 |
Low |
4.7 |
Unvalidated d_secsize in writedisklabel enables oversized I/O transfer
sys/kern/subr_disklabel32.c:336 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0367 |
Low |
4.7 |
lagg_input dereferences ifp->if_lagg unlocked: UAF during concurrent port detach
sys/net/lagg/if_lagg.c:1442 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0396 |
Low |
4.7 |
sta_iterate drops table lock across user callback: entry can be freed concurrently use-after-free
sys/netproto/802_11/wlan/ieee80211_scan_sta.c:1413 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0891 |
Low |
4.7 |
tmpfs_mount dereferences uninitialized root pointer before error check
sys/vfs/tmpfs/tmpfs_vfsops.c:212 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0935 |
Low |
4.7 |
Stack buffer overflow via unbounded ksprintf into psbuf[512] in /proc/<pid>/rlimit
sys/vfs/procfs/procfs_rlimit.c:64 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0978 |
Low |
4.7 |
pmap_remove_all/pmap_remove_specific: pv_entry accessed without hold after releasing pm_spin (speculative UAF)
sys/platform/pc64/x86_64/pmap.c:4840 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1422 |
Low |
4.7 |
isp_pci_mbxdma error cleanup frees DMA through stale base pointer on FC adapters
sys/dev/disk/isp/isp_pci.c:1629 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1425 |
Low |
4.7 |
Unchecked HBA-controlled msg_len in screen-service writes NUL byte at arbitrary scratch offset
sys/dev/raid/iir/iir.c:1717 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1601 |
Low |
4.7 |
ks_kbds slave list torn down without kbd_token in kbdmux_term, racing KBDIO_UNLOADING callback (UAF / list corruption)
sys/dev/misc/kbdmux/kbdmux.c:452 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1986 |
Low |
4.7 |
Missing cleanup on agp_via_attach failure leaks /dev/agpgart with freed softc -> NULL-deref kernel panic
sys/dev/agp/agp_via.c:180 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1988 |
Low |
4.7 |
radeon_sa_bo_manager_fini manipulates SA lists without holding wq.lock (race condition / potential UAF)
sys/dev/drm/radeon/radeon_sa.c:82 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2074 |
Low |
4.7 |
mlxd_strategy dereferences stale/uninitialized bio_driver_info instead of dev->si_drv1
sys/dev/raid/mlx/mlx_disk.c:161 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2147 |
Low |
4.7 |
Unguarded aux_offset[instance] array index from firmware-derived i2c_id
sys/dev/drm/radeon/radeon_dp_auxch.c:63 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2158 |
Low |
4.7 |
_free_safe_mem dereferences hdr->alloc_sz to compute tail/mem before any integrity check (OOB read)
sys/dev/misc/tbridge/safe_mem.c:116 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2396 |
Low |
4.7 |
UAF: sysctl sensor read races kfree of sensor arrays in detach
sys/dev/acpica/aibs/atk0110.c:268 |
corruption |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2544 |
Low |
4.7 |
Missing bounds check in devclass_alloc_unit permits heap underflow write / NULL-deref panic for negative non-wildcard unit
sys/kern/subr_bus.c:1067 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2565 |
Low |
4.7 |
in_delayed_cksum writes through unchecked m_pullup return and silently drops the (possibly reallocated) mbuf pointer
sys/netinet/ip_output.c:949 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2340 |
High |
4.6 |
Multicast filter buffer allocated before device descriptor is fetched -> write through ZERO_LENGTH_PTR in kue_setmulti
sys/bus/u4b/net/if_kue.c:488 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1040 |
Medium |
4.6 |
Unvalidated 32-bit CIS longlink/MFC target address causes wild bus_space_read_1 and kernel panic
sys/bus/pccard/pccard_cis.c:386 |
panic |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1278 |
Medium |
4.6 |
Infinite recursion in mpt_configure_ioc due to tn++ post-increment bypasses retry limit -> stack overflow
sys/dev/disk/mpt/mpt.c:2630 |
none |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-1626 |
Medium |
4.5 |
VCE IB parser lacks per-field dword bounds, enabling OOB read (pass 1) and OOB write (pass 2) into shared SA BO pool
sys/dev/drm/amd/amdgpu/amdgpu_vce.c:724 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0434 |
Low |
4.5 |
bpf_filter_read (knote f_event) reads bd_* state and re-arms callout without bpf_token: race
sys/net/bpf.c:1206 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0511 |
Low |
4.5 |
UAF/stale-socket race in deferred upcall ng_ksocket_incoming2: queued so pointer may be freed by shutdown
sys/netgraph7/ksocket/ng_ksocket.c:985 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0951 |
Low |
4.5 |
Missing vm_token on LIST_REMOVE in zinitna ZONE_INTERRUPT error path allows zlist corruption race with sysctl_vm_zone
sys/vm/vm_zone.c:358 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0968 |
Low |
4.5 |
rijndael_blockEncrypt CBC mode reads/writes full 16-byte block even when numBlocks==0 (non-block-aligned inputLen)
sys/crypto/rijndael/rijndael-api-fst.c:93 |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1679 |
Low |
4.5 |
drm_open updates dev->open_count without drm_global_mutex (documented lock contract violation)
sys/dev/drm/drm_file.c:330 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1878 |
Low |
4.5 |
radeon_dp_work_func walks connector_list without mode_config mutex (acknowledged in source)
sys/dev/drm/radeon/radeon_irq_kms.c:98 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2126 |
Low |
4.5 |
Legacy DMA mmap path returns a kernel virtual address where a page-frame-number is required (type confusion in a_result)
sys/dev/drm/drm_vm.c:66 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2473 |
Low |
4.5 |
isp_handle_platform_atio copies firmware CDB length into 16-byte cdb_bytes without bound (target-mode heap overflow)
sys/dev/disk/isp/isp_freebsd.c:1926 |
limited_write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0895 |
High |
4.4 |
OOB heap read via unvalidated FUSE daemon reply size in INIT/STATFS/STATVFS
sys/vfs/fuse/fuse_vfsops.c:216 |
leak:80bytes |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2571 |
High |
4.4 |
Kernel stack overflow via user-controlled VLA in ngdread() and ngdwrite()
sys/netgraph/ng_device.c:509 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0055 |
Medium |
4.4 |
Use-after-free of shared udev event dictionary in udev_event_externalize (multi-reader)
sys/kern/kern_udev.c:540 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0502 |
Medium |
4.4 |
ng_fec_shutdown infinite loop when member interface destroyed: dangling pointer + unkillable loop
sys/netgraph7/ng_fec.c:1335 |
dos |
inconclusive |
not_testable |
untriaged |
β |
β |
| DF-0528 |
Medium |
4.4 |
ng_fec_rmnode infinite loop when member interface vanished: dangling ptr + unkillable loop
sys/netgraph/fec/ng_fec.c:1224 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1423 |
Medium |
4.4 |
Integer overflow in raw-service ioctl bounds check bypasses scratch-size guard
sys/dev/raid/iir/iir.c:1036 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1516 |
Medium |
4.4 |
Integer overflow in buffer bounds check bypasses offset validation in check_overlay_src
sys/dev/drm/i915/intel_overlay.c:1033 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2081 |
Medium |
4.4 |
Missing privilege check on SIOCGATHSPECTRAL allows unprivileged radio reconfiguration and enables memory bugs
sys/dev/netif/ath/ath/if_ath_spectral.c:181 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2203 |
Medium |
4.4 |
Unbounded write to stack array tmp_topology overflows when hive exceeds 4 nodes
sys/dev/drm/amd/amdgpu/amdgpu_xgmi.c:66 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2592 |
Medium |
4.4 |
Kernel heap memory disclosure via ip_fw3_ctl_set_get unbounded bcopy from 4-byte field
sys/net/ipfw3/ip_fw3_set.c:206 |
leak:4088 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0059 |
Low |
4.4 |
Uninitialized segs[1]/segs[0] dereference when fewer than 2 PT_LOAD segments
sys/kern/link_elf.c:399 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0642 |
Low |
4.4 |
Signed nssid bypass in ieee80211_scan_copy_ssid causes heap buffer overflow and kernel panic
sys/netproto/802_11/wlan/ieee80211_scan.c:296 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0746 |
Low |
4.4 |
Use-after-free in l2cap_rtx: req->lr_id read after zfree in DPRINTF
sys/netbt/l2cap_misc.c:190 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0853 |
Low |
4.4 |
high_sierra flag is sticky β type confusion when descriptors are mixed in crafted ISO
sys/vfs/isofs/cd9660/cd9660_vfsops.c:334 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1304 |
Low |
4.4 |
mlx_user_command DCDB fixup writes dcdb_physaddr past undersized heap buffer
sys/dev/raid/mlx/mlx.c:1872 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1372 |
Low |
4.4 |
oce_handle_passthrough writes through direct user-pointer dereference (SMAP panic)
sys/dev/netif/oce/oce_if.c:1806 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1592 |
Low |
4.4 |
Unvalidated csio->cdb_len overflows cmd_pkt->cmd.pkt_a.cdb[16] in tws_execute_scsi
sys/dev/raid/tws/tws_cam.c:757 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1651 |
Low |
4.4 |
sbsh: SIOCLOADFIRMW firmware pointer dereferenced in kernel without copyin -> fatal page fault
sys/dev/netif/sbsh/if_sbsh.c:409 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1700 |
Low |
4.4 |
vn: signed integer overflow in file-backed disk-size math (vn->sc_size = vn_size * PAGE_SIZE / DEV_BSIZE)
sys/dev/disk/vn/vn.c:559 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1838 |
Low |
4.4 |
PSP firmware header fields used without bounds validation: heap overflow and OOB read on corrupt SOS/ASD firmware
sys/dev/drm/amd/amdgpu/psp_v3_1.c:126 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1905 |
Low |
4.4 |
Missing AcpiRemoveNotifyHandler in detach leaves dangling ACPI notify handler: UAF/freed-text jump after kldunload
sys/dev/acpica/acpi_dock/acpi_dock.c:518 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1915 |
Low |
4.4 |
ida_detach frees DMA maps and QCB memory while I/O may be in flight: UAF/panic
sys/dev/raid/ida/ida.c:276 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2009 |
Low |
4.4 |
Negative uio_resid in led_write causes guaranteed kernel panic (OOB write to non-canonical address)
sys/dev/misc/led/led.c:232 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2150 |
Low |
4.4 |
dm-linear loads tables with no offset/length bounds check; offset arithmetic overflows and breaks device confinement
sys/dev/disk/dm/linear/dm_target_linear.c:75 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2347 |
Low |
4.4 |
Lockless check/use race on bus->ifp between usbpf_xfertap and clone/teardown causes NULL-deref/UAF panic
sys/bus/u4b/usb_pf.c:362 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2381 |
Low |
4.4 |
Use-after-free in detach: deferred ACPI notify callback runs on freed softc (AcpiOsWaitEventsComplete is a no-op in DragonFly)
sys/dev/acpica/acpi_fujitsu/acpi_fujitsu.c:331 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2515 |
Low |
4.4 |
SCSI CDB heap buffer overflow past orb[7] into ind_ptr on 16-byte CDBs
sys/dev/disk/sbp/sbp.c:2337 |
limited_write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1075 |
Medium |
4.3 |
Multicast filter buffer allocated before device descriptor is read -> OOB write / kernel panic on interface up
sys/bus/u4b/net/if_kue.c:488 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0394 |
Low |
4.3 |
SSID/rates/xrates copies rely solely on upstream parse_beacon validation: KASSERT is no-op on production kernels
sys/netproto/802_11/wlan/ieee80211_scan_sta.c:282 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1073 |
Low |
4.3 |
pnp_check_quirks PNP_QUIRK_EXTRA_IO writes past ic_port[ISA_NPORT] without bounds check
sys/bus/isa/pnp.c:335 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1121 |
Low |
4.3 |
Extended SCSI message with length=7 causes 1-byte DMA write past msgin[8] into lastmsg
sys/dev/disk/sym/sym_hipd.c:1652 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1654 |
Medium |
4.2 |
sbsh: RX descriptor length=0 with only 2046 bytes after m_adj(m,2) -> heap overflow
sys/dev/netif/sbsh/if_sbsh.c:767 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1968 |
Medium |
4.2 |
Integer overflow in radeon fbcon size math yields undersized GEM object with stale full pitch
sys/dev/drm/radeon/radeon_fb.c:154 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-0119 |
Info |
4.2 |
Latent OOB write if aux_data/aux_size invariant breaks
sys/kern/subr_diskiocom.c:207 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1699 |
Medium |
4.1 |
vn: unsynchronized UAF race between vnstrategy I/O path and VNIOCDETACH/vnclear
sys/dev/disk/vn/vn.c:260 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1744 |
Medium |
4.1 |
mpt_pci: use-after-free - DMA request pool freed before interrupt handler torn down
sys/dev/disk/mpt/mpt_pci.c:657 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-2607 |
Medium |
4.1 |
TOCTOU/UAF on bus->ifp between usbpf_xfertap (bus-locked) and usbpf_clone_destroy (unlocked)
sys/bus/u4b/usb_pf.c:362 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0298 |
Low |
4.1 |
ng_type->refs refcount mutated without typelist lock
sys/netgraph7/netgraph/ng_base.c:636 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0523 |
Low |
4.1 |
Deferred INTERNAL_UPCALL re-invokes upcall against torn-down node/socket: UAF/NULL deref (DF-0511 v1 twin)
sys/netgraph/ksocket/ng_ksocket.c:623 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0637 |
Low |
4.1 |
ngt_close frees sc while ngt_timeout callout can still reference it (UAF / deadlock)
sys/netgraph/tty/ng_tty.c:256 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0985 |
Low |
4.1 |
mtw_ucode_write heap overflow via oversized firmware ILM/DLM lengths (firmware-supplied metadata overflows txd_fw->buf[])
sys/bus/u4b/wlan/if_mtw.c:1056 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1094 |
Low |
4.1 |
Use-after-free of acpi_event_info during detach races in-flight AcpiOsExecute event work
sys/bus/gpio/gpio_acpi/gpio_acpi.c:341 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1100 |
Low |
4.1 |
Unsynchronized use-after-free of bus->ifp in usbpf_xfertap (DONE tap path)
sys/bus/u4b/usb_pf.c:362 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1220 |
Low |
4.1 |
acpi_eval_osc() dereferences _OSC return without validating it is a Buffer
sys/dev/acpica/acpi.c:1326 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1303 |
Low |
4.1 |
mlx_getslot uses firmware-reported me_max_commands as array bound without clamping to MLX_NSLOTS
sys/dev/raid/mlx/mlx.c:1962 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1701 |
Low |
4.1 |
vn: unlocked SLIST vn_list mutations vs SLIST_FOREACH in vnget -> list corruption / UAF
sys/dev/disk/vn/vn.c:137 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1831 |
Low |
4.1 |
ichwd_attach fail path dereferences ZERO_LENGTH_PTR softc, panicking on attach failure
sys/dev/misc/ichwd/ichwd.c:603 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1842 |
Low |
4.1 |
amr_cam_attach overflows amr_cam_sim[] if controller reports more than AMR_MAX_CHANNELS channels
sys/dev/raid/amr/amr_cam.c:170 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1906 |
Low |
4.1 |
UAF on clockmod_dom in clockmod_dom_sysctl_select across sysctl_handle_string sleep
sys/dev/powermng/clockmod/clockmod.c:430 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1963 |
Low |
4.1 |
Use-after-free in MOD_UNLOAD: kfree(k8pnow_current_state) before sysctl_ctx_free
sys/dev/powermng/powernow/powernow.c:322 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2082 |
Low |
4.1 |
amrd_detach runs without synchronizing in-flight bios UAF in amrd_intr after controller detach
sys/dev/raid/amr/amr_disk.c:276 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2116 |
Low |
4.1 |
UAF/TOCTOU race: IRQ handler dereferences sc->mpu while detach frees it (mpu401_uninit runs before emu_intr_unregister)
sys/dev/sound/pci/emu10kx-midi.c:223 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2143 |
Low |
4.1 |
splash_unregister leaves stale decoder pointers in decoder_set (use-after-unload)
sys/dev/video/fb/splash.c:146 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2228 |
Low |
4.1 |
ACPI notify-handler use-after-free in detach via DragonFly no-op AcpiOsWaitEventsComplete stub
sys/gnu/dev/misc/apple_gmux/apple-gmux.c:919 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2261 |
Low |
4.1 |
PROBE_SERIAL_NUM_1 OOB-read of VPD 0x80 response and XPT_GDEV_TYPE overflow of cgd->serial_num[252]
sys/bus/cam/cam_xpt.c:6335 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2307 |
Low |
4.1 |
UAF race in gpio_acpi_unmap_aei: deferred AEI event handler dereferences freed info struct
sys/bus/gpio/gpio_acpi/gpio_acpi.c:347 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2326 |
Low |
4.1 |
pci_devq traversal in PCIOCGETCONF is unprotected: pci_token is single-taker races pci_freecfg (UAF)
sys/bus/pci/pci_user.c:59 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2374 |
Low |
4.1 |
Use-after-free race between acpiioctl() hook dispatch and acpi_deregister_ioctl()
sys/dev/acpica/acpi.c:3407 |
corruption |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2393 |
Low |
4.1 |
Use-after-free of softc in notify handler during detach (AcpiOsWaitEventsComplete is a no-op) DF-2381 class
sys/dev/acpica/acpi_toshiba/acpi_toshiba.c:273 |
panic |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2409 |
Low |
4.1 |
Use-after-free via un-drained discard_buffer_callout on device detach
sys/dev/crypto/tpm/tpm20.c:138 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2454 |
Low |
4.1 |
Buggy ksnprintf length tracking in dm_target_stripe_table/info overruns heap params buffer when output is truncated
sys/dev/disk/dm/striped/dm_target_striped.c:170 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2457 |
Low |
4.1 |
fd_detach stops only two of fd three callouts leaving fd_iotimeout armed over freed softc
sys/dev/disk/fd/fd.c:1090 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2526 |
Low |
4.1 |
trm_detach tears down DMA/IOPORT resources before bus_teardown_intr interrupt handler can execute against freed memory during detach
sys/dev/disk/trm/trm.c:3696 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2528 |
Low |
4.1 |
Unlocked vn_softc state in vnstrategy/vnget races vnclear -> NULL deref or UAF
sys/dev/disk/vn/vn.c:272 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2530 |
Low |
4.1 |
Unclamped sense_len overflows 32-byte inline sense_data buffer on CHECK CONDITION
sys/dev/disk/vpo/vpo.c:266 |
limited_write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0368 |
Info |
4.1 |
lagg_clone_create error path calls if_free on embedded ifnet: latent double-free if protocol attach ever fails
sys/net/lagg/if_lagg.c:304 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0385 |
Info |
4.1 |
config_red kfrees caller-owned possibly-embedded struct on red_lookup_depth==0 path: latent UAF β same as v1
sys/net/dummynet3/ip_dummynet3.c:1364 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1710 |
Info |
4.1 |
amdgpu_vcn: firmware header fields used without bounds checks - heap overflow via crafted firmware (defense-in-depth)
sys/dev/drm/amd/amdgpu/amdgpu_vcn.c:126 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1904 |
Info |
4.1 |
snprintf_count returns UINT_MAX when called with bufSize==0 risking wild-pointer writes (latent: no caller in tree)
sys/dev/drm/amd/display/dc/dcn10/dcn10_hw_sequencer_debug.c:48 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2314 |
Medium |
4.0 |
Missing large_len>0 guard in ANSI-string trim walks buf[] backwards (OOB stack read + NUL write + stack info-leak via device desc)
sys/bus/isa/pnp.c:399 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2315 |
Low |
4.0 |
pnp_check_quirks PNP_QUIRK_EXTRA_IO writes ic_port[] past ISA_NPORT without bounds check
sys/bus/isa/pnp.c:335 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2525 |
Low |
4.0 |
trm_check_eeprom default-load writes 8-byte u_long into 4-byte field schema 122-byte OOB write of static trm_eepromBuf[] on x86_64 at attach
sys/dev/disk/trm/trm.c:3304 |
limited_write |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0095 |
Low |
3.9 |
Per-process shmmap_state sized at alloc-time shmseg but all loops re-read LIVE root-writable shminfo.shmseg - OOB when raised
sys/kern/sysv_shm.c:284 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0295 |
Low |
3.9 |
UAF race in setappie: non-atomic pointer swap/free vs concurrent beacon/IE readers
sys/netproto/802_11/wlan/ieee80211_ioctl.c:2272 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0597 |
Low |
3.9 |
Use-after-free in ng_pptpgre (netgraph7) session timer callbacks after hook disconnect frees hpriv
sys/netgraph7/pptpgre/ng_pptpgre.c:494 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0629 |
Low |
3.9 |
ng_ether_rcv_upper skips bridge_input_p handoff, bypassing bridge input filtering on upper-hook-injected packets
sys/netgraph/ether/ng_ether.c:582 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2014 |
Low |
3.9 |
radeon_gart_unbind GPU-page index t desyncs from CPU-page index p when a page slot is NULL, leaving stale DMA mappings in the GART table
sys/dev/drm/radeon/radeon_gart.c:254 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0413 |
Info |
3.9 |
Primitive parse functions write to output buffer without checking *buflen: missing defense-in-depth bounds check
sys/netgraph7/netgraph/ng_parse.c:332 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2101 |
Low |
3.7 |
DSCSR_10FDX status branch sets IFM_HDX instead of IFM_FDX (duplex misreport -> duplex-mismatch DoS)
sys/dev/netif/mii_layer/amphy.c:268 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0147 |
Low |
3.6 |
Signed/unsigned accounting: int64_t delta added to uint64_t ac_bytes can wrap
sys/kern/vfs_quota.c:160 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0209 |
Low |
3.6 |
clist_nextc trusts caller cp without validating within live ring window
sys/kern/tty_subr.c:229 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0537 |
Low |
3.6 |
TOCTOU race on priv->datasock in ng_connect_data: check unlocked, set under lock
sys/netgraph7/socket/ng_socket.c:790 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0549 |
Low |
3.6 |
netmap_obj_offset returns 0 on error indistinguishable from valid offset 0: masks failures
sys/net/netmap/netmap_mem2.c:227 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0639 |
Low |
3.6 |
Compress path avail_in integer underflow (avail_in = inlen - 1) on 0-length mbuf
sys/netgraph7/deflate/ng_deflate.c:451 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0851 |
Low |
3.6 |
Stale dereference of rootp after pribp released β use-after-free style read on buffer cache recycle
sys/vfs/isofs/cd9660/cd9660_vfsops.c:435 |
none |
not_reproduced |
fixed |
untriaged |
β |
β |
| DF-1005 |
Low |
3.6 |
usbd_get_phys strlen(phys)-1 underflows to 255 when phys empty -> OOB null-byte write at phys[255] (latent)
sys/bus/u4b/usb_device.c:2273 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1043 |
Low |
3.6 |
ufoma sysctl handlers access freed sc_modetable after detach (UAF)
sys/bus/u4b/serial/ufoma.c:453 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1525 |
Low |
3.6 |
Unbounded channel index causes OOB write past openedaudio[] in sound_oss_sysinfo
sys/dev/sound/pcm/sound.c:1308 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0099 |
Low |
3.4 |
Off-by-one heap NUL-byte overflow in vfs_mountroot_try via ksscanf width/buffer-size mismatch
sys/kern/vfs_conf.c:419 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0462 |
Low |
3.4 |
bzero targets wrong field (&conf not &stats) with wrong size (session_stats=32 not sess_config=8): 24-byte intra-struct overflow
sys/netgraph7/l2tp/ng_l2tp.c:748 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0722 |
Low |
3.4 |
Unit-number bitmap length tracked in unsigned char: truncates after ~2040 nodes causing duplicate unit allocation (LATENT β file does not compile)
sys/netgraph7/ng_sppp.c:103 |
dos |
inconclusive |
β |
untriaged |
β |
β |
| DF-1241 |
Low |
3.4 |
iwi_cmd uint8_t len truncates iv_appie_wpa length, allowing up to 135-byte overflow of cmd descriptor ring
sys/dev/netif/iwi/if_iwi.c:1784 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1686 |
Low |
3.4 |
agp: off-by-one in agp_mmap aperture bounds check exposes one physical page past the AGP aperture
sys/dev/agp/agp.c:860 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2205 |
Low |
3.4 |
Error path leaves half-initialized device on hive list and masks subsequent failures
sys/dev/drm/amd/amdgpu/amdgpu_xgmi.c:85 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2238 |
Low |
3.4 |
Off-by-two OOB write when full input line terminated with Enter
sys/ddb/db_input.c:264 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2399 |
Low |
3.4 |
as_isopen boolean refcount mismatch causes cross-process memory wipe and device_unbusy on still-open device
sys/dev/agp/agp.c:781 |
corruption |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1078 |
Medium |
3.3 |
vkernel DDB backtrace leaks kernel addresses to world-readable msgbuf (DF-1077 class) + missing Xfast_syscall boundary stop
sys/platform/vkernel64/x86_64/db_trace.c:280 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0216 |
Low |
3.3 |
sysctl_kcollect_data copies past user buffer (unsigned underflow in bounds check)
sys/kern/kern_collect.c:235 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1232 |
Low |
3.3 |
Kernel heap address leak to userspace via fibctx->unique in aac_open_aif
sys/dev/raid/aac/aac.c:3451 |
leak:4 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1275 |
Low |
3.3 |
VDDCI GPIO-control path overflows SmioTable1.Pattern[4] when vddci count>4
sys/dev/drm/amd/powerplay/smumgr/tonga_smumgr.c:341 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1321 |
Low |
3.3 |
OOB read in envy24mixer_setrecsrc: recording-source bitmask used as array index into envy24_mixmap[25]
sys/dev/sound/pci/envy24.c:2038 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1602 |
Low |
3.3 |
draw_txtmouse reads/writes scp->scr past vtb_size on the bottom screen row (FIXME-acknowledged)
sys/dev/misc/syscons/scvgarndr.c:340 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1702 |
Low |
3.3 |
scmouse: heap buffer overflow in mouse_cut - per-line \r bytes not accounted for in cut_buffer sizing
sys/dev/misc/syscons/scmouse.c:92 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2129 |
Low |
3.3 |
apple_smc_mmio_key_read silently under-fills caller buffer, leaking kernel stack via sysctl
sys/dev/apple/smc/smc_mmio.c:75 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2284 |
Low |
3.3 |
sgwrite/sgread leak sg_rdwr + ccb + buf when read() is never matched; sgoninvalidate/sgcleanup never drain rdwr_done (memory exhaustion + invalidation UAF surface)
sys/bus/cam/scsi/scsi_sg.c:169 |
leak |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0169 |
Info |
3.3 |
sysref_get has no refcount overflow guard
sys/kern/kern_sysref.c:66 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0517 |
Info |
3.3 |
IPV6_FW_GET leaks one unused mbuf per call + walks chain without lock
sys/net/ip6fw/ip6_fw.c:1101 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0140 |
Low |
3.0 |
Unchecked queue argument -> OOB write on wc_blocked[queue]
sys/kern/subr_sleepqueue.c:266 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0620 |
Low |
3.0 |
Off-by-one OOB write in IPV6_CHECKSUM offset validation in rip6_output
sys/netinet6/raw_ip6.c:403 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0728 |
Low |
3.0 |
CHANNEL/XCHANNEL priority inversion between attachv and chan_change β 4-byte overflow if driver sets both bits
sys/netproto/802_11/wlan/ieee80211_radiotap.c:103 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1108 |
Low |
3.0 |
Off-by-one write in decode_nfshandle corrupts root_saddr.sin_len (pc64 sibling of DF-1101)
sys/platform/pc64/x86_64/autoconf.c:274 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1348 |
Low |
3.0 |
Unbounded bcopy of CDB into CmdBlock[12] overflows SRB on >12-byte CDBs
sys/dev/disk/amd/amd.c:399 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1531 |
Low |
3.0 |
hpt_get_logical_devices writes one DEVICEID before the count check (4-byte heap overflow when nMaxCount=0)
sys/dev/raid/hptmv/gui_lib.c:479 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1736 |
Low |
3.0 |
vinumio: sappend in format_config writes 1-2 bytes past malloc config buffer when text reaches end
sys/dev/raid/vinum/vinumio.c:415 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1771 |
Low |
3.0 |
intel_dsi_vbt: unbounded attacker-controlled len in mipi_exec_send_packet causes heap OOB read (v3 sequences)
sys/dev/drm/i915/intel_dsi_vbt.c:124 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1772 |
Low |
3.0 |
intel_dsi_vbt: integer overflow in DSI timing math writes wrong DPHY/Hs-to-Lp register values
sys/dev/drm/i915/intel_dsi_vbt.c:566 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1833 |
Low |
3.0 |
amdpm_bread returns unbounded slave-supplied block count, enabling OOB read and kernel-stack info leak
sys/dev/powermng/amdpm/amdpm.c:613 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1962 |
Low |
3.0 |
Undersized freqs_available[80] overflows when formatting 16-state list (80 chars + NUL = 81)
sys/dev/powermng/powernow/powernow.c:343 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0112 |
Info |
3.0 |
__sccl scanset range-fill writes tab[256] when range endpoint is 0xFF
sys/kern/subr_scanf.c:605 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0154 |
Info |
3.0 |
KKASSERT-only invariants vanish on production kernels (UAF/queue-corruption risk)
sys/kern/kern_systimer.c:148 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1378 |
Low |
2.9 |
Off-by-one NUL write past bt->model[5] in bt_fetch_adapter_info on every attach
sys/dev/disk/buslogic/bt.c:420 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2345 |
Low |
2.9 |
INQUIRY EVPD response fabrication writes to CCB data buffer without validating dxfer_len
sys/bus/u4b/storage/umass.c:2326 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0335 |
Info |
2.9 |
in_pcbportrange can invert hi<lo causing u_short underflow and out-of-range port binds
sys/netinet/in_pcb.c:2533 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1792 |
Info |
2.7 |
puc: dangling ivars pointer in attach error path - use-after-free of puc_device
sys/dev/misc/puc/puc.c:327 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0177 |
Low |
2.5 |
cttykqfilter forwards knote to ttyvp with no token and no reference
sys/kern/tty_tty.c:284 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0360 |
Low |
2.5 |
nm_dump_buf writes unbounded hex dump into fixed 8 KiB static buffer _dst
sys/net/netmap/netmap.c:322 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0512 |
Low |
2.5 |
Unbounded sockaddr stored into fixed-size struct sockaddr in accept response: type confusion latent
sys/netgraph7/ksocket/ng_ksocket.c:1250 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0635 |
Low |
2.5 |
Pred1Compress outbuf overflow: input size bound check off by 6, up to 7-byte heap OOB write
sys/netgraph7/ng_pred1.c:397 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1338 |
Low |
2.5 |
SGE scatter/gather table bounds mismatch allows latent OOB write in sili_load_prb_callback
sys/dev/disk/sili/sili.c:1245 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1365 |
Low |
2.5 |
fd_detach does not stop fd->tohandle callout (UAF on detach race)
sys/dev/disk/fd/fd.c:1090 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1571 |
Low |
2.5 |
xa_size dereferences sc with no lock; UAF if xa_terminate_check runs concurrently
sys/dev/disk/xdisk/xdisk.c:828 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1928 |
Low |
2.5 |
Off-by-one NUL byte write in acpi_battery_clean_str past struct acpi_bif / ioctl union
sys/dev/acpica/acpi_battery.c:326 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2433 |
Low |
2.5 |
TOCTOU on CCDF_INITED allows concurrent CCDIOCSET to leak memory and vnodes
sys/dev/disk/ccd/ccd.c:1310 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2563 |
Low |
2.5 |
Compress path heap buffer overflow via incorrect worst-case expansion bound
sys/netgraph7/ng_pred1.c:397 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0539 |
Info |
2.5 |
ieee80211_node_dectestref implements non-atomic decrement-and-test: latent UAF trap
sys/netproto/802_11/wlan/ieee80211_dragonfly.c:497 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0601 |
Info |
2.5 |
ng_source_rcvdata races unsynchronized on snd_queue (latent: file is orphaned and non-compiling)
sys/netgraph7/ng_source.c:270 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-0717 |
Info |
2.5 |
Memory leak in netmap_open when devfs_set_cdevpriv fails β kfree missing on error path
sys/net/netmap/netmap_freebsd.c:382 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2192 |
Info |
2.5 |
GEM object leak on pin_pages failure in batch pool create path
sys/dev/drm/i915/i915_gem_batch_pool.c:133 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2375 |
Info |
2.5 |
Off-by-one NUL heap write in acpi_battery_clean_str past the _BIF oeminfo field
sys/dev/acpica/acpi_battery.c:321 |
none |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-1790 |
Medium |
2.4 |
amdgpu_atombios_dp: OOB kernel-stack read in DP link training via malicious sink MAX_LANE_COUNT > 4
sys/dev/drm/amd/amdgpu/atombios_dp.c:264 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-0450 |
Medium |
2.3 |
OOB kernel heap read in ng_string_unparse via unbounded strlen on binary data without NUL terminator
sys/netgraph/netgraph/ng_parse.c:722 |
leak:2 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0846 |
Low |
2.3 |
Credential and vnode-reference leak when Q_QUOTAON re-enables quotas on same vnode
sys/vfs/ufs/ufs_quota.c:437 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0869 |
Low |
2.3 |
Missing bounds validation in hammer_format_volume_header allows signed-int64 overflow in vol_buf_beg/end
sys/vfs/hammer/hammer_volume.c:652 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0957 |
Low |
2.3 |
kmem_alloc3/kmem_alloc_attr ignore vm_map_insert return; round_page() overflow to size=0 yields bogus non-zero addr
sys/vm/vm_kern.c:219 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1079 |
Low |
2.3 |
Unbounded length in m/M GDB commands overflows remcomOutBuffer / reads remcomInBuffer out of bounds
sys/cpu/x86_64/misc/x86_64-gdbstub.c:313 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1080 |
Low |
2.3 |
P command register-index check (regno < NUM_REGS=22) allows stack OOB write past the registers struct
sys/cpu/x86_64/misc/x86_64-gdbstub.c:438 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1270 |
Low |
2.3 |
Unchecked csio->cdb_len bcopy overflows 32-byte CDB32 in SCSI IO request frame
sys/dev/raid/mps/mps_sas.c:1685 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1500 |
Low |
2.3 |
Unbounded ksprintf into fixed 8-byte schan.hookname in musycc_newhook
sys/dev/misc/musycc/musycc.c:167 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1688 |
Low |
2.3 |
agp: signed-int loop variable in agp_generic_unbind_memory overflows for >2 GB allocations
sys/dev/agp/agp.c:609 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1803 |
Low |
2.3 |
snp: SNPGTTY writes 8-byte cdev_t into 4-byte dev_t user buffer - kernel pointer leak + 4-byte overrun
sys/dev/misc/snp/snp.c:582 |
leak:4 |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1816 |
Low |
2.3 |
ppatomfwctrl: off-by-one stride in GPIO-pin lookup causes unconditional 7-byte OOB read past table allocation
sys/dev/drm/amd/powerplay/hwmgr/ppatomfwctrl.c:183 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2416 |
Low |
2.3 |
Heap OOB read+write via unbounded sense_len in autosense bcopy
sys/dev/disk/advansys/adwcam.c:1321 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0085 |
Low |
1.9 |
taskqgroup_drain_all uses wrong loop bound (ncpus instead of tqg_cnt) - latent UAF if API adopted
sys/kern/subr_gtaskqueue.c:806 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0183 |
Low |
1.9 |
UAF of tsleep wait channel when racing unregister of in-flight resident image
sys/kern/imgact_resident.c:291 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0336 |
Low |
1.9 |
tcp6_getcred hands live cred pointer to blocking copyout (UAF window) unlike IPv4 path
sys/netinet/tcp_subr.c:1366 |
leak |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0381 |
Low |
1.9 |
NGM_LISTHOOKS dereferences hook->peer without lock or ref: TOCTOU NULL-deref/UAF vs concurrent disconnect
sys/netgraph/netgraph/ng_base.c:1374 |
dos |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0506 |
Low |
1.9 |
ng_fec_ether_cmdmulti iterates if_multiaddrs lockless + leaks membership on partial kmalloc failure
sys/netgraph7/ng_fec.c:542 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1055 |
Low |
1.9 |
sgwrite truncates uio_resid to int and does not validate reply_len, enabling allocation-size confusion
sys/bus/cam/scsi/scsi_sg.c:648 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1195 |
Low |
1.9 |
Missing goto out after ME/RLC firmware size checks allows malformed firmware use and kernel heap OOB read
sys/dev/drm/radeon/r600.c:2559 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1201 |
Low |
1.9 |
VT_PROCESS scp->proc stored without refcount; signal_vt_rel/acq PHOLD can hit freed/reused proc struct (UAF / pid-recycling)
sys/dev/misc/syscons/syscons.c:1251 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1266 |
Low |
1.9 |
Missing bounds validation on drm_fbdev_overalloc enables u32 overflow in framebuffer height
sys/dev/drm/drm_fb_helper.c:2014 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1826 |
Low |
1.9 |
intel_guc: intel_guc_fini leaves shared_data_vaddr dangling after freeing mapping -> UAF
sys/dev/drm/i915/intel_guc.c:187 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1877 |
Low |
1.9 |
dp_work and audio_work not flushed in radeon_irq_kms_fini: UAF after device teardown
sys/dev/drm/radeon/radeon_irq_kms.c:313 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2073 |
Low |
1.9 |
ResetKeyCacheEntry MIC-clear path lacks runtime bounds check on entry+64 (HALASSERT inert in release)
sys/dev/netif/ath/ath_hal/ar5212/ar5212_keycache.c:86 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2220 |
Low |
1.9 |
kobject_release leaks kobj->name string allocated by kobject_init_and_add
sys/dev/drm/linux_kobject.c:39 |
denial_of_service |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2235 |
Low |
1.9 |
Read-before-bounds-check: 1-byte OOB read of source buffer in UCS-2/UTF-16 input parsing
sys/libiconv/iconv_ucs.c:247 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2430 |
Low |
1.9 |
Off-by-one NUL write past bt->model[5] in Inquire-Model parsing
sys/dev/disk/buslogic/bt.c:420 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2444 |
Low |
1.9 |
dm_dev_create assigns freed dmv to *dmvp on insert-failure path
sys/dev/disk/dm/dm_dev.c:264 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2456 |
Low |
1.9 |
FD_FORM formats with unbounded attacker nsecs over-reading fd_formb heap buffer via DMA/PIO
sys/dev/disk/fd/fd.c:2311 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0160 |
Info |
1.9 |
xio_init_kbuf silently truncates when kbytes exceeds XIO_INTERNAL_SIZE
sys/kern/kern_xio.c:113 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0251 |
Info |
1.9 |
PC_TO_INDEX u_quad_t overflow on 64-bit (correctness only, bounds check prevents OOB)
sys/kern/subr_prof.c:86 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0377 |
Info |
1.9 |
config_red error path kfrees struct that may be embedded member of dn_pipe: latent UAF/invalid-free
sys/net/dummynet/ip_dummynet.c:1359 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0440 |
Info |
1.9 |
red_pkttime computed as int64 then stored into int: truncation/overflow for jumbo MTU or low m2
sys/net/altq/altq_hfsc.c:451 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0608 |
Info |
1.9 |
sizeof(ips) pointer-vs-struct typo in NGM_CISCO_GET_IPADDR response sizing
sys/netgraph7/iface/ng_iface.c:724 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0939 |
Info |
1.9 |
Unbounded bcopy of sv_name into 256-byte stack buffer in procfs_dotype (latent; no in-tree sv_name >= 256B)
sys/vfs/procfs/procfs_type.c:54 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0980 |
Info |
1.9 |
pmap_remove_pages skips cross-CPU TLB invalidation (cpu_invltlb only, no smp_invltlb)
sys/platform/pc64/x86_64/pmap.c:5727 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1119 |
Info |
1.9 |
Firmware header fields used as array indices without bounds checks (heap OOB read/write via corrupted ucode)
sys/dev/drm/radeon/cik.c:1873 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1941 |
Info |
1.9 |
Detach does not drain AcpiOsExecute callbacks: stale softc use-after-free (latent, AcpiOsWaitEventsComplete is no-op stub)
sys/dev/acpica/acpi_cmbat.c:154 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1999 |
Info |
1.9 |
amdgpu_gfx_compute_mqd_sw_fini kfrees mqd_backup without NULLing the slot (double-free landmine)
sys/dev/drm/amd/amdgpu/amdgpu_gfx.c:366 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1621 |
Low |
1.1 |
Unbounded bcopy of user-controlled csio->cdb_len into 32-byte CDB32 frame (DF-1356/1547 class)
sys/dev/raid/mrsas/mrsas_cam.c:489 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2068 |
Low |
1.1 |
Unchecked capacity*struct_size multiplication can overflow in construct/presized/reserve (latent heap OOB)
sys/dev/drm/amd/display/dc/basics/vector.c:43 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0082 |
Info |
1.1 |
Latent heap overflow in sbuf_extend via int truncation of caller length (zero callers, unreachable today)
sys/kern/subr_sbuf.c:150 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0215 |
Info |
1.1 |
Wait-counter inc/dec can overflow into control bits (theoretical)
sys/kern/lwkt_serialize.c:271 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0230 |
Info |
1.1 |
table_blocks computed before entries/entsz validation (fragile ordering)
sys/kern/subr_diskgpt.c:131 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1208 |
Info |
1.1 |
intel_runtime_pm_get_if_in_use() returns true without taking wakeref on DragonFly, causing unbalanced put() underflow
sys/dev/drm/i915/intel_runtime_pm.c:4039 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1263 |
Info |
1.1 |
dsp_oss_syncgroup frees inserted smrd without removing from sg->members on unreachable M_WAITOK error branch
sys/dev/sound/pcm/dsp.c:2913 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1930 |
Info |
1.1 |
chn_removefeeder leaves stale parent pointer on new chain head (latent UAF)
sys/dev/sound/pcm/feeder.c:253 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0908 |
Low |
0.8 |
size_t underflow in trailing-slash strip causes OOB access on empty mount path
sys/vfs/dirfs/dirfs_vfsops.c:137 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1858 |
Low |
0.8 |
Negative framebuffer offset in bmp_SetPix via RLE delta-move: OOB write below va_window
sys/dev/video/fb/bmp/splash_bmp.c:258 |
none |
not_reproduced |
β |
untriaged |
β |
β |
| DF-0094 |
Info |
0.8 |
shmrealloc initializes OLD shmsegs[] instead of newsegs[] - heap OOB write + uninit new array (dead code)
sys/kern/sysv_shm.c:683 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0721 |
Info |
0.8 |
Build break: IFP2SP and SP2IFP macros referenced 12 times but never defined anywhere in sys/
sys/netgraph7/ng_sppp.c:254 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1379 |
Info |
0.8 |
btexecuteccb SG-list copy has no nseg<=BT_NSEG bound (latent heap overflow)
sys/dev/disk/buslogic/bt.c:836 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1824 |
Info |
0.8 |
aac_cam: unbounded CDB bcopy overflows struct aac_srb.cdb[16] into sg_map
sys/dev/raid/aac/aac_cam.c:443 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1896 |
Info |
0.8 |
intel_csr_ucode_fini kfree dmc_payload without NULLing pointer: dangling pointer (latent UAF)
sys/dev/drm/i915/intel_csr.c:557 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2144 |
Info |
0.8 |
decoders counter never increments except at DELTA-aligned boundaries (registration array logic bug)
sys/dev/video/fb/splash.c:124 |
corruption |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2371 |
Low |
0.5 |
twofish_set_key performs no key-length validation enabling stack/struct OOB writes and mk_tab corruption on out-of-range key_len_bits
sys/crypto/twofish/twofish.c:425 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0087 |
Info |
0.5 |
Signed integer overflow (C UB) in new_unrhdr last computation when high=INT_MAX
sys/kern/subr_unit.c:257 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0153 |
Info |
0.5 |
EXCLWAIT bitfield can overflow into SPINLOCK_SHARED bit; no bounds guard
sys/kern/kern_spinlock.c:206 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0550 |
Info |
0.5 |
Ring-size computation uses 32-bit multiply without overflow check: latent heap overflow
sys/net/netmap/netmap_mem2.c:927 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0579 |
Info |
0.5 |
Unbounded mbuf-to-stack copy in slstart BPF path: latent stack overflow
sys/net/sl/if_sl.c:536 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-0614 |
Info |
0.5 |
NGM_CISCO_GET_IPADDR response sized with sizeof(ips) (pointer) instead of sizeof(*ips) (struct)
sys/netgraph/iface/ng_iface.c:697 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-0964 |
Info |
0.5 |
Missing bounds check on ivlen in cryptoapi_cipher_encrypt/decrypt (latent stack buffer overflow)
sys/crypto/cryptoapi/cryptoapi.c:1118 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1117 |
Info |
0.5 |
re_rar_set reads 2 bytes past 6-byte MAC buffer via u_int32_t cast (benign OOB stack read)
sys/dev/netif/re/re.c:3903 |
none |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1850 |
Info |
0.5 |
ksprintf overflows 9-byte msp/dpl version string buffers by up to 2 bytes (lands in struct padding, no impact today)
sys/dev/video/bktr/bktr_audio.c:442 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2013 |
Info |
0.5 |
sili_pci_detach leaves sc_pregs dangling (typo nulls sc_regs twice)
sys/dev/disk/sili/sili_attach.c:375 |
panic |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2179 |
Info |
0.5 |
Signed-integer overflow UB in SM() shift of EEPROM antdiv_ctl1
sys/dev/netif/ath/ath_hal/ar9002/ar9285_diversity.c:98 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-2388 |
Info |
0.5 |
Detach does not drain in-flight ACPI notifies (AcpiOsWaitEventsComplete no-op on DragonFly) - DF-2381 class
sys/dev/acpica/acpi_panasonic/acpi_panasonic.c:210 |
β |
not_reproduced |
not_testable |
untriaged |
β |
β |
| DF-2440 |
Info |
0.5 |
_table() passes DM_MAX_PARAMS_SIZE instead of remaining buffer space to ksnprintf (latent OOB-write enabler)
sys/dev/disk/dm/delay/dm_target_delay.c:183 |
β |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-2162 |
Info |
0.3 |
parent_dmat DMA tag leaked on bt_pci_attach error paths
sys/dev/disk/buslogic/bt_pci.c:142 |
none |
reproduced |
fixed |
untriaged |
β |
β |
| DF-1461 |
High |
β |
Premature kfree of persistent per-slot swdesc in txp_rxbuf_reclaim error path causes UAF and double-free
sys/dev/netif/txp/if_txp.c:793 |
panic |
reproduced |
not_testable |
untriaged |
β |
β |
| DF-1977 |
High |
β |
destroy_workqueue is #if 0 no-op; drain_workqueue does not wait for in-flight works; driver teardown UAF + permanent memory/thread leak
sys/dev/drm/linux_workqueue.c:243 |
none |
inconclusive |
β |
untriaged |
β |
β |
| DF-1687 |
Low |
β |
agp: agp_close frees all GART state and clears as_isopen on EVERY close, not on last close
sys/dev/agp/agp.c:789 |
dos |
reproduced |
fixed |
untriaged |
β |
β |