Ten-man Blackburn came from behind to beat Aston Villa 2-1 at Ewood Park and climb out of the Premier League drop-zone.
Gabriel Agbonlahor put Martin O'Neill's side ahead in the third minute after James Milner had flicked on a long ball from Villa keeper Brad Friedel.
But Christopher Samba replied on 24 minutes when he volleyed home after Richard Dunne headed the ball onto him in the box.
Rovers were then reduced to ten men in the 68th minute when Vince Grella earned a second booking after sliding in from behind on Milner.
But the home side won it with an 89th minute David Dunn penalty after Franco Di Santo's shot hit the hapless Dunne's raised arm.
Nigel Reo-Coker returned to the Villa bench for the first time since his bust-up with boss O'Neill but it did not take long for the on-field action to deflect attention.
Finding himself in space in the box after a Milner flick-on, Agbonlahor took less than three minutes to roll his fourth league goal of the season in off the post.
Rovers, still licking their wounds from their previous heavy defeat at Everton, responded well with Morten Gamst Pedersen firing a rising shot over the bar.
Shot blockedRecalled front man Di Santo also saw a shot blocked in the box before fast-countering Villa came close to a second, Ashley Young's cross missing the top of John Carew's head by inches.
Villa were made to pay for their near miss in the 24th minute when Di Santo chased down Ryan Nelsen's long punt into the box and Dunne headed into the path of Samba under pressure, who volleyed in the equaliser.
An entertaining game continued to swing from end to end with Young flashing an effort across the face of goal after Milner's deep cross from the right.
Villa's two former Rovers stars, Friedel and Stephen Warnock, had received a warm welcome from the home fans and the giant keeper reminded them of his quality.
Pedersen's ball into the box caused panic just past the half-hour mark and it fell to Dunn, whose overhead kick from the edge of the six-yard box was somehow tipped over the bar.
Carlos Cuellar bravely headed clear a Lars Jacobsen cross under pressure from Di Santo in the 37th minute as the home side retained the upper hand.
But Pascal Chimbonda then needlessly gave the ball away to Milner in the 41st minute but his shot from a tight angle was saved by Paul Robinson.
Second halfBlackburn started the second half in positive fashion with the increasingly impressive Dunn at the centre of all their moves.
Di Santo squirmed a header wide from a cross by El-Hadji Diouf as Villa became increasingly reliant on quick counter-attacks in their search for a second.
A series of bookings for niggly incidents disrupted the flow of the game and it was Villa who emerged better off from the brief hiatus, Agbonlahor hooking a 61st minute effort just over the bar.
But Rovers' chances of pressing on to claim the three points were hit by the sending-off of Grella in the 68th minute for a second bookable offence after an unnecessary foul on Milner.
Undaunted, Rovers continued to press and substitute Brett Emerton brought another fine save out of Friedel after Jacobsen cut the ball back in the 83rd minute.
Di Santo had a hopeful penalty claim turned down one minute later after tangling with Milner in the box then Dunn's goal-bound effort was blocked by James Collins.
Rovers were finally awarded a spot-kick with a minute to go after Di Santo's shot was handled by Dunne - and Dunn stepped up to send Friedel the wrong way.
There was still time for Villa to push forward in search of an equaliser and Robinson was forced into a fingertip save to deny Collins in injury-time but Rovers held on to inflict a first away defeat on O'Neill's side.