You didn't bother to specify whether you are using an external flash or not, a camera-mounted flash or remote, and which brand of flash.
You mention "Flash was on ETTL". That counts towards an external flash. Which is too bad since I have a better explanation for an internal flash (voltage drop) but it can be stretched to match external.
Image stabilisation is done by the lens. For that it needs information from the camera and current from the camera. The current is used for suspending and moving the image stabilisation elements in a magnetic field.
Now what happens is that at the moment of firing the flash, something significantly changes for the IS. The communication gets messed up due to the electromagnetic pulse of a rapid discharge or the available voltage/current for working the image stabilisation drops because the flash recharge circuitry starts drawing large current. Additional current is drawn by the lens aperture closing down to its nominal value: that may also cause some mechanical unrest so you might try whether it makes a difference to shoot at maximum aperture.
Also check the shutter speed taken: usually it should just be the flash's and camera's sync speed.
So things to try: maximum aperture (reduces aperture action but also flash power, so it's not a completely isolated test), fresh batteries or use the mains power supply, double-check the lens contacts to be clean (when in doubt, cleaning them with a bit of alcohol on a cotton swab might be an idea) and the lens to be mounted and locked well. Try using external instead of internal flash and vice versa or a different external flash.
You have found a workaround but it would be good to figure out what the exact problem is so that you can recognize it when it arises in somewhat different circumstances.