Super sub Danny keeps Zenit on top
The Saint Petersburg side -- champions in three of the last five seasons -- top the table on goal difference after four games ahead of CSKA Moscow, who beat visiting Amkar Perm 2-0.
After a goalless first half Zenit moved up a gear to create a series of chances but Ufa goalkeeper David Yurchenko pulled off an impressive series of saves from Axel Witsel, Artem Dzyuba and Javi Garcia.
But Danny broke through after 86 minutes with a rebound from close range after Yurchenko parried Hulk's powerful 30-metre shot.
"I'm pleased with my men's performance," Zenit manager Andre Villas-Boas said.
"They were all good, those who were on the pitch from the start and those who came off the bench with right emotions, right spirit to change the game."
CSKA Moscow also kept their unbeaten run with Israeli midfielder Bebars Natcho opening with a spotkick after Amkar back Ivan Cherenchikov played handball in his area in the opening minute.
Serbian midfielder Zoran Tosic added a second four minutes before the break.
"We've scored an early goal and it determined the course of the match," CSKA head coach Leonid Slutsky said.
"The score could be much more impressive. We created plenty of chances after the break but unfortunately failed to convert them. But I'm pleased with our fourth win with a clean sheet."
In Sunday's other game a brace by Dutch midfielder Quincy Promes set Russia's most successful club Spartak Moscow on their way to a confident 2-0 win at promoted Samara to join city rivals Lokomotiv in third.