Juan Mata curled in a free-kick with five minutes to go, before Ashley Young’s set-piece was bundled into his own net by Juventus defender Alex Sandro.
Cristiano Ronaldo had put the hosts ahead with an outstanding volley against his former club.
Ronaldo watched Leonardo Bonucci’s long pass over his shoulder before lashing it past United goalkeeper David De Gea for his first goal in the competition since signing for the Serie A leaders.
Juventus had hit the frame of the goal either side of half-time, with Sami Khedira striking a post and Paulo Dybala curling an effort on to the bar.
Jose Mourinho’s side offered little attacking threat at the other end, until substitute Mata beat goalkeeper Wojciech Szczesny with a well-placed free-kick from the edge of the box in the 86th minute.
Three minutes later and another United free-kick proved Juventus’ undoing, as Young’s in-swinging delivery was inadvertently turned in under pressure by Sandro from close range.
The visitors’ late double keeps them second in Group H and two points above Valencia, who beat Young Boys 3-1 in the early kick-off, with two games still to play.
Mourinho’s side look a long way from winning the competition 20 years on, but his players’ reaction at the final whistle – and Mourinho’s cupped ear to the Juventus fans – showed how important taking three points in Turin was to the Reds.
Juventus had won three from three and were yet to concede a goal in the Champions League this season before Mata’s strike, while United’s late winner inflicted only the Serie A champions’ second loss at home in the group stages in 36 games.
United – without Belgium forward Romelu Lukaku, who is also a doubt for Sunday’s Manchester derby – opted for Alexis Sanchez to lead the line, but the Chilean had a bigger influence on the visitors’ defensive performance than he did their attack.