The law will now go to President Vladimir Putin to sign or turn down.
All 143 members of the Federation Council present voted to support the bill, which has sparked criticism from both the US and from Russian activists who say it victimises children by depriving them of the chance to escape often dismal orphanages.
The bill is one part of a larger measure by angry MPs retaliating against a recently signed US law that calls for sanctions against Russians who are deemed to be human rights violators.
Some top Government officials, including the foreign minister, have spoken flatly against it, arguing the measure would be in violation of Russia's constitution and international obligations.
There are about 740,000 children without parental custody in Russia, according to Unicef. More than 60,000 Russian children have been adopted in the United States in the past 20 years.