The Sharks emerged 23-15 victors against a powerful Bulls outfit in a typical South African derby in Friday night's Super Rugby action.

It was an inauspicious start from the Sharks, who let the kickoff bounce and Curwin Bosch fumbled the ball, losing possession. In the Bulls attack that followed, they earned a penalty after World Cup winner Thomas du Toit went off his feet at ruck time. Former Springbok metronome Morne Steyn, making his return to Super Rugby after a seven season-long hiatus in France, fittingly kicked the opening points.

Minutes later, Bosch would slot a pair of penalties to put the hosts in the lead after referee Marius van der Westhuizen ruled offside in front of the Bull’s own poles, then penalised prop Lizo Gqoboka at a scrum.

Midway through the half, a Bulls breakout was snuffed by a great by Sb'u Nkosi tackle, but the Springbok winger gave away a penalty after going off his feet. Steyn needed no invitation to level the scores.

As the arm-wrestle continued, the Sharks enjoyed a period of sustained attack deep in the Bulls 22m, but their hands would let them down and the Bulls escaped without punishment.

The astute boot of Steyn kept the Sharks in their half, which was to the visitors advantage as the Sharks lineouts had been woeful at best, with the Bulls' Andries Ferreira causing havoc. After another turn at the lineout, scrumhalf Ivan van Zyl whipped the ball to Steyn lurking in the pocket, who calmly slotted a drop goal. The score remained 6-9 as the players headed down the tunnel.

There was a slight delay at the break, with the lights suffering from technical issues. The crowd responded with a mass of cellphone torches as the customary Sweet Caroline bleared from the speakers.

Their efforts seem to shed some light on the Sharks attack, as Bosch and Nkosi combined to earn the first five pointer of the match soon after. The fly-half sent out an average looking cross-kick for his winger that looked well covered by Bulls winger Rosko Specman, who bizarrely let the ball bounce. A flying Nkosi pounced on the ball and touched down for an athletic try. Bosch added the extras with a superb conversion from the near-side touchline.

Minutes later at the other end of the park, Steyn slipped in a deft kick for winger Cornal Hendricks, who made a meal of the gather and knocked the ball on, butchering a sure try.

The back-and-forth continued and Bulls’ centre Burger Odendall gave away a soft penalty in the middle of the park. Bosch was on had to kick the three points from 40m out, making it 16-9 with 25 minutes to play.

The Bulls gained some ascendancy at scrum time, resulting in a penalty that made it a four-point ball game after Steyn sent it over the crossbar.

After some helter skelter play that saw Bulls replacement scrum-half Embrose Papier get his side out of trouble with an exceptional run from his own try line, the Bulls earned a penalty on the halfway line. Unfortunately for the visitors, Steyn did not have enough distance on the kick and they held onto the lead with ten minutes left on the clock.

A racking kick from Papier left Sharks’ full-back Aphelele Fassi under pressure and he made the wrong choice to try and run himself out of trouble, resulting in a penalty for the Bulls. This time, Steyn obliged and moved the score to 16-15.

But it was an absurd moment in the dying embers of the match that sealed the Bulls’ fate. Springbok full-back Warrick Gelant fieldedf the deep kickoff and his clearing kick connected flush with his own player’s head. In the ensuing scrum, a planned move saw Etienne Oosthuizen break the advantage line and offload to diminutive debutante scrum-half Sanel Nohamba, who showed excellent pace to score the winning try, sending Kings Park into raptures.

Sharks - Tries: S'Bu Nkosi, Sanele Nohamba. Conversions: Curwin Bosch (2) Penalties: Curwin Bosch (3)

Bulls - Penalties: Morne Steyn (4) Drop Goal: Morne Steyn.

Sharks - 15 Aphelele Fassi, 14 S'bu Nkosi, 13 Lukhanyo Am (c), 12 Andre Esterhuizen, 11 Makazole Mapimpi, 10 Curwin Bosch, 9 Louis Schreuder, 8 Sikhumbuzo Notshe, 7 Tyler Paul, 6 James Venter, 5 Hyron Andrews, 4 Ruben van Heerden, 3 Thomas du Toit, 2 Kerron van Vuuren, 1 Ox Nche
Replacements - 16 Craig Burden, 17 Juan Schoeman, 18 John-Hubert Meyer, 19 Le Roux Roets, 20 Henco Venter, 21 Sanele Nohamba, 22 Boeta Chamberlain, 23 Jeremy Ward

Bulls - 15 Warrick Gelant, 14 Cornal Hendricks, 13 Johnny Kotze, 12 Burger Odendaal (c), 11 Rosko Specman, 10 Morné Steyn, 9 Ivan van Zyl, 8 Josh Strauss, 7 Abongile Nonkontwana, 6 Jeandré Rudolph, 5 Juandré Kruger, 4 Andries Ferreira, 3 Wiehahn Herbst, 2 Jaco Visagie, 1 Lizo Gqoboka
Replacements - 16 Johan Grobbelaar, 17 Simphiwe Matanzima, 18 Trevor Nyakane, 19 Ruan Nortje, 20 Ryno Pieterse, 21 Wian Vosloo, 22 Embrose Papier, 23 Manie Libbok