Turin - Juventus' defensive frailties were again exposed as they laboured to a 2-1 win at home to Sporting Lisbon in the Champions League on Wednesday.
Mario Mandzukic scored the winner six minutes from time after free-kick specialist Miralem Pjanic had cancelled out an own-goal by Juventus defender Alex Sandro in the first half.
Juventus remained three points behind Group D leaders Barcelona, who beat Olympiakos 3-1.
Massimiliano Allegri's side had dropped points in their previous two Serie A matches and made a series of errors in a 2-1 home loss to Lazio on Saturday.
Juventus have struggled defensively this season following the departures of Leonardo Bonucci and Dani Alves, and Sporting stunned the Allianz Stadium by going in front in the 12th minute.
A Bruno Fernandes pass came through to Gelson Martins, whose effort was parried by Gianluigi Buffon but the ball rebounded off Sandro and into the back of the net.
That appeared to spark Juventus into life and Mandzukic would have levelled if it wasn't for a perfectly-timed tackle from Jeremy Mathieu.
The hosts did equalise in the 29th when Pjanic marked his return from injury by placing a free kick into the top left corner.
Juventus almost went in front seconds later but Mandzukic fired just past the left-hand post.
Allegri threw on Douglas Costa for Stefano Sturaro in the 84th minute and the substitute made an immediate impact.
Just 13 seconds after coming off the bench, he provided the cross for Mandzukic to head home.