Zenit St Petersburg left it late as they scraped a 1-0 UEFA Champions League victory at 10-man Porto on Tuesday.
Aleksandr Kerzhakov's 86th-minute header was enough for the visitors, who laboured to take advantage of Porto playing much of the game a man down.
The hosts found themselves reduced to 10 after six minutes of the Group G clash as Hector Herrera saw yellow twice in the space of a minute.
However, Zenit failed to make the extra man count for much of the game and, aside from a pair of Hulk chances in the second half, rarely threatened home goalkeeper Helton.
Porto more than held their own after the early setback, and twice hit the woodwork in a tie they arguably deserved to win. But the deadlock was finally broken four minutes from time as Kerzhakov sealed the three points for Luciano Spalletti's men.
The victory lifts Zenit to second in the pool, leapfrogging Porto in the process.
Paulo Fonseca made wholesale changes from the Porto team that triumphed over Segunda Liga basement club Trofense in the Taca de Portugal third round on Saturday.
Zenit, meanwhile, brought Cristian Ansaldi, Viktor Faizulin and Oleg Shatov in for Domenico Criscito, Konstantin Zyryanov and the suspended Axel Witsel after their 2-0 Russian top-flight win against CSKA Moscow last Friday.
The game got off to a nightmare start for the hosts at a far-from-full Estadio do Dragao, with Herrera sent off after receiving two yellow cards within six minutes.
His first for a reckless challenge on former Porto striker Hulk was immediately followed by a foolish second for encroachment on the resulting free-kick, meaning the Mexican marked his full Champions League debut with the fastest dismissal for a double booking in the competition’s history.
Despite being a man down, it was Porto who had the better of the chances early on, with Lucho Gonzalez rattling the angle between post and crossbar from 20 yards after 20 minutes and a stretching Lica unable to take advantage of the rebound.
Zenit struggled to settle and were reduced to speculative efforts from distance, with their best chance of the half being a curling Roman Shirokov effort from the edge of the area that drifted just beyond the far post.
With the match crying out for an injection of energy after the break, Porto substitute Silvestre Varela provided something of a spark as he cut in from the right, skipping past two defenders in the process, before skewing his strike wide of the left post.
Moments later at the other end, Hulk robbed Nicolas Otamendi of possession just outside the penalty area, but was denied by the outstretched foot of Helton after finding himself through one-on-one with the goalkeeper.
And Helton had to be alert again in the 65th minute, as Hulk powered a thunderbolt of a free-kick in his direction from 25 yards. It was too hot to handle, but the Brazilian punched clear to deny his former team-mate.
Varela, who looked lively after replacing Lica, went close for the hosts once again with just over 10 minutes left to play. He turned on the edge of the area and fired an effort against the Zenit crossbar, with goalkeeper Yuri Lodygin beaten.
However, it was Zenit who finally opened the scoring as Kerzhakov rose highest to head home from an excellent cross from Hulk on the right wing.
|16||H. Herrera||5' 6'|
|Coach: Paulo Fonseca|
for Licá 53'
for Josue 75'
for L. González 87'
|Football League Wrap: Tranmere defeated, Chesterfield move top of League Two|
|Serie A Preview: Inter v Milan|
|Bundesliga: Frankfurt 1 Augsburg 1|
|Ligue 1: Monaco 1 Valenciennes 2|
|La Liga: Elche 0 Malaga 1|
|Eredivisie: RKC Waalwijk 1 Twente 1|
|La Liga Preview: Getafe v Barcelona|
|Ligue 1 Preview: Paris Saint-Germain v Lille|
|UAE Pro League Wrap: Al Ahli extend lead, Al Shaab earn rare win|
|Lambert seeks more Villa away success|
|Sunderland will have ´no excuses´ for Norwich failure, says Poyet|
|Hughton hails Poyet impact|
|Pardew anticipating difficult Palace clash|
|UEFA provisionally ban three clubs from European competition|
|La Liga Preview: Valencia v Real Madrid|
|Valdes to keep new club quiet|
|Allardyce urges West Ham to expose United frailties|
|Bruce bemoans Brady injury|
|Laudrup rules out Tottenham switch|
|Premier League Preview: Swansea City v Everton|
|Benitez is ´a lucky charm´, says De Laurentiis|
|Stoke wait on Shawcross fitness|
|Koscielny to miss out on Chelsea clash|
|Liverpool owner hails Suarez deal as sign of club´s progress|
|Moyes reveals Nani setback|
|Schweinsteiger to return in January|
|Thohir not worried ahead of derby|
|Mourinho eyes defensive improvements|
|Pellegrini optimistic on Zabaleta return|
|Gourcuff reveals contract refusal|
|Suarez pens new long-term Liverpool deal|
|Klopp predicts tough Hertha battle|
|Dempsey has medical ahead of Fulham return|
|Bruce sympathetic to Mackay situation|
|A-League: Brisbane Roar 0 Newcastle Jets 2|
|Celtic´s Lustig set to miss four months|
|Messi blasts Barca official|
|Redknapp slams Villas-Boas´ signings|
|Atalanta out to continue home record|
|Phillips poised for January Palace exit|
|Dembele: Spurs ´positive´ about Sherwood appointment|
|Benitez predicts busy January at Napoli|
|Kerslake expects Mackay to be in charge for Liverpool game|
|Lowe given Glory role|
|Baines set for Everton return|
|Pedro keen on emulating Iniesta|
|Pochettino not interested in January purchases|
|Poyet calls for mid-season break|
|Iajour up for Bayern test|
|Martinez seeking ´short-term solutions´ in transfer window|
|Kompany urges City to remain focused|
|Rodgers glad he avoided Tottenham|
|Del Piero in line to take on Juventus in Australia|
|Copa del Rey Wrap: Valencia scrape through, Bilbao thrash Celta|
|Primeira Liga: Maritimo 2 Braga 2|
|Galliani to stay at Milan|
|Klopp plays down Club World Cup|
|Schalke coach Keller not fearing the sack|
|Wilshere loses appeal against two-match ban|
|Zaha on Pardew´s radar|
|Milan will be my final club, says Abbiati|
|Anigo to remain at Marseille helm for time being|
|Premier League Preview: West Brom v Hull City|
|No Bankia involvement in Bale deal, says Perez|
|Galliani wants stronger Milan youth system|
|Rafinha extends Bayern contract|
|Premier League Preview: Stoke City v Aston Villa|
|Poyet: No excuse not to perform|
|Vanishing spray to be used at World Cup|
|Gabbidon praises Palace strike pair|
|Premier League Preview: Manchester United v West Ham|
|Hughton calls for Norwich City to show character|
|Premier League Preview: Fulham v Manchester City|
|Samaras attracting Lazio interest|
|Premier League Preview: Liverpool v Cardiff City|
|Rodgers backs Mackay at Cardiff|
|Foster back fit and raring for West Brom recall|
|De Boer agent denies Tottenham contact|
|Premier League Preview: Crystal Palace v Newcastle United|
|Hungary appoint Pinter as new coach|
|Iniesta signs new Barca contract|
|Rodgers coy over Suarez talks|
|Jagielka hopes for fresh faces at Everton to help top-four push|
|A-League: Central Coast 1 Wellington 0|
|Spain end top of FIFA rankings for sixth year running|
|Allardyce disappointed to draw Manchester City|
|Pascoe hails ´unbelievable´ Suarez|
|Vorm knee surgery brought forward|
|Blanc hails Cavani brace|
|Michu wants Aspas to join Swansea City|
|Hoeness plays down Bayern treble suggestions|
|Dzeko confident he can fill Aguero void|
|Moyes: No loan offers for Zaha|
|Kiessling calls for Leverkusen response|
|Matuidi: Cavani on par with Ibrahimovic|
|Yeboah set to join Borussia Monchengladbach|
|Rooney a ´chance´ to face West Ham|
|FIFA Club World Cup Preview: Bayern Munich v Raja Casablanca|
|Benzarti praises ´extremely talented´ Raja Casablanca|
|Ranieri unsure over Falcao return|
|Coupe de La Ligue Wrap: Cavani leads PSG to dramatic win|
|Copa del Rey Wrap: Real Madrid through as Sevilla crash out|