Montreal broke a five-game losing streak against the Penguins with the help of Daniel Briere, who recorded two goals and an assist.
Alexei Emelin, Brendan Gallagher and Max Pacioretty also scored for the Habs.
Peter Budaj made 27 saves to earn the victory.
Deryk Engelland also scored for Pittsburgh, which lost at home in regulation for just the fourth time this season.
Marc-Andre Fleury stopped 24-of-29 shots.