Tapping SPI communication with 328U
I worry that an 328p is no match for a 72MHz Cortex-M3 with DMA. SPI clock speed is not the problem (328p can go up to F_CPU/2), but the inter-byte time. You can easily get one byte, SPI peripheral will give you an interrupt. You then have to process/store that byte and wait for the next one. If the STM32 is using DMA then there is literally no delay between bytes, so no matter how you optimize ISR code you'll loose data.

I would attack the problem with a SN74LS674 - 16-bit paraller in, serial out register. Connect it to all the outputs of the 595s and read over SPI.