Sir Keir Starmer has accused Vladimir Putin of “harming millions of vulnerable people” as new British intelligence suggests ships carrying food aid have been caught up in Russian attacks on Ukraine’s ports.