Benfica 1 Monaco 0: Talisca keeps hosts alive
Needing to avoid defeat to have any chance of making it out of Group C Jorge Jesus' side had to wait until the 82nd minute in Lisbon before the young striker lashed home a left-wing corner.
Nicolas Gaitan was particularly lively in the first half, and, having been unmarked in the penalty area, saw a late effort superbly blocked by the Monaco defence.
Leonardo Jardim, back in Portugal for the first time since leaving Sporting Lisbon, sent his side out with more attacking threat after the break by Julio Cesar pulled off a handful of fine saves to keep them at bay.
As a draw moved closer the hosts were rescued by Talisca, arriving unmarked at the back post to net his first Champions League goal.
The win sees Benfica move level with Zenit on four points, and just one behind second-placed Monaco with two matches remaining.
Jardel, replacing the suspended Lisandro Lopez, was one of four changes for the hosts from the sides' meeting two weeks ago, and they made a positive start to proceedings.
Gaitan was first to test Danijel Subasic with a low shot after a mazy run and a minute later Eduardo Salvio dragged an effort wide of the Monaco goal.
Monaco, who gave Lacina Traore his first start in the Champions League in place of the injured Dimitar Berbatov, found themselves on the back foot for large parts of the first half, but were grateful that Benfica's finishing lacked accuracy.
Eventually the visitors came into the game but they too were wasteful.
A 37th-minute Joao Moutinho corner was only cleared as far as Yannick Ferreira-Carrasco, but the Belgian volleyed well over the crossbar from the edge of the penalty area.
Gaitan had the best opening of the half as the interval beckoned, but, having found space inside the penalty area, his effort from 12 yards was superbly deflected over his own crossbar by Andrea Raggi.
Talisca, who had scored eight in his last nine Benfica matches, then went close at the other end, but his powerful shot on 51 minutes was pushed away by Subasic.
As the hour approached Monaco began to pressurise the Benfica goal, and they would have been ahead had Julio Cesar not made a fine save to deny Ferreira-Carrasco before Luisao bravely blocked Traore as the Ivorian burst clear.
With the game becoming stretched in the closing 15 minutes both sides found themselves in good positions, and from a late Benfica corner the breakthrough finally came.
Gaitan's corner was flicked on by Derley and Talisca benefited with a low finish under the body of Subasic from inside the six-yard box.