Zenit grabbed a 1-0 win over Benfica to boost their chances of reaching the UEFA Champions League last 16 and eliminate the Portuguese side.
The Russian side's captain Danny struck late on to seal the Primeira Liga champions' fate in an otherwise scrappy affair at the Stadion Petrovsky on Wednesday.
Needing to better Zenit's 2-0 win at the Estadio da Luz to overturn the head-to-head record between the sides, Benfica enjoyed the majority of the contest's attacking highlights, though they were few and far between.
Hulk spurned a good chance to snatch the points for Zenit, but Danny eventually got the goal to move Zenit into second in Group C ahead of pool leaders Bayer Leverkusen hosting Monaco later in matchday five.
Zenit now face a winner-takes-all trip to Monaco in a fortnight's time, though Benfica - who saw their captain Luisao dismissed in time added on - are left to rue a fourth season out of five which has seen them drop out of Europe's premier club competition at the first hurdle.
Elimination will sting Jorge Jesus, though his side could have done more to capitalise on a ponderous performance from the hosts - especially in the opening half.
In a rare Zenit attack before the break, Hulk's thunderous free-kick caused havoc in the Benfica penalty area as Julio Cesar could only spill the ball back into danger before eventually recovering.
Andre Villas-Boas was forced into a defensive change midway through the half as Nicolas Lombaerts limped off and was replaced by Luis Neto - the Portuguese quickly going into the book for a crude challenge on Talisca.
A moment of poor concentration almost gifted Benfica the lead, Domenico Criscito allowing Eduardo Salvio to steal in at the back post from Nico Gaitan's cross, but Zenit goalkeeper Yuri Lodygin was sharp to bail out the Italian.
Benfica came roaring out for the second period and could have taken the lead twice within 15 minutes of the restart, but Luisao wastefully skewed an effort wide when one-on-one before Gaitan's persistence to get to the byline and fire across the six-yard box was not rewarded by a supporting colleague.
Javi Garcia was forced off with a hamstring injury to further worry Zenit, but they responded by putting the neatest move of the contest together, although Danny passed on the opportunity to shoot in favour of feeding Hulk, who could not finish.
The Hulk-Danny combination swapped roles soon after though to fine effect as Zenit claimed the points.
Hulk typically drifted in from the right flank and clipped a smart cross into Danny, who stole in ahead of Luisao to rifle past a helpless Julio Cesar.
A frustrated Luisao saw red in stoppage time after receiving a second booking for a hack on Criscito, summing up yet another fruitless Champions League campaign for the Lisbon giants.comments