The Ducks have won three in a row and five out of six. They will visit New Jersey Friday in a bid to win four consecutive games for the first time since the opening two weeks of the season.
Anaheim is halfway through an eight-game road trip.
After Jordan Staal beat Hiller 6:27 into the game, the Anaheim goaltender shut the door on the Penguins, who had won two in a row and 11 of 14.
Corey Perry tied it with 52 seconds left in the middle period and Teemu Selanne produced the winning goal with a backhander that came 7:15 into the third. Perry's goal was his 28th of the season. He began the game tied for fifth on the NHL's goal-scoring list.
Marc-Andre Fleury stopped 27-of-29 shots for the Penguins