The visitors had the first chance of the game when the ball bounced towards Gabi from just outside of the area. The midfielder caught it on the volley, but his effort flew over the crossbar.
Despite the Spanish side's early chance, Zenit were able to put some swift moves together, but they struggled to make an impact in the final third, with Atletico doing enough to break up their play.
The visitors were strong once again in defence by holding firm when Oleg Shatov tried to thread the ball through to Aleksandr Kerzhakov, who was waiting in the box, but Atletico pushed enough shirts back to prevent Kerzhakov from latching on and having a shot on goal.
Hulk came achingly close to putting the Russian side in front when he received the ball while sitting in the pocket behind the strikers, but his thumping shot slammed into the goalkeeper. Axel Witsel attempted the follow-up but his attempt failed to find the back of the net.
After largely defending in the first 20 minutes, Atletico's much-changed side managed to form an attack at the other end when the ball was played out wide to Juanfran, who crossed the ball into the box, but it fell into the hands of keeper Yuri Lodygin.
The home side continued to knock on the door as the half progressed, but Atletico, who have already qualified for the knockout stage, seemed content in packing bodies into their own half and playing on the counter-attack.
Atletico also discovered that they will be without right-back Juanfran for their sixth and final group game after receiving a yellow card for bringing down Shatov.