Gionta, who scored late in the first, set up Scott Gomez's shorthanded goal early in the third to draw Montreal even at 2.
Guillaume Latendresse put the Canadiens ahead 3-2 with his first goal at 7:22.
"I would have taken a backhand right in the goalie's pads," Gionta said about Cammalleri's decision to pass instead of shooting. "He's sitting right on top of the crease, just stopped there and waited. That's a lot of patience right there."
Carey Price made 28 saves as Montreal improved to 3-2.
Curry stopped 24 shots.
"The shorthanded goal at the start of the third really was a difference maker in the game," Penguins coach Dan Bylsma said. "We had 2:55 on the power play, a goal there would have put the game largely in our favor but they get that goal, they get momentum and then we make a couple more detail mistakes and they get the advantage. That stresses the importance of the details of the game."
Latendresse backhanded a Maxim Latendresse rebound past Curry to put Montreal ahead at 7:22, and Gionta got his second of the game 2:25 later to make it a two-goal lead.
Gionta was credited with five shots in the opening period, including four in quick succession that led to his second preseason goal. He took three whacks in a row from the edge of the crease before pushing home a rebound of Spacek's slap shot from the right point.
Gonchar got credit for his first preseason goal 3:27 into the second when his point shot through traffic was redirected past Price.
Malkin, the league's leading scorer last season in both the regular season and playoffs, got his first goal at 7:28 when he took Ben Lovejoy's cross-ice pass and beat Price with a shot inside the left post.
Guerin scored at 16:46 of the third to draw Pittsburgh within one.