Description
In the Linux kernel, the following vulnerability has been resolved: net: mvpp2: limit XDP frame size to the RX buffer mvpp2 has short and long BM pools, and short pool buffers can be smaller than PAGE_SIZE. The XDP path nevertheless initializes every xdp_buff with PAGE_SIZE as frame size. XDP helpers use frame_sz to validate tail growth and to derive the hard end of the data area. Advertising PAGE_SIZE for short buffers can let bpf_xdp_adjust_tail() grow a packet past the real allocation, corrupting memory or later tripping skb tailroom checks. Initialize the XDP buffer with bm_pool->frag_size so XDP tailroom matches the actual buffer backing the packet.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
07dd0a7aae7f72af7cec18909581c2bb570edddc to < a3ee9231ccec6ec3be2de89c56f897055fd9eab1affected07dd0a7aae7f72af7cec18909581c2bb570edddc to < ec8e1e5842bc0dbd4c272761f4db3651eecd0339affected07dd0a7aae7f72af7cec18909581c2bb570edddc to < 3b8b0c3631b19faee53f0d15a49924129b063eecaffected07dd0a7aae7f72af7cec18909581c2bb570edddc to < 994bd2b58d2bd08aa97ec0836cc813cfcb00d749affected07dd0a7aae7f72af7cec18909581c2bb570edddc to < 910617a4e67dbdd5fdb39d9dc6a51e491e1b2c3eaffected07dd0a7aae7f72af7cec18909581c2bb570edddc to < 9545cc5ef18ca22d031f2f47c157192460652359affected07dd0a7aae7f72af7cec18909581c2bb570edddc to < f3c6aa078927e6fe8121c9c591ddee8716c5305aaffected
Linux Linux
Default version status: affected
5.9affected0 to < 5.9unaffected5.15.210 to ≤ 5.15.*unaffected6.1.176 to ≤ 6.1.*unaffected6.6.143 to ≤ 6.6.*unaffected6.12.94 to ≤ 6.12.*unaffected6.18.36 to ≤ 6.18.*unaffected7.0.13 to ≤ 7.0.*unaffected7.1 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/a3ee9231ccec6ec3be2de89c56f897055fd9eab1 ↗
- https://git.kernel.org/stable/c/ec8e1e5842bc0dbd4c272761f4db3651eecd0339 ↗
- https://git.kernel.org/stable/c/3b8b0c3631b19faee53f0d15a49924129b063eec ↗
- https://git.kernel.org/stable/c/994bd2b58d2bd08aa97ec0836cc813cfcb00d749 ↗
- https://git.kernel.org/stable/c/910617a4e67dbdd5fdb39d9dc6a51e491e1b2c3e ↗
- https://git.kernel.org/stable/c/9545cc5ef18ca22d031f2f47c157192460652359 ↗
- https://git.kernel.org/stable/c/f3c6aa078927e6fe8121c9c591ddee8716c5305a ↗