The home side had battled to 68 for two at lunch and moved on to 159 for four after the afternoon session, with AB de Villiers unbeaten on 10 and Faf du Plessis (14 not out).
Captain Graeme Smith (24) was one of the two wickets to fall in the morning in his 100th Test as captain - 99 for his country and one for a World XI side - as Pakistan's bowlers made life difficult for the world number one side.
Alviro Petersen (20) was also back in the pavilion before Hashim Amla and Jacques Kallis saw the Proteas through to lunch.
There seemed to be plenty of life in the Wanderers pitch for the bowlers and Pakistan were initially frustrated as the ball flew past the outside edge on several occasions.
South Africa appeared to have weathered the early storm as Petersen and Smith approached a half-century opening stand, but Petersen then got a leading edge which looped up to third slip off the impressive Junaid Khan with the total on 46.
And it was soon 46 for two as Smith, who had won the toss and opted to bat, edged behind off Umar Gul, giving wicketkeeper Sarfraz Ahmed a simple catch.
Kallis and Amla ensured there were no further losses and the pair looked in good form after lunch, with Kallis reaching his 50 off 74 balls and Amla content to play a typically patient innings.
However, just after reaching his half-century, Kallis (50) miscued a pull shot and was superbly caught in the deep by Asad Shafiq, who dove forward to take an excellent catch at full stretch.
And Amla (37) went just 10 runs later as he was caught off the bowling of Younis Khan as South Africa were reduced to 135 for four.