It was no surprise to see SuperSport immediately off on the front-foot with three successive corners at the near post by Aubrey Modiba.
Thabo Mnyamane asked questions of Gerson who was able to block away his shot, as the Angolans almost struck a crucial away after Tiago found space in the box.
Mnyamane continued his hunt for a goal after he unleashed another shot from a pass off Reneilwe Letsholonyane, but Gerson was able to make another save after 17 minutes.
The visitors showed their intentions from the offset in the second half with a threat on Ronwen Williams from a corner, who was forced to make a one-handed save.
Petro made no mistake minutes later to go in front through the boot of Elio, who needed three attempts to latch home their all-important away goal that put them in control of the contest.
It was all to do for Matsatsantsa who now had to grab two goals without reply to progress, but it was hard to see where any of that would come from given their continued goal-mouth struggles.
It was advocated once more when Aubrey Modiba missed a sitter on two attempts, the first forcing Gerson to a save and the second going inches from goal.
The more they got closer to scoring the more they were left frustrating, with Mnyamane being denied by the top of the crossbar from a reaction type-a-shot on 66 minutes.
The former AmaTuks finally turned his luck with the equaliser from inside the box following a free-kick by Dean Furman.
The comeback was complete when Mnyamane completed his brace after heading home following another assist from Furman, as United march on.
SuperSport: Williams, Kekana, Daniels, Gould, Bhasera, Furman, Letsholonyane, Webber, Modiba, Mnyamane, Smith.
Subs: Pieterse, Boateng, Mokoena, Mbule, Egwuekwe, Nhlapo, Le Roux.
Petro: Gerson, Diney, Azulao, Mira, Ari, Elio, Herenilson, Job, Manguxi, Carlinhos, Wilson.
Subs: Lama, Maludi, Dennis, Nandinho, Tony, Tresor, Pedro.