Ruud van Nistelrooy's missed penalty proved costly for Manchester United as they were held to a draw by a spirited Middlesbrough side.
Maccarone (r) holds off the challenge of Man Utd's Wes Brown
Van Nistelrooy stepped up after Lee Cattermole's handball - but Brad Jones brilliantly saved his spot-kick.
Otherwise United were short of ideas in front of goal and clearly missed the injured Wayne Rooney.
The draw pushes United a point clear of Liverpool in the race for second place in the Premiership, with one game left.
Sir Alex Ferguson's men also have a better goal difference than their rivals from Merseyside, and a win at home to Charlton on Sunday will clinch them second spot.
But Ferguson must hope for a better performance from his side than the one he saw here, with Boro creating as many chances as the home side.
Rooney's absence with a broken foot meant United paired Louis Saha and Van Nistelrooy up front.
They failed to make much headway in the early stages, with Boro making the brighter start.
Stewart Downing set up Massimo Maccarone but his shot was deflected wide and Fabio Rochemback also went close soon after when he cut inside John O'Shea before unleashing a low shot that forced a low diving save from Edwin van der Sar.
At the other end Gary Neville's driven cross found its way to Ryan Giggs at the back post - but the Welsh winger could not control his shot.
Neville - who would later exchange angry words with a supporter - then crossed for Ji-Sung Park but his first-time effort ended up horribly high and wide of Jones' goal.
United's best chance of the first-half came just before the interval when Van Nistelrooy found space on the edge of the area but blazed his shot over the bar.
Boro continued to come forward after the break and Van der Sar had to make another smart save to keep out Downing's thunderbolt from the edge of the area.
The introduction of Cristiano Ronaldo from the United bench brought an extra dimension to the United attack and they enjoyed their best spell of the match just after the hour mark.
Ronaldo had already brought a fine save out of Jones when Cattermole inexplicably handled Ryan Giggs' cross in the box, leaving referee Chris Foy no choice but to point to the spot.
Van Nistelrooy chose to take a short run up before picking his spot - but Jones flung himself to his right and pushed the ball away.
John O'Shea almost made up for the Dutch striker's miss when he fired narrowly wide from a tight angle, but Boro survived again.
Boro were penned back in their own half for most of the final 15 minutes but United could find no way through.
Man Utd manager Sir Alex Ferguson:
"We started slowly but in the second half we showed far more urgency and we should have won the game.
"They made it difficult for us but we get a lot of teams doing that and it is up to us to break them down.
"Ruud van Nistelrooy's penalty miss was disappointing. You expect him to score but we let them off the hook."
Middlesbrough manager Steve McClaren:
"I am delighted with the result and delighted with the performance.
"Our performance against Everton with a very young team was excellent and we didn't get the result. It was excellent here and we got a decent result.
"The team is maturing. We are a young side but it is getting experience and we are growing in belief."
Man Utd: Van der Sar, Neville, Ferdinand, Brown, Silvestre, Park (Ronaldo 56), O'Shea, Giggs, Evra (Richardson 56), Saha (Rossi 81), van Nistelrooy.
Subs Not Used: Howard, Vidic.
Booked: Neville, Silvestre.
Middlesbrough: Jones, Parnaby, Riggott, Bates, Queudrue (Taylor 64), Morrison (Christie 72), Cattermole, Boateng, Rochemback, Downing, Maccarone (Parlour 80).
Subs Not Used: Wheater, Knight.
Booked: Bates, Rochemback.
Ref: C Foy (Merseyside).