Late goals from Nicolas Gaitan and Talisca sent Benfica into the Champions League quarterfinals following a 3-1 aggregate victory over Zenit St Petersburg.
With Benfica holding a 1-0 lead from the first leg, Hulk's contentious close-range header in the 69th minute squared the tie.
Hulk's goal was shrouded in controversy as Benfica felt Yury Zhirkov fouled Nelson Semedo in the build-up. Semedo was floored by Zhirkov going shoulder-to-shoulder with him down the left, allowing the Russian to advance into the area unchallenged and pull the ball back for the Brazilian to nod home from point-blank range.
However, after Yuri Lodygin could only touch Raul Jimenez's piledriving shot on to the post, Gaitan was fastest to respond with the simplest of tap-ins.
His 86th-minute strike left Andre Villas-Boas' side needing two goals in the closing stages, something they could not manage.
Indeed, substitute Talisca capitalised on Zenit failing to clear in the sixth minute of added-on time by firing home from the middle of the penalty area.
Depleted Benfica took a slender lead to the Petrovskiy Stadium, secured only by a stoppage-time goal from Oliveira Jonas following the dismissal of Zenit defender Domenico Criscito.
Away coach Rui Vitoria was hard-hit in defence, missing injured centre-backs Luisao and Lisandro Lopez, while Jardel and full-back Andre Almeida were suspended. To compound matters at the back, goalkeeper Julio Cesar was missing with a thigh problem, so Santana Ederson deputised.
Benfica had the early pressure and the first shot on target, Jonas taking aim from 25 yards.
Just after the half-hour-mark Jonas' team-mate Nelson Semedo also tested Lodygin from outside the area.
Benfica's Konstantinos Mitroglou was then shown the only yellow card of the first half, for a foul on Junior Mauricio.
Early in the second period the visitors' Luis Pizzi was booked for his challenge on Zhirkov as Zenit came into the game. Hulk and Zhirkov had shots blocked before Junior Mauricio fired over the bar.
Villas-Boas made a double-change shortly before the hour, Igor Smolnikov and Oleg Shatov coming on, and the former immediately troubled Ederson from close range.
The Portuguese side nearly made an immediate response to going behind, Victor Lindelof's looping header from a corner hitting the post with Lodygin beaten.
However, the hosts continued to press and Artem Dzjuba was denied from close range only by Ederson being quick to close the angle down.
Gaitan's goal, made possible by a sublime, long-range strike from Jiminez, took the wind out of Zenit's sails and Talisca's cool finish decisively resolved matters. That was the end of the match, but there was still time for Viktor Kassai to book a frustrated Hulk for dissent.