Both sides saw a man sent off as Pepe and Isco cancelled out Oriol Riera's first-half double
The visitors were looking to go level on points with leaders Barcelona ahead of their game with Villarreal later in the evening, but Real saw five-match winning streak in the league come to an abrupt end.
The hosts made the breakthrough in the 16th minute when Oriol Riera headed home Marc Bertran’s pin-point cross, before the striker doubled Osasuna's advantage.
Sergio Ramos was then shown his 18th career red card for elbowing Riera, but Isco's low effort ensured Real trailed by just one at the break.
After a lull in proceedings in the second half, Real were boosted when Francisco Silva was shown a second yellow card for a challenge on Cristiano Ronaldo, and Pepe restored parity with 10 minutes remaining when he met Isco's centre.
Real coach Carlo Ancelotti restored Diego Lopez, Daniel Carvajal and Ramos to the side after the trio sat out Tuesday's Champions League victory over Copenhagen, while Francisco Punal was suspended for Osasuna following a red card in the 3-0 defeat to Valencia.
The visitors controlled possession early on and they should have gone ahead when Isco's neat backheel found Ronaldo unmarked at the back post, but the usually prolific Portuguese dragged his effort wide.
And Real were made to rue that miss after 16 minutes as Osasuna stole ahead - Bertran's sublime cross with the outside of his boot glanced home by Riera.
Madrid searched for a swift response and had a penalty appeal turned away by referee Carlos Clos Ramos when Luka Modric appeared to have been felled in the area by Alejandro Arribas.
For all their attacking prowess, Real struggled to breach the Osasuna defence, and Javi Gracia's side came close to a second when Emiliano Armenteros' free-kick produced a fine stop from Lopez.
Seven minutes before the break the hosts did find a second. Lopez’s superb reflexes kept out Damia's initial effort but Riera was on hand to head home the rebound.
Real’s situation worsened shortly afterwards when Ramos was shown a straight red card for an elbow on Riera, but the visitors reduced the deficit on the stroke of half-time when Isco drilled into the corner from the edge of the box.
Despite the man disadvantage, Real continued to press in the second half and went close when Ronaldo dragged a left-footed effort wide of goal.
But Osasuna continued to look dangerous on the counter-attack and with 20 minutes remaining Lopez had to be at his best to deny to parry Roberto Torres’ near-post effort.
Real's chances were boosted when Silva was shown a second yellow card for a lunge on Ronaldo, and the visitors duly equalised when Pepe headed home Isco's inviting cross with 10 minutes left to secure a valuable point.