Substitute Hulk scored the game’s winner with 15 minutes to go, but Bafana Bafana will take a lot of positives from the game, knowing they pushed one of the world’s top sides all the way on their own turf.
Kick-off was delayed by almost 20 minutes, making it an even more nerve-wracking wait for new coach Gordon Igesund and his two debutants, Dean Furman and Dino Ndlovu.
And right from the get-go the visitors got stuck in, with Siyabonga Sangweni making Neymar’s day an uncomfortable one.
Bafana were holding their own, and should have taken the lead on 12 minutes. Siboniso Gaxa played a one-two with Ndlovu on the edge of the area and found himself one-on-one with Diego Alves, but his shot was a weak one and straight at the keeper.
Brazil were next to threaten five minutes later as Dede found himself unmarked from a free-kick, but his powerful header was well saved by Itumeleng Khune.
Sangweni again had Neymar’s number midway through the half when he reacted quickest to deny the Brazilian attacker a shot at goal.
There was heartbreak for Ndlovu just past the half-hour mark when he went down with what looked like a dislocated shoulder, allowing Benni McCarthy to come on for his 80th international cap.
Khune was called into action a minute later to parry a long-range shot, and just before the break again when he stood tall to save in a one-on-one from Neymar, who was having a game to forget.
There was one more significant piece of action just before half-time as McCarthy limped off with an ankle injury after a challenge from David Luiz – his comeback lasting just 10 minutes.
Bafana started the second half in style and could have netted twice in the opening five minutes of the second half.
First Lerato Chabangu let fly from distance with a shot that sailed inches over, before Parker produced some magic, skinning Chelsea’s Luiz before squaring a ball which Dede cleared over his own bar.
Brazil hit back – first Leandro powered a shot into the side-netting, before the anonymous Neymar fired straight at Khune from 20 yards out.
The Kaizer Chiefs goalie was at his best, and produced another fantastic diving save with 20 minutes to go when he kept out Neymar’s curling freekick.
But even Khune was powerless to stop the opener five minutes later. Luiz got in behind Bafana’s defence and powered a shot which Khune parried, only for Hulk to thunder the rebound into the back of the net.
Brazil had a few more half-chances towards the end as Bafana pushed forward, but in the end settled for a very nervy 1-0 Independence Day victory against the gallant South Africans.
Brazil (0) 1 (Hulk 75)
South Africa 0
Brazil: Diego Alves, Dani Alves, David Luiz, Dede, Marcelo (Alex Sandro 60), Lucas Moura, Romulo (Paulinho 64), Ramires, Oscar, Leandro Damiao (Hulk 64), Neymar (Arouca 90)
South Africa: Khune, Gaxa, Khumalo, Sangweni, Masenamela, Furman (Mahlangu 59), Dikgacoi, Tshabalala, Chabangu (Letsholonyane 56), Ndlovu (McCarthy 33) (Parker 44), Serero (Maluleka 76)