Santos striker Fagrie Lakay notably became the youngest ever Bafana international in the friendly at 17 years and 183 days old, bettering the mark set by Ajax Cape Town defender Rivaldo Coetzee last month.
Both countries - who used the game as part of their preparations for the Africa Cup of Nations - fielded experimental sides as the fixture fell outside the Fifa calendar, meaning clubs were not obliged to release their players for it.
Bafana, under the stand-in captaincy of Thamsanqa Sangweni, dominated from the onset, and had a second minute goal controversially ruled out for offside. Moroka Swallows attacker Vuyisile Wana slid home a cross by Themba Zwane, but the latter was adjudged to be in an offside position when freed down the left flank by Man of the Match Zungu.
The hosts continued to press, as Wana and Zulu had wayward attempts on goal before Zungu broke the deadlock in the 31st minute with a composed finish at the back post after being teed up by the impressive Patrick Phungwayo in the box.
Zwane nearly added a second just before the interval but he was bravely foiled in a one-on-one situation by the onrushing Abdul Cisse.
However, Shakes Mashaba's men doubled the advantage in the 53rd minute, as Chippa United forward Zulu tapped into an empty net from just outside the area after the keeper came out to deny debutant Siyanda Ngubo a shot on goal.
Bafana pushed in search of a third, as substitute Lerato Lamola, who replaced Zulu, tested the opposing keeper with a low shot in the 67th minute.
At the other end, the solid-looking Jackson Mabokgwane made a crucial stop in the latter stages after the Bafana defence was exposed.
Mashaba made a raft of changes in the second period, bringing on Lakay, Lamola, Dumisani Msibi, Asavela Mbekile and Ntsikelelo Nyauza.
South Africa: Mabokgwane (Msibi 83'), Nhlapho, Phungwayo, Komane, Mngonyama, Sangweni (Mbekile 84'), Zungu, Zwane (Lakay 76'), Wana (Nyauza 87'), Tlolane (Ngubo 46'), D Zulu (Lamola 63').
Ivory Coast: Cisse, Yannick, Doumbia, Diabate, Magbi, Moukoro, Diomande, Britto, Victorien, Zirignon, Chester.