Russian officials will be able to fine or block online media outlets for publishing news they deem "fake", under a law approved by lawmakers Wednesday.
Rights groups say the move amounts to censorship.
Russia's lower house of parliament, which is overwhelmingly dominated by the pro-Kremlin United Russia party, voted in favour of the bill in the key second of three readings.
The law would allow prosecutors to decide what amounts to "fake news" and gives a media watchdog the power to demand an outlet delete the information.
Websites that fail to comply would be blocked.
Fines could reach 1.5 million rubles (over $22,700) if the infraction leads to grave consequences like death or rioting.
Fake news disseminated via the internet can "lead to mass unrest" and undermine state security, the bill's authors say.
Lawmakers in Russia first began to speak of the need for such a law after a blast on New Year's Eve killed dozens in the industrial city of Magnitogorsk.
Several versions of the story appeared, with officials saying it was a gas explosion but some independent media suggesting it was a terror attack.
The Islamic State group claimed the alleged attack two weeks after it occurred, leading to public confusion.
Critics say the bill is vaguely worded and would have large scope for abuse, further complicating the difficult and sometimes deadly work of opposition journalists in Russia.
"Even more censorship!" Reporters Without Borders media rights organisation wrote on its Russian-language Twitter.
"Authorities will now block websites and (social media) accounts without trial," wrote opposition politician Vladimir Ryzhkov.
In another controversial bill, the Duma backed punishment for "offending state symbols".
This would allow the media watchdog to block content that "expresses overt disrespect" to Russian authorities.
Both measures are likely to pass their third reading later this week before being sent to the senate and signed off by President Vladimir Putin.