United Rugby Championship
Sharks (5) 26
Tries: Kolisi, Mapimpi, penalty try, Esterhuizen Cons: Masuku, Jordan Hendrikse
Ulster (20) 34
Tries: Lowry, Kok, Stewart, Reid Cons: Doak 4 Pens: Doak 2
Ulster maintained their 100% record in the United Rugby Championship with an impressive bonus-point win over the Sharks in an incident-packed game in Durban.
Michael Lowry, Werner Kok, Tom Stewart and Callum Reid scored for the visitors, who backed up their wins over the Dragons and Bulls with a confidence-boosting result on South African soil.
Eleven points from Nathan Doak's boot also proved decisive for Richie Murphy's side.
Despite welcoming five Springboks back into their line-up, the Sharks paid the price for a sluggish and ill-disciplined display, although they picked up a bonus point as Siya Kolisi, Makazole Mapimpi and Andre Esterhuizen all crossed in addition to a penalty try.
Ulster end their South African tour against the Lions in Johannesburg on 25 October (12:45 BST) before the autumn break.
Last season, Ulster were guilty of blowing a 19-0 lead to lose 22-19 to the Sharks in Belfast in April.
But with confidence high from a couple of early-season wins, the Irish province held firm in the closing stages of a chaotic contest.
For much of the first half, everything seemed to be going Ulster's way. They got off to an ideal start when Lowry combined well with Doak to open the scoring after five minutes.
The visitors stretched their lead when Kok marked his first appearance of the season with a fine individual try.
Ulster's cause was also helped by the Sharks failing to take their opportunities, with Jacob Stockdale holding up Eben Etzebeth on the try line moments after Lowry's try, while Siya Masuku missed two kicks at goal.
While Ulster remained on top for much of the first half, South Africa captain Kolisi barged his way over the line to narrow the deficit before half-time.
More to follow.
Sharks: E van der Merwe; E Hooker, J Julius, A Esterhuizen, M Mapimpi; S Masuku, G Williams; O Nche, B Mbonambi, V Koch, E Etzebeth, M Orie, S Kolisi, V Tshituka (capt), P Buthelezi.
Replacements: F Mbatha, S Matanzima, R Dreyer, B Hlekani, E Tshituka, Jaden Hendrikse, Jordan Hendrikse, L Am.
Sin-bin: Koch (52), Mapimpi (57)
Ulster: M Lowry; W Kok; J Hume, S McCloskey; J Stockdale; J Murphy, N Doak; S Crean, T Stewart, S Wilson; I Henderson, H Sheridan; D McCann, N Timoney, J Augustus.
Replacements: R Herring, C Reid, T O'Toole, J Hopes, S Reffell, C McKee, J Flannery, J Postlethwaite.
Sin-bin: O'Toole (62)
Referee: Ben Whitehouse (WRU)