mirror of
https://github.com/opnsense/src.git
synced 2026-06-19 21:49:14 -04:00
When processing messages produced by the USB device, umb_decap() trusts ptroff and later dlen and doff with pointer arithmetic, without sufficient sanity checks. The resulting pointer address may be outside of the valid boundary, causing the wrong memory to be copied or a page fault. This fix from Gerhard Roth was obtained after coordination upstream with OpenBSD. It converts the variables to 64-bit integers, which should mitigate the risk of overflows. PR: 284920 Reported by: Robert Morris <rtm@lcs.mit.edu> Approved by: philip (mentor) Sponsored by: The FreeBSD Foundation |
||
|---|---|---|
| .. | ||
| if_aue.c | ||
| if_auereg.h | ||
| if_axe.c | ||
| if_axereg.h | ||
| if_axge.c | ||
| if_axgereg.h | ||
| if_cdce.c | ||
| if_cdceem.c | ||
| if_cdcereg.h | ||
| if_cue.c | ||
| if_cuereg.h | ||
| if_ipheth.c | ||
| if_iphethvar.h | ||
| if_kue.c | ||
| if_kuefw.h | ||
| if_kuereg.h | ||
| if_mos.c | ||
| if_mosreg.h | ||
| if_muge.c | ||
| if_mugereg.h | ||
| if_rue.c | ||
| if_ruereg.h | ||
| if_smsc.c | ||
| if_smscreg.h | ||
| if_udav.c | ||
| if_udavreg.h | ||
| if_umb.c | ||
| if_umbreg.h | ||
| if_ure.c | ||
| if_urereg.h | ||
| if_urndis.c | ||
| if_urndisreg.h | ||
| if_usie.c | ||
| if_usievar.h | ||
| mbim.h | ||
| ruephy.c | ||
| ruephyreg.h | ||
| uhso.c | ||
| usb_ethernet.c | ||
| usb_ethernet.h | ||