Stephane Sessegnon got Sunderland out of jail as they fought back to snatch a 2-2 draw against Fulham.
The Londoners led 2-0 after 35 minutes through Dimitar Berbatov's audacious penalty and Sascha Riether's close-range finish.
However, Craig Gardner, who had conceded the spot-kick, dragged the Black Cats back into it when he too converted a penalty before the break, and Sessegnon prevented his side from slipping to a fourth successive Barclays Premier League defeat when he fired home with 20 minutes remaining.
Sunderland desperately needed a win after taking just one point from their last four games, but found themselves in deep trouble by the time 35 minutes had elapsed and worryingly for manager Martin O'Neill, Fulham barely had to break sweat to claim their advantage.
They took the lead with 16 minutes gone when Gardner was adjudged to have tripped Ashkan Dejagah inside the box. Berbatov stuttered up to the ball before side-footing it to the left of keeper Simon Mignolet, who was rooted to the spot.
It got worse as Adam Johnson's 35th-minute corner was cleared by Berbatov and as the home side slept, Fulham broke at pace and in numbers before Mignolet could only parry Dejagah's shot from a tight angle to Riether, who gleefully tapped home.
Sunderland were handed a way back into the game within two minutes. Philippe Senderos literally got to grips with striker Danny Graham as the pair challenged for a ball over the top and the referee awarded a second penalty, which Gardner chose power past Mark Schwarzer.
Sessegnon might have levelled just before the break but a right-foot shot was bundled around the post by Schwarzer. They might have been back on level terms within two minutes of the restart when Steven Fletcher and Graham combined but the former Swansea frontman scuffed his shot tamely at Schwarzer.
Berbatov blasted high and wide from distance after finding space on the right with 49 minutes gone, but the visitors continued to pose the greater threat. Mignolet had to race out to block Berbatov's effort after Bryan Ruiz had played him in with a lofted pass.
And the save proved crucial within seconds when Sessegnon drilled home from 15 yards after the ball broke invitingly for him. Berbatov passed up a glorious opportunity to win it late on when he shot weakly at Mignolet.
Johnson was convinced Emmanuel Frimpong had handled his 79th-minute drive and it took a point-blank block by Brede Hangeland to deny Fletcher a headed winner.