From the crew's description, it sounds like the attack was conducted by explosives-laden drones.
Perpetrator not yet known. Two possible beneficiaries are Russia and ISIS.
Not sure why Iran would do it. Maybe threatening global oil supplies will cause Trump concerns about the US economy. But he hasn't appeared to give a damn thus far.