The Sharks won 47-31, having trailed 24-5 at half-time.
The Lions had led 31-5 early in the second half but a red card to hooker Robbie Coetzee proved a killer blow for the home side.
Coetzee had kicked a Sharks player in the face just after the Durbanites scored a try and received his marching orders from referee Egon Seconds.
The scoreline was 31-12 in favour of the Lions when Coetzee left the field and after that there was only one team on the park.
This is the second red card for foul play that Coetzee has received this season, having been sent off in a Super Rugby game against the Southern Kings in May.
The bonus-point win saw the Sharks move past the Free State Cheetahs to the top of the log, while the Lions are second from bottom.
Sharks flank Jacques Vermeulen, who scored a brace of tries, was named man-of-the-match.
In next weekend's action, the Lions travel to Cape Town to face Western Province (Friday, August 18), while the Sharks have a bye.
Conversions: Javo van der Walt (3)
Tries: Tera Mtembu, Jacques Vermeulen (2), penalty try, Louis Schreuder, John-Hubert Meyer, Keegan Daniel
Conversions: Garth April (5)
Note: A penalty try is worth seven points
Substitutes: 16 Armand van der Merwe, 17 Mzamo Majola, 18 John-Hubert Meyer, 19 Jean Droste, 20 Wian Vosloo, 21 Louis Schreuder, 22 Inny-Christian Radebe