After the break, Mourinho’s men had chances to score a second away goal, but José Callejón and Ronaldo were guilty of wasting opportunities, before Pontus Wernbloom volleyed in a 93rd-minute leveller to secure an unlikely draw.
“Without doing anything out of this world we had the chances to score a second goal,” said Mourinho after the game.
“I’m frustrated but it is not a bad result. I am not happy but I am not too sad either. It’s not a drama. It happened to us last year in Lyon and we got through to the quarter-finals then.”
Real, who boast an unbeaten record in Russia, started slowly – and CSKA created the game’s first chance when Georgy Shennikov broke down the right, delivering a dangerous cross which Alan Dzagoev volleyed wide.
The freezing conditions were always going to play a telling part in Moscow, and a groin problem forced Karim Benzema off after just 14 minutes, with Gonzalo Higuaín replacing the French striker.
And Higuaín came close to handing the visitors an early lead after a neat passage of play between Sami Khedira and Ronaldo created space – but Chepchugov dived low to deny the Argentinian.
CSKA have never lost to Spanish opposition in the Champions League – but that record looked under threat in the 28th minute as Ronaldo scored his 36th goal of the season.
Confusion between twin brothers Alexei and Vassili Berezoutski provided Fábio Coentrao with the chance to cross for Ronaldo, and the Portuguese forward unleashed a powerful finish which fizzed under Chepchugov.
With half-time approaching, Ronaldo had the opportunity to double Real’s lead when his darting run was brought to abrupt halt by Sergei Ignashevitch, but the former Manchester United star smashed the resulting free-kick against the CSKA wall.
Real have a perfect record in Europe this season, and after half-time the visitors looked to cement their lead as Ronaldo slid Callejón through on goal – but the midfielder sliced his shot into the side netting.
With 20 minutes remaining, CSKA manager Leonid Slutsk introduced Sekou Oliseh and Keisuke Honda in search of an equaliser, and the home side looked a more dangerous proposition, with the Japanese midfielder beginning to pull the strings.
Ronaldo should have sealed a first-leg victory but Chepchugov, deputising for his captain and CSKA No1 Igor Akinfeev, showed quick reactions to block the Real talisman’s shot after Xabi Alonso’s incisive pass left the striker with just the goalkeeper to beat.
It proved a vital save as CSKA won a free-kick in the 92nd minute, and Swedish midfielder Wernbloom seized on the loose ball to fire past Iker Casillas and level the tie ahead of the second leg at the Bernabéu in three weeks’ time.
ENHANCED ODDS: Get 10/1 on England to beat Italy