Karim Benzema arrived as a second-half substitute to net a late winner for Real Madrid as they toiled to a 2-1 victory over Razgrad Ludogorets in Group B of the Champions League tonight.
However, the Bulgarian outfit shocked their more illustrious opponents by taking the lead in the seventh minute through Marcelinho, who stole in at the far post to nod home a near-post flick-on.
Just four minutes later, their supporters were on their feet again as 2013 Ballon d'Or winner Ronaldo saw a penalty saved by Vladislav Stoynaov after Yordan Minev had brought down Javier Hernandez.
Ronaldo was frustrated once more two minutes later when he slotted the ball home only for the flag to be raised and the goal disallowed. Replays showed that the winger was onside when he collected Isco's through-ball.
Cosmin Iosif Moti could have made it 2-0 in the 20th minute, but he headed into the side-netting as Carlo Ancelotti's side continued to look vulnerable from set pieces.
The miss proved costly as a minute later Ronaldo struck a decisive penalty into the bottom right-hand corner, making no mistake the second time round.
Hernandez then passed up a trio of opportunities as half time approached as the Bulgarians clung on to stay level at the break.
As expected, Madrid rushed out of the blocks after half time and Sergio Ramos nodded over the bar before Stoynaov made another save from Gareth Bale's close-range header.
Then Iker Casillas made his first notable stop of the net when he tipped Fabio Espinho's long-range strike over the bar, and the Spanish goalkeeper was called in action again shortly afterwards to push a Marcelinho shot wide.
Ronaldo saw a shot cleared off line with 20 minutes remaining as the Portuguese star passed up yet another opportunity to find the back of the net, but Benzema crept in front of his marker to nod home in the 78th minute, which sealed an important three points for his side.