Fast bowler Jasprit Bumrah took his 11th five-wicket haul to put India ahead by 46 runs at lunchtime on day two of the first test in Perth, and Australia was all out for 104 on Saturday.
With his opening ball of the morning, which pitched back-of-a-length and sailed away from left-hander Alex Carey (21) to keeper Rishabh Pant, stand-in captain Bumrah (5-30) established the tone.
India was bowled out for 150 in two sessions on a chaotic first day that saw 17 wickets, but Bumrah spearheaded an incredible comeback that had Australia reeling at 67-7 by stumps.
Harshit Rana (3-48) took the second wicket of day two, bowling short and fast to tail-ender Nathan Lyon (five), who could only slice the ball as far as KL Rahul at gully.
Mitchell Starc, an overnight batsman who went on to score 26, denied Bumrah a career-best haul when he edged between Pant and first slip, then threw caution to the breeze by smashing Rana to the midwicket barrier.
Starc took punches to the helmet and shoulder during a 112-ball stay, but he persevered and shown resilient desire that the other batsmen lacked.