The Scot, who is on the hunt for the ranking points he needs to gain a top-32 seeding for the Australian Open in the new year, lost the first set but came through with a 6-7 (5) 6-3 6-4 win.
Murray, whose only previous appearance at the tournament came as a teenager in 2005, dug deep over two hours and 38 minutes, hitting his stride in the second set before finishing with a flourish to take five games in a row at the end of the match.
Safiullin wasted no time making his presence felt, starting the match with an opening flurry of three successive aces.
Murray gave up the first break in his second service game, but snatched one back at the first attempt as the pair remained in lockstep for the majority of the first set.
It took a tie-break to part them, with the Russian edging it 7-5 after a tight battle.
Things were just as hard fought at the start of the second, with Murray working ferociously hard to hold his serve.
He needed six game points to hang on to his first game, then successfully staved off five break points in his second.
Safiullin had looked secure by comparison, but fell victim to a Murray raid in the sixth game of the set.
With the advantage secured, the veteran did not let it go to waste and levelled the scores in pleasing fashion with his 10th ace.
The pendulum swung back in the decider, with Safiullin racing into a 4-1 lead, protecting his service three times and taking one off Murray to bring the finish line into sight.
But Murray's fighting spirit shone through as he went on a three-game streak of his own to square the scores, including a crucial break of his own in the seventh.
He claimed the next two as well, banking another break before closing out with a dominant service game.
Elsewhere in the Erste Bank Open in Vienna, Dan Evans was beaten 6-4 7-6 (3) by Germany's Oscar Otte in the round of 32.