The Aeroflot flight from Surgut in western Siberia diverted after an unnamed man on the flight ordered it to land in Afghanistan.
Russian investigators said the passenger tried to break into the cockpit during the flight and demanded the plane change course.
The 737 jet landed in Khanty-Mansiysk – 150 miles to the west of the departure city, but still in Russia – a short time later.
The suspect, who police said was drunk, was detained at the airport.
No one was injured but police cordoned off the area and ambulances were on standby.
A statement provided by the airline confirmed the diversion was the result of an attempted hijacking.
It said Aeroflot’s “security service and technical services are in a state of heightened vigilance” as a result of the incident and passengers on other flights should expect extra checks and some delays during boarding.
"Aeroflot has dispatched a reserve aircraft to Khanty-Mansiysk so that the passengers can continue their journey to Moscow," the airline added.
"In response to the growing threat of international terrorism in recent years, all Aeroflot employees undergo thorough training on responding to such incidents in order to ensure the safety of passengers."
Andrei Przhezdomsky, the spokesman for Russia’s National Anti-terrorist Committee, said: “According to reports, a plane flying from Surgut to Moscow changed its course at the demand of one of the passengers.
“The pilot made the only right decision to land at the nearest airport, in Khanty-Mansyisk.”