The resolution -- which passed with 28 of the council's 47 member states voting in favour, six opposed and 13 abstaining -- marked the first time the United Nations' top rights body has taken a position on the bloodiest-ever war in the besieged Palestinian territory.
Meirav Eilon Shahar, Israel's ambassador to the UN in Geneva, denounced the resolution as "a stain for the Human Rights Council and for the UN as a whole".
The strongly worded text called on countries to "cease the sale, transfer and diversion of arms, munitions and other military equipment to Israel... to prevent further violations of international humanitarian law and violations and abuses of human rights".
It noted that the International Court of Justice ruled in January "that there is a plausible risk of genocide" in Gaza.
Friday's resolution, which was brought forward by Pakistan on behalf of all Organisation of Islamic Cooperation (OIC) member states except Albania, also called for "an immediate ceasefire" and "for immediate emergency humanitarian access and assistance".