Australian seamer Josh Hazlewood took three wickets, including the prized scalp of skipper Virat Kohli, to damage India's fightback on the third day of a closely-fought second Test Monday.
India were 122 for four at tea, taking a slender 35-run lead in their second innings. Cheteshwar Pujara on 34 and Ajinkya Rahane on 2 were at the crease.
Hazlewood trapped Kohli lbw for 15 on a shooting inswinger and a review did not help the star batsman as he walked back to a stunned silence at Bangalore's M Chinnaswamy Stadium.
India's move to promote all-rounder Ravindra Jadeja in the batting order also backfired when the left-hander was bowled by Hazlewood for two.
Opener Lokesh Rahul hit 51 before falling to left-arm spinner Steve O'Keefe.
Rahul, who top-scored with 90 in India's first innings, put on 45 with Pujara after Abhinav Mukund (16) was bowled by Hazlewood just after lunch.
But O'Keefe lured Rahul into a drive outside off stump and skipper Steve Smith took a brilliant catch at first slip, making up for an earlier spill against Pujara when the batsman was on 4.
Rahul, who recorded his fourth Test fifty, batted with intent during his 85-ball knock, laced with four fours, to try and take the attack to the bowlers.
In the morning session, left-arm spinner Jadeja returned figures of 6-63 to help dismiss Australia for 276 in their first innings, a lead of 87.
Australia lead the four-match series 1-0.