Kostas Mitroglou gave Benfica a one-goal advantage in the first leg of the Champions League last-16 tie with Borussia Dortmund.
Mitroglou scrambled in the decisive goal for the Portuguese champions from Luisao’s header in the second half.
Dortmund’s Pierre-Emerick Aubameyang hit a penalty straight at keeper Ederson after Ljubomir Fejsa handled.
The German side were the top scorers in the group stage, but failed to find a way through a stubborn home defence.
Dortmund will host the second leg on 8 March, with a place in the quarter-finals at stake.