Amnesty International has accused the United States, Russia and China of ignoring human rights violations by allies and failing to open their own records to scrutiny in its annual survey.
The human rights organisation took Washington to task for the failure of Barack Obama, the US president, to close its prison camp at Guantanamo Bay in Cuba despite promising to do so.
It also criticised Russia and China for what it described as blocking international scrutiny of the Sri Lankan government's conduct during its bloody conflict with Tamil fighters.
"Our report shows that powerful states hold themselves above the law and protect their allies, so justice is only served when expedient," said Claudio Cordone, interim secretary general of the organisation.
Obama missed his self-imposed deadline to close Guantanamo in January and has not offered a new deadline.
Francis Perrin, vice president of Amnesty International France, said that there was also "a refusal" from US officials to shed light on the alleged violations during the previous administration's "war on terror".
Amnesty criticised China, Russia and the US, and several other Group of 20 countries, for refusing to participate in the International Criminal Court, which is intended to prosecute war criminals.
Washington and others have refused to ratify the court's founding treaty, partly because they fear the court could become a forum for politically motivated prosecutions of troops in unpopular wars like Iraq.
The UK-based organisation also complained that the US and members of the European Union had obstructed international justice by using their positions on the UN Security Council to shield Israel from accountability for war crimes allegedly committed during its recent war on Gaza.
"The Goldstone report, commissioned by the Human Rights Council found that both Israeli forces and Hamas committed war crimes and possible crimes against humanity in the Gaza war, echoing our own findings," said Cordone.
"Israel and Hamas are still ignoring the report's call for accountability. International pressure is still needed here."
The group's report listed examples of what it said were war crimes committed by Israeli forces, but did not provide details of sources.
Amnesty said China, Russia and other allies of Sri Lanka sitting on the 47-member Human Rights Council had helped block legal accountability for the violence and alleged abuses during the final stages of the country's civil war last year.
It said this had been done by those states voting for a resolution that stressed the war was a "domestic" matter that did not warrant outside interference.
A US state department report has accused both sides of possible war crimes, and the UN estimates that at least 7,000 civilians were killed in fighting.
Human rights groups have accused government forces and the Tamil fighters of deliberately targeting civilians and hospitals.
In Russia, Nicola Duckworth, a senior director at Amnesty, raised concern about killings of rights defenders, lawyers and journalists and the failure by Moscow to track down the culprits.
"The legal system seems utterly ineffective in tracking down those responsible for the deaths of human rights defenders, lawyers, journalists and activists," said Duckworth.
Focusing on China, Amnesty also criticised Beijing for its handling of violence in the country's western Xinjiang region last year.
Cordone said: "Following the riots in China's Uighur autonomous province, the government tried to hide events from the outside world - restricting access to information, arresting non-violent protesters, andignoring the UN's expert on torture request to visit."