Pakistan walked away with their first medal in the event in eight years.
Pakistan scored through Muhammad Rizwan Junior (22nd minute), Shafqat Rasool (41st) and Muhammad Ateeq (66th) to overcome India, for whom V Raghunath (70th) and Rupinder Pal Singh (70th) scored through penalty corners.
Three-time Champions Trophy winners Pakistan's last medal came at Lahore in 2004, where too they won the bronze by overcoming India in the play-off.
In fact, Pakistan's last four medals in the Champions Trophy have come at the expense of India, who have lost bronze medal matches to Pakistan in 2002, 2003, 2004 and now in 2012.
India, who came to the Champions Trophy on basis of a wildcard after finishing last in the London Olympics, took the early lead when VR Raghunath converted a penalty corner by sending a low drag-flick into the left corner.
Pakistan then applied pressure to cause problems for the Indian defence, while at the other end, the Indian forwards messed up some openings due to their wayward shooting.
Pakistan equalised in the 22nd minute through Muhammad Rizwan Junior, who sent a soaring shot from top of the circle after being put in possession by Fareed Ahmed.
India created a lot of openings in the next 10 minutes, but failed to score, and were lucky to be tied 1-1 at half-time as unmarked Muhammad Waqas shot wide after getting a loose ball on top of the circle.
India started the second half by earning a penalty corner, but Raghunath's shot was too weak to cause any threat to the rival goal.
Pakistan went ahead seven minutes into the second session when Rasool's bouncing shot from close range beat goalkeeper TR Potunuri.
Pakistan then enjoyed the edge as India's strikers repeatedly faltered in the rival territory, which was often packed as Pakistan slowed down the pace of the game and fell back to defend the lead.
The game was put out of India's reach by Ateeq's penalty corner conversion in the 66th minute, when he sent a carpet shot into the right corner give Pakistan a 3-1 lead with four minutes remaining.
India forced two penalty corners in the last two minutes and Rupinder converted the last of their five penalty corners with a firm shot in the 70th minute.
Defending champions Australia are pitted against Olympic Games silver medallists Netherlands in the final, to be played later in the day.
Belgium took the fifth place with a 5-4 victory through a golden goal, while New Zealand pushed England to the bottom spot by prevailing 3-2 in the playoff to decide the seventh position.