The Iranian president also accused the US and others of misusing freedom of speech and failing to speak out against the defamation of people's beliefs.
The Iranian leader, who has called for Israel's destruction, used his speech to denounce Israel's occupation of Palestinian territory and US vetoes in the UN Security Council to back its ally. He urged all nations to "hold occupiers accountable and make efforts to return the occupied territories to their rightful owners."
He blamed the "discriminatory" veto power of the US, China, Russia, Britain and France for the Security Council's failure to ensure peace in the world, and he called for a change in the rules "in favor of nations with due regard to justice."
As Ahmadinejad addressed leaders and ministers from more than 100 countries, Israel's UN Ambassador Ron Prosor walked out of the General Assembly hall.