The puck bounced the Dallas Stars' way at both ends of the rink.
Ribeiro scored at 9:14 when his shot from the right circle struck Chicago defenseman Niklas Hjalmarsson's right knee and caromed over rookie goalie Corey Crawford's glove.
"It's part of the game," Ribeiro said. "I've been having so many chances like that and they haven't gone in. Today I got a lucky bounce."
Dallas' Brenden Morrow also had a power-play goal as the Stars went 3 for 3 with the man advantage and ran their road winning streak to six. Steve Ott added a short-handed, empty-net goal.
"Power plays were the difference tonight," Dallas coach Marc Crawford said. "Our power play was performing almost perfectly. We got a couple of pucks to the net with people around it and made a couple of bang-bang plays."
And the Stars killed all four Chicago power plays, even through the Blackhawks entered the game with the NHL's best percentage with the man advantage. Goalie Kari Lehtonen helped by turning aside 35 shots, including several timely stops.
Fernando Pisani and Tomas Kopecky scored for Chicago, 1-4-0 in its last five games.
Lehtonen was beaten on another shot, but it didn't go in.
Chicago's Viktor Stalberg narrowly missed on a penalty shot with 7:07 left in the second period and the game tied at 2. He fooled Lehtonen with a backhand attempt, but the puck clanked of the right post, the crossbar and then the left post before bounding away from the net.
"It's hard to imagine that happening," Stalberg said.
"I don't think I've ever seen that before," Lehtonen added. "There was an opening there he could have put it in. I got real lucky there."
The Stanley Cup champion Blackhawks dropped to 12-11-0 at the United Center, where they were 29-8-4 last season, and are 3-8-1 when tied after two periods.
"It's not going to change until we start doing the right things," Chicago captain Jonathan Toews said. "We weren't as good as we wanted to be the first half of the season at home."
The Blackhawks came out flat and undisciplined in the first period, and the Stars pounced on Chicago's shaky play and 25th-ranked penalty killing to take a 2-0 lead after 20 minutes.
"They're up 2-nothing real quick and that can't happen," Blackhawks defenseman Brent Seabrook said. "We've got to come out the gate harder and be better on the P.K."
Morrow tucked in a power-play goal just 2:46 into the first, and 46 seconds after Kopecky was sent off for hooking during a sloppy shift. Corey Crawford stopped Matt Niskanen's shot from the top of the slot, but Morrow converted the rebound from the right side of the crease.
Ribeiro's screened tip-in just under 5 minutes later -- with Chicago's Brian Campbell off for slashing -- made it 2-0. Ribeiro redirected Brad Richard's drive from the left circle over Crawford.
Blackhawks coach Joel Quennevile called a timeout immediately after the goal.
The Blackhawks rallied in the second to tie it.
Pisani cut it to 2-1 at 9:35 when his shot from the slot struck the tip of Lehtonen's glove and fluttered into the net.
Kopecky tied it just over 2 minutes later, using a strong second effort to convert his own rebound.
Lehtonen made a pad save on Kopecky's first shot, fired off Patrick Kane's centering pass. Kopecky, however, fought through two Dallas defenders and slid in the loose puck.
Stalberg was awarded his penalty shot after being pulled down from behind by Nicklas Grossman.
With Dallas ahead 3-2, Lehtonen made a desperate stick save on Seabrook with just over 2 minutes left.
NOTES: Niskanen and fellow Dallas defenseman Karlis Skrastins collided in the warm-up before the start of the third period and didn't play in the final frame. Crawford didn't believe the injuries were serious. Stalberg hasn't scored since Nov. 14. ... Chicago's healthy scratches were D Nick Boynton, RW Jack Skille and C Jake Dowell. ... Dallas C Toby Petersen sat out with a lower-body injury and D Marc Fistric was a healthy scratch.