Israel and Hamas criticised by Amnesty for attacks on civilians