Blackburn Rovers earned just a second win from six games to revive their promotion hopes as Bradley Dack's deflected goal saw off Cardiff City.
A sticky Ewood Park pitch made for tough viewing in a goalless first half.
Three minutes after the break, Dack's shot diverted off Jack Simpson to wrong-foot Cardiff keeper Ryan Allsop.
The visitors had chances of their own but the Championship's lowest scorers were ultimately blunt in attack once again and remain 20th in the table.
The Bluebirds have now gone seven games without a win and could see their three-point lead over the bottom three reduced or cut completely when the teams below them play later on Sunday.
As for Blackburn, victory closes the gap between them and the two automatic promotion spots to eight points, though second-placed Sheffield United could restore their advantage when they visit Queens Park Rangers on Monday night.
This was a welcome result for Jon Dahl Tomasson's men, who had held on to third spot despite losing four of their previous five matches in the Championship.
As if embodying the innate volatility of this league, Rovers are still the only team in England's top five divisions not to have drawn this season.
While their 14 wins are bettered only by leaders Burnley and Sheffield United, only Huddersfield and Wigan in the bottom three have lost more games than Blackburn's 12.
That could hardly have been in starker contrast to Cardiff, who had drawn four matches in succession as part of a winless run stretching back to 5 November.
A lack of goals has been their most glaring weakness, with a meagre total of 20 from 26 games making them the Championship's lowest scorers.
Cardiff looked like a team short on attacking quality and confidence here, frequently failing to turn promising positions into genuine scoring opportunities.
After inviting passes from Ryan Wintle and Callum O'Dowda went unrewarded, a swift counter-attack which ought to have led to a goal ultimately came to nothing as Gavin Whyte was thwarted by an excellent covering tackle from Blackburn's Jake Garrett.
Whyte was not helped by the run of the ball on a troublesome pitch at Ewood Park; muddy, cutting up in places and a hindrance to both sides' attempts to play with any sort of fluency.
Blackburn could only muster a handful of long-range efforts in a first half of few openings, with the best of a limited bunch falling to Cardiff's Callum Robinson, whose low shot was saved by Thomas Kaminski.
Rovers' first shot on target inside the Cardiff penalty area came three minutes into the second half and, with a considerable dose of fortune, it yielded the game's only goal.
Dack struck powerfully from Ben Brereton Diaz's pass and the ball hit Simpson before dribbling into the net. It was a messy goal befitting a disjointed encounter.
Buoyed by taking the lead, the home side had a couple of other sights on goal as Brereton Diaz drew saves from Allsop twice in quick succession.
But with Cardiff offering so little in attack, Blackburn did not need to overexert themselves in the closing stages as they held on for a valuable three points.
Blackburn manager Jon Dahl Tomasson:
"I'm really pleased to get the win. It was a difficult game against Cardiff. They came with a gameplan, sitting back with a 5-4-1 which was difficult to play against.
"I think we started with great energy, then at half-time we spoke about some solutions to get more dangerous and we did that immediately in the second half and got the goal.
"We probably should have got some more goals as well but in the end we dug in on a difficult pitch. Well done to the job boys. It's a great way to start the new year."
Cardiff manager Mark Hudson:
"I'm extremely frustrated. I thought by changing shape we'd get more attacking threat in the game but that didn't seem to be the case.
"They scored, we tried to change it up but didn't really pose any threat on their goal. We started the second half the way we did and then we're chasing the game.
"We've just got to keep working. We've got to keep believing in front of goal, believe that we can create and have faith in our ability."
Line-ups
Blackburn
Formation 4-2-3-1
1Kaminski
11Rankin-Costello4Ayala5Hyam3Pickering
6Morton30Garrett
19Hedges23Dack22Brereton
9Gallagher
1Kaminski11Rankin-CostelloSubstituted forWhartonat 54'minutesBooked at 65mins4Ayala5Hyam3PickeringSubstituted forEdunat 78'minutes6MortonSubstituted forWhartonat 88'minutes30GarrettBooked at 13minsSubstituted forTravisat 78'minutes19HedgesBooked at 49mins23Dack22Brereton9GallagherSubstitutes
7Edun13Pears16Wharton18Markanday27Travis29Vale36WhartonCardiff
Formation 4-2-3-1
1Allsop
12Sang38Ng23Kipré26Simpson
8Ralls6Wintle
20Whyte47Robinson11O'Dowda
29M Harris
1Allsop12Sang38Ng23Kipré26SimpsonBooked at 28minsSubstituted forColwillat 58'minutes8RallsSubstituted forOjoat 58'minutes6Wintle20WhyteSubstituted forRinomhotaat 58'minutes47RobinsonSubstituted forDaviesat 66'minutes11O'Dowda29M HarrisBooked at 65minsSubstituted forPhilogeneat 78'minutesSubstitutes
10Ojo16Nelson25Philogene27Colwill28Luthra35Rinomhota39DaviesReferee:Thomas BramallAttendance:12,499Live Text
Match ends, Blackburn Rovers 1, Cardiff City 0.
Second Half ends, Blackburn Rovers 1, Cardiff City 0.
Attempt saved. Callum O'Dowda (Cardiff City) header from the centre of the box is saved in the top right corner.
Corner, Cardiff City. Conceded by Daniel Ayala.
Attempt missed. Ben Brereton (Blackburn Rovers) right footed shot from the left side of the box is high and wide to the right. Assisted by Bradley Dack.
Foul by Sam Gallagher (Blackburn Rovers).
Callum O'Dowda (Cardiff City) wins a free kick in the defensive half.
Corner, Cardiff City. Conceded by Adam Wharton.
Substitution, Blackburn Rovers. Adam Wharton replaces Tyler Morton because of an injury.
Corner, Cardiff City. Conceded by Dominic Hyam.
Foul by Dominic Hyam (Blackburn Rovers).
Sheyi Ojo (Cardiff City) wins a free kick on the left wing.
Attempt blocked. Jaden Philogene (Cardiff City) left footed shot from outside the box is blocked. Assisted by Rubin Colwill.
Corner, Cardiff City. Conceded by Dominic Hyam.
Substitution, Blackburn Rovers. Tayo Edun replaces Harry Pickering.
Substitution, Blackburn Rovers. Lewis Travis replaces Jake Garrett.
Substitution, Cardiff City. Jaden Philogene replaces Mark Harris.
Offside, Blackburn Rovers. Ryan Hedges tries a through ball, but Sam Gallagher is caught offside.
Ben Brereton (Blackburn Rovers) wins a free kick on the left wing.
Foul by Rubin Colwill (Cardiff City).