Ulster kept their Heineken Cup prospects on course by deservedly beating Saracens at Ravenhill.
Ulster (3) 19
Try: R Best
Pens: Humphreys (4)
Saracens (7) 10
Glen Jackson converted his own 14th minute try to help Saracens into a 7-3 lead at half-time with David Humphreys replying for the home side.
Saracens still led by four after an hour but two Humphreys penalties edged Ulster ahead with four minutes left.
Rory Best then notched an Ulster try and Humphreys' conversion left Saracens without even a bonus point.
Playing with a wind advantage, Saracens put Ulster under early pressure and had a good chance to put points on the board but Jackson missed with the penalty from inside the 22.
Saracens were gifted the opening score of the match when Jackson shrugged off a weak Andrew Trimble tackle to cross the line after Best's line-out throw had gone straight to Simon Raiwalui.
The try-scorer added the extras to increase Saracens' lead.
Ulster finally broke out of their own half midway through the opening half and produced pressure which yielded a straightforward penalty for Humphreys in the 25th minute.
Glen Jackson scored Saracens' try in the first half
Jackson and Humphreys then missed penalties at either end before Saracens wasted a chance to notch a second try when Thomas Castaignede spilled the ball after Kevin Sorrell had run on to Jackson's clever kick into space.
Ulster made a change at the interval with Stephen Ferris replacing Neil McMillan in the second row.
If anything, the wind appeared to pick up at half-time which was to Ulster's advantage in the second period.
The 10 minutes after half-time were largely played in Saracens territory but handling errors, in the wet conditions, inhibited Ulster's efforts.
Humphreys cut Saracens' lead to a single point with a 56th-minute penalty but Jackson quickly replied to restore the visitors' lead to four.
Saracens were perhaps fortunate not to concede a penalty-try eight minutes from time when Castaignede appeared to deliberately knock on as Ulster had an overlap deep in the visitors 22.
The Frenchman was sin-binned for the offence but while Humphreys added the penalty, the English club were still a point ahead.
However, Trimble's brilliant break put the Saracens defence under huge pressure with four minutes left and when replacement Matt Cairns was caught blatantly offside, Humphreys struck his fourth penalty to put the home side ahead.
Cairns' offence resulted in him joining Castaignede in the sin bin.
Saracens were still on course for a potentially vital bonus point but the prospects of that evaporated when yet more Ulster pressure yielded a try for Best and Humphreys calmly landed the conversion from the touchline.
Ulster captain Simon Best:
"Had we lost tonight we could possibly have said goodbye to qualification but it's really only half-time now and we go to Saracens next week and probably need to win there as well.
"The conditions made the ball very slippery and there were a lot of mistakes from both sides.
"To keep them from the bonus point was another good aspect to it."
Saracens boss Steve Diamond:
"We'll smash them next week. We're confident of our own ability and we will bounce back at Vicarage Road.
"At half-time we should have been 13-3 up and we let them off the hook there.
"The group will probably now all come down to bonus points, which is a worry for us as we haven't got any."
Ulster: B Cunningham; T Bowe, K Maggs, A Trimble, P Steinmetz; D Humphreys, K Campbell; B Young, R Best, S Best, J Harrison, M McCullough, N Best, N McMillan, R Wilson.
Replacements: S Ferris for McMillan 40 mins, I Boss for Campbell 76. Not used: N Brady, R Moore, R Caldwell, A Larkin, J Topping.
Saracens: D Scarbrough; P Bailey, T Casaignede, K Sorrell, T Vaikona; G Jackson, K Bracken; K Yates, S Byrne, C Visagie, S Raiwalui, K Chesney, H Vyvyan, B Russell, B Skirving.
Replacements: B Broster for Yates 65, M Cairns for Byrne 65, M Bartholomeusz for Sorrell 70, B J Russell for Vaikona 73. Not used: A Kyriacou, D Seymour, A Dickens.
Sin Bin: Castaignede 71, Cairns 77
Referee: Eric Darriere (France).