The first chance of the match fell to the home side after just two minutes, as Alessandro Rosina turned Mariano de Almeida Angelo's cross towards the Juve goal but could not get it past Gianluigi Buffon.
Claudio Marchisio tried an audacious attempt from the edge of the box for Juventus in the 11th minute, but failed to keep his shot on target.
Emanuele Calaio could have equalised for Siena in the 23rd minute when he was teed up by Rosina, but the forward could not tap the ball home.
That miss almost came back to haunt the home side when Pirlo rattled the crossbar in the 40th minute.
Minutes later Marchisio forced Gianluca Pegolo into making an acrobatic save between the Siena posts.
The hosts eventually restored parity, and the equaliser came in the second minute of first-half injury time.
Calaio made up for his earlier miss when he headed home Angelo's cross past a helpless Buffon.
Juve then almost conceded an own goal five minutes later, as Buffon forced a Giorgio Chiellini header over the bar.
Mirko Vucinic had a chance to put the visitors back into the lead when he rushed towards meeting Giovinco's brilliant delivery into the Siena box, but Pegolo made a crucial save.
Cristiano Del Grosso crafted a brilliant opportunity for Rosina in the 77th minute when he whipped in a cross that found him unmarked, but the Siena forward's header was off target.
Rosina would go on to rue his miss, as five minutes from time Juve scored the winner through a fierce shot from Marchisio.
The wins see Juventus remain in pole position in Serie A with 19 points from seven matches.