Kevin Phillips became Sunderland's post-war FA Cup record goalscorer with his tenth goal in the competition after ten minutes when sent clear by Sean Thornton.
Phillips had the ball in the net again ten minutes later only to be ruled offside and Julio Arca failed to hit the target with the goal at his mercy as Sunderland belied their lowly league position.
Thomas Sorensen denied Andy Cole with a diving save but the game took a cruel twist early in the second half. McCann robbed Martin Taylor to release Phillips who went clear and beat Brad Friedel only for his low shot to come back into play off the post.
Within a minute David Thompson's right-wing corner was headed firmly past Sorensen and Blackburn grew in confidence with Thompson missing a great chance to put his side ahead.
The added period failed to settle the tie but amazingly Blackburn failed to convert any of their penalties. Phillips scored, Thompson blazed over the bar, Kevin Kilbane made it 2-0 and Andy Cole had his shot saved.
Jody Craddock fired wide but substitute Corrado Grabbi had his penalty saved and although Friedel got his hands to McCann's effort, he could not prevent the ball from crossing the line.
Rovers manager Graeme Souness said it was the first time as both player and manager he had lost out on a penalty shoot-out but had no complaints.
"That's what the FA Cup is all about,'' he said. "You never like to lose and there was drama to the end. Best of luck to Sunderland."
Howard Wilkinson expressed his delight and thought the result was never in doubt.
"I never thought we would lose when it went to penalties," he said. "Thomas Sorensen was magnificent in the shoot-out.
"I said after Saturday's defeat by Charlton that the players would bounce back and that was a big result for us. We didn't seem destined to get the result after their late goal, but it was a result we deserved."