Stephen Ferris was a late withdrawal from the Ulster team due to a rib injury, and David Pollock took his place in the visitors' back row with team captain Chris Henry moving to the blindside.
Kevin Tkachuk and Johnnie Beattie put Glasgow within sniffing distance of the Ulster line in the opening minutes, but it was the visitors who put the first points on the board in the third minute.
Ulster scrum half Marshall spotted the ball on the fringe of a ruck and his three hacks took the ball 80 yards before he touched down.
It took Glasgow 10 minutes to get their heads back up but finally a 50-metre break by Max Evans gave them their first threatening position and, when Ulster offended, Parks slotted the penalty.
That should have lifted Glasgow but they were getting nowhere against an Ulster defence which gave the hosts little or no breathing space.
After a Fergus Thomson break, another spilled ball saw Ulster hack on again to the Glasgow line and only desperate cover kept the home line intact.
Parks had a chance to put the home team ahead but his penalty drifted wide and, with Henry, Pollock and impressive number 8 Robbie Diack keeping Glasgow quiet round the fringes, the game ebbed and flowed up to half-time with Ulster two points up.
Glasgow's frustration manifested itself in a bust-up between Alastair Kellock and Andrew Trimble at the start of the second half before the Scottish side found a more positive direction in which to channel their energies.
Colin Shaw and Bernardo Stortoni got Glasgow into the red zone and Parks put them ahead with his first drop goal.
Ulster hit back immediately with a Humphreys penalty and McLaughlin's side stretched their lead to five points when Moray Low was punished for hands in the ruck after Nigel Brady had bulldozed forward.
Stortoni again got in among the Ulster defence and won the penalty for Parks to pull the margin back to two points - 11-9 - and again it was the full-back who surged into the heart of the Ulster defence to set up Parks for drop goal number two.
Beattie and Dougie Hall then combined to put Morrison away and the big centre burst through two tackles to ghost over and give Parks a comfortable conversion.
Ulster were now tiring, their second match in four days clearly taking its toll. It was all they could do to keep Glasgow at bay but they could not prevent Parks dropping two more goals.
Credit to the men in white, they produced a late push which saw Simon Danielli put Smith over for a final try, with Humphreys' excellent conversion from the right salvaging a vital bonus point for Ulster.
They survived a late scare too when, with both Parks and his replacement Ruaridh Jackson off the pitch, Glasgow number 8 Beattie lined up a penalty which he knocked to the left of the target.
It was a let-off and could prove to be a key moment in Ulster's season, with the bonus point moving them five points clear of Connacht in the table.
Man-of-the-match Parks, the first player to break through the competition's 1000-point barrier, had etched his name into the Magners League record books once again, courtesy of his four drop goals in a single game.
Speaking afterwards, Glasgow boss Sean Lineen said: "I was pretty honest at half-time. Ulster tore into us the first half and made it really difficult for us.
"But we really switched it on the second half and lifted our game. We certainly went through all the emotions but we're delighted with our character. We showed we have the will to win."
Ulster coach Brian McLaughlin said: "Obviously we are disappointed with the result, but we're pleased to have got something out of the game.
"The bonus point could prove very important for us, but we have not really kicked on since we won at the Recreation Ground against Bath in the Heineken Cup.
"So, we have to get our heads around the next two games (against Edinburgh and Connacht)."
|Glasgow Warriors Score Card|
|Ulster Rugby Score Card|