Blackburn Rovers' 395-minute run without conceding a goal at Ewood Park was ended by Martyn Waghorn as Millwall came from behind to reach half time level at 1-1.
Jordan Rhodes had earlier put Gary Bowyer's men in front with his 12th league goal of the season.
Rhodes capitalised on a slip by Mark Beevers to latch onto Tommy Spurr's long clearance, before drilling home from the edge of the penalty area.
Millwall's equaliser came just before the break when Liam Trotter's through-ball found Steve Morison, who crossed to Waghorn to net his first goal in eight matches.