Rafael Benitez's men started their 15th match of the campaign looking to build on last week's 4-2 away win at Lazio, which came on the back of two consecutive defeats.

However, despite edging Francesco Guidolin's visitors in both halves, they failed to capitalise on their share of chances and paid the price in the 80th minute when Basta bundled home in a busy six-yard box.

Napoli's second draw means they remain third but are now eight points adrift of Juventus, 2-0 winners at Bologna on Friday, and two adrift of Roma, who entertain Fiorentina early on Sunday.

Benitez later hit out, telling Sky Sport Italia: "We're making too many mistakes from dead ball situations, and we're suffering because we're making mistakes we just shouldn't be making.

"We still have to improve."

Goran Pandev had given the hosts a 2-0 lead with close-range strikes by the 41st minute after being set up by Federico Fernandez and Gonzalo Higuain respectively.

But Udinese, who beat Fiorentina two weeks ago and were unlucky not to take a draw from a 1-0 defeat away to Juventus last week, did well to keep their composure and were rewarded just before the interval.

A corner found the head of Thomas Heurtaux, and his effort came off the head of Fernandez and past Rafael Cabral, standing in for Pepe Reina in the Napoli net.

Napoli's defence was then at fault for backing off in the 70th minute when Bruno Fernandes pounced on a mistake by Gokhan Inler and was allowed to stride forward and send a weighted lob over the head of Cabral.

If Napoli were stunned, they didn't show it.

Only a minute later Higuain collected Pandev's ball on the left and although his angled strike was pushed out by Zeljko, Blerim Dzemaili was on hand to bundle the loose ball home for a 3-2 lead.

Napoli thought they had done enough to secure the points but from a corner on 80 minutes Basta benefited from a mix-up in the Napoli box to beat Cabral from close range.

Earlier, Mario Balotelli scored a brace, including a stunning free-kick seven minutes from time, to help secure a share of the points for Milan in a hard-fought 2-2 away draw to Livorno.

Coach Massimiliano Allegri, who is from Livorno, had warned his side they would be given no favours and said: "Livorno had us under pressure, compliments to them because at 1-0 down they did well to fight their way back.

"But we lacked determination and when that happens it's difficult to win a match like this."

Balotelli opened the scoring in the eighth minute with a fortuitous flick at the back post following Kaka's inviting ball across the face of goal.

However on what was Allegri's 200th game in Serie A, Livorno were in no mood for nostalgia and pulled level through a Luca Siligardi curling drive on 26 minutes.

Livorno then took a 2-1 lead when Paulinho collected a weighted through-ball from midfield and outpaced Cristian Zapata to beat Gabriel at his near post in the 58th minute.

But their hopes of holding on for their first win against Milan since January 2005 were kept in check when a Balotelli free-kick from 25 metres left 'keeper Francesco Bardi with no chance.

Balotelli almost grabbed a third two minutes from time but the striker saw a stunning, looping drive smack off the crossbar with Bardi beaten.

Balotelli, responding to questions over his recent goal drought, said: "I've been fine throughout, I don't have all these problems that have been reported.

"The goals had dried up, that was all. Tonight I scored two, I could have had three."