A group of 37 human rights organizations had called on the UN's 192 members not to allow Libya a seat on the Geneva-based council, the UN's main body dealing with human rights.
They described the regime of Libyan leader Muammar Gaddafi as "one of the world's most brutal and longest-running tyrannies."
"Colonel Gaddafi belongs in jail, not on the world's highest human rights body," they added.
But the appeal fell on deaf ears, and a General Assembly secret ballot produced 155 votes in favor of adding Libya to the council, significantly more than the 97 votes needed.
Libya and 13 other nations ran unopposed for 14 of the council's seats in a ballot process in which regional groups for the first time each picked a number of candidate equal to the number of seats available to them.
NGOs criticized the process as undemocratic. "Elections without competition don't make sense," the group of rights defenders said.
The council has 47 member nations, each elected for three years, and a third of the body's seats are up for renewal each year.
The seats are apportioned by region, with each bloc able to put forward candidates for the places available to it.
The four seats available to African this vote went to Libya, Angola, Mauritania and Uganda.
In the Asian group, Iran's withdrawal from contention - which was welcomed by human rights groups -left Malaysia, the Maldives, Qatar and Thailand contenders for the four available spots.
Ecuador and Guatemala took two seats available to Latin America, while Spain and Switzerland took Western Europe's spots and Moldova and Poland earned the places set aside for Eastern Europe.
The results were announced by the current president of the General Assembly, Libyan national Ali Triki.