The Sharks claimed just their third win of the Super Rugby season on Saturday as they got the better of the Stormers 24-17 at Kings Park.
Lukhanyo Am, Jean-Luc du Preez and Thomas du Toit's tries saw them prevail, with Robert du Preez landing nine points off the tee.
In reply, the Stormers' try-scorers were Raymond Rhule and Ramone Samuels as they remain in fourth spot in the South African Conference.
Entertainment was lacking in the first-half in Durban as errors marred the derby contest, with only a 39th minute Rhule try the highlight.
It was a physical battle early on and the Sharks should have been in front on 14 minutes when, from a Curwin Bosch break from inside his half, the Stormers would go off their feet, handing Du Preez a chance off the tee. However, the fly-half hit the upright with his attempt.
Two minutes later he would kick his side into the Stormers 22 and soon after, hands in the ruck allowed Du Preez to make it a 3-0 buffer.
Bosch could not double their lead on 22 minutes, from long-range, and from that moment the Stormers would start to enjoy some possession.
That ball eventually resulted in points and it came from an attack on their own 22, Siya Kolisi breaking before handing to Rhule for 7-3.
Coming out for the second-half the early signs were for a much improved spectacle and when Makazole Mapimpi's run saw him offload to Am before being hauled to ground, the Sharks had their first try and the lead back. Du Preez added the two points, making it a 10-7 advantage.
That lead was wiped out on 50 minutes though when Willemse made prop Du Toit pay for his offence at the ruck and the game was locked at 10-10.
The Stormers sensed an opportunity and moved 17-10 in front when Samuels finished off slick handling on the left wing from turnover ball.
Sbu Nkosi came agonisingly close to cutting the gap on 56 minutes when he did well to collect a grubber but then lost it in grounding.
But they were beginning to apply pressure on the Stormers and, with Dewaldt Duvenage sin-binned on the hour for a deliberate knock-on, the hosts had territory and also a numerical advantage in their favour. It paid off as pivot Du Preez set up his brother Jean-Luc for the try.
At 17 apiece the closing stages were set up for a grandstand finish and the Sharks were the ones to strike, with substitutes Akker van der Merwe and Hyron Andrews combining to set up tighthead prop Du Toit for the score. That gave the Sharks a 24-17 lead which they held on to.
Tries: Am, JL du Preez, Du Toit
Cons: R du Preez 3
Pen: R du Preez
Tries: Rhule, Samuels
Cons: Willemse 2
Yellow Card: Duvenage
Sharks: 15 Curwin Bosch, 14 Sbu Nkosi, 13 Lukhanyo Am, 12 Andre Esterhuizen, 11 Makazole Mapimpi, 10 Robert du Preez, 9 Cameron Wright, 8 Daniel du Preez, 7 Jean-Luc du Preez, 6 Philip van der Walt, 5 Stephan Lewies, 4 Ruan Botha (c), 3 Thomas du Toit, 2 Chiliboy Ralepelle, 1 Juan Schoeman
Replacements: 16 Akker van der Merwe, 17 Mzamo Majola, 18 Ross Geldenhuys, 19 Hyron Andrews, 20 Jacques Vermeulen, 21 Louis Schreuder, 22 Marius Louw, 23 Lwazi Mvovo
Stormers: 15 Dillyn Leyds, 14 Craig Barry, 13 EW Viljoen, 12 Damian de Allende, 11 Raymond Rhule, 10 Damian Willemse, 9 Dewaldt Duvenage, 8 Sikhumbuzo Notshe, 7 Pieter-Steph du Toit, 6 Siya Kolisi (c), 5 Chris van Zyl, 4 Jan de Klerk, 3 Wilco Louw, 2 Ramone Samuels, 1 Steven Kitshoff
Replacements: 16 Scarra Ntubeni, 17 JC Janse van Rensburg, 18 Carlu Sadie, 19 Kobus van Dyk, 20 Nizaam Carr, 21 Paul de Wet, 22 SP Marais, 23 JJ Engelbrecht
Referee: Glen Jackson (New Zealand)
Assistant referees: Egon Seconds (South Africa), Cwengile Jadezweni (South Africa)
Television match official: Marius Jonker (South Africa)