An own goal scored by a deflection off goalkeeper Rowen Fernandez from a Siyabonga Sangweni shot six minutes from time saw the Buccaneers walk away with all three points at Orlando Stadium.
The result sees Pirates up to third on the table with 11 points while Wits dropped to fourth place with ten points.
It was not the best display of football by either side, especially the second half which produced very little in terms of goalmouth action.
The match did get off to a positive start with both teams on the attack early on.
In the third minute Sibusiso Vilakazi met a right wing cross, but he saw his ten-yard header brilliantly saved by the fingertips of Senzo Meyiwa.
A minute later Pirates had their first effort on goal when Kermit Erasmus broke through on goal, but was stopped in his tracks by Fernandez.
In the 22nd minute Wits should have taken the lead when Sameehg Doutie played Getaneh Kebede in behind the Buccaneers defence with pin-point pass, but fired inches over the crossbar from ten-yards out.
Pirates suffered a bit of a setback on the half hour mark when Thandani Ntshumayelo had to leave the field injured and was replaced by Daine Klate.
That took the sting out of the game a bit as the teams entered the break all-sqaure.
The second half was a poor affair with both teams guilty of wasting possession and consequently chances on goal were few and far between.
The game looked to be heading for a stalemate before an unfortunate incident saw Fernandez put the ball into his own net.
Siya Sangweni unleashed a 24-yard thunderbolt that struck the right-hand post and then into the back of a diving Fernandez and over the goalline, 1-0.