Ajinkya Rahane and Rohit Sharma held firm in a steadying partnership to nudge India to 346 for four at tea after Australia fought back with two wickets in the heat of day two of the third test on Thursday.
Pace spearhead Mitchell Starc denied Virat Kohli a second century for the series, having the India captain caught on the rope for 82, before seamer Pat Cummins bowled Cheteshwar Pujara for 106 on a scorching afternoon at the Melbourne Cricket Ground.
Rahane was 30 not out and Rohit on 13, the pair digging in with a 47-run stand to maintain India's advantage on a pitch offering little assistance for the bowlers.
India had managed only 52 runs in the first session as the home side bowled grudging lines, so Kohli returned keen to accelerate the innings after resuming with Pujara on 277 for two after lunch.
Toiling under a blazing sun, Australia's seamers seemed resigned to banging the ball in short with the hope of coaxing the batsmen into a mistake.
Kohli rose to the bait in Starc's third over after lunch, pulling the seamer twice over mid-on, the first for a scratchy three and the second for a more commanding four three balls later.
He was out on the next delivery, trying to ramp a third short ball over third man only to be caught by Aaron Finch on the rope.
Pujara had earlier raised his second century of the series, having already rescued India with 123 in the first innings of their series-opening win in Adelaide.
With only four wickets produced by a world class attack in five sessions, Australia's bowlers face further work in the searing conditions with the temperature tipped to reach 36 degrees Celsius.
The four-test series is poised at 1-1, after Australia won the second match in Perth.