South Africa began their second innings with a fierce pace, scoring over six an over, after they bowled Australia out for 163.
Resuming the day on 33 for 2 at the WACA, the Aussies lost Warner in the second over of the day as he edged a Steyn delivery straight through to wicketkeeper de Villiers.
Ricky Ponting playing his last Test got a standing ovation from the crowd; he was declared LBW at four runs.
Wade checked his attacking instincts a bit as he, along with Hastings, took Australia forward in the session after lunch before he lost his focus and was bowled by left-arm spinner Robin Peterson for 68.
Hashim Amla played a brilliant innings, and was not out at 99 runs off just 84 balls as South Africa got a comprehensive lead over Australia.
Dale Steyn was at his best as he picked up four wickets to restrict Australia at 163 runs in the first innings.