Oscar got the ball rolling on 10 minutes before Neymar grabbed his first just before half-time.
The Barcelona star took just seconds after the re-start to score again, and after Fernandinho got in on the act, Neymar completed his treble in injury time.
The 22-year-old has now scored 30 goals in 47 internationals for Brazil - leaving him just two goals outside the country's all-time top-10 scorers.
It did not take long for Felipe Scolari's side to take the lead as Chelsea midfielder Oscar lifted a delicate chip over Bafana Bafana goalkeeper Ronwen Williams after running on to a through ball from Hulk.
Neymar went close to extending the advantage on 20 minutes when he was put through one-on-one with Williams, but the striker left himself with too much of an angle to score from and sent his shot wide.
Williams then made a good save to deny Neymar when he tricked his way past a couple of defenders.
Neymar eventually broke through five minutes before half-time as he profited on Williams' slow reactions to slide his shot through his legs.
Brazil changed into their blue kits for the second half and it took barely 30 seconds for Neymar to score in it.
The striker beat the offside trap to run on to a lofted pass before coolly lobbing over the stranded Williams.
Brazil turned on the style from then on, although they had to wait until the 79th minute for a fourth when Fernandinho smashed in his first international goal.
Neymar then completed the rout, and his hat-trick, in injury-time when he could not miss after Jo's knock down.
Brazil will play two more friendlies before their World Cup opener against Croatia in Sao Paulo on June 12.
The Selecao will host Panama in Goiana on June 3 before meeting Serbia at the Morumbi Stadium in Sao Paulo three days later.