Dortmund:Borussia Dortmund, 10th in the Bundesliga, hosted high-flyers Werder Bremen in the last 16 of the German Cup on Tuesday (January 29).
The hosts took the lead in the 19th minute when Giovanni Federico collected a pass from Mladen Petric and stroked the ball home.
Bremen pressed forward in search of an equaliser and came close midway through the second half when Hugo Almeida's volley hit the woodwork with home goalkeeper Marc Ziegler well beaten.
Dortmund must have thought victory was theirs when Diego Klimowicz doubled their lead ten minutes from time, after an excellent through-ball from Sebastian Kehl, which beat the offside trap.
But Kehl sent the game into a dramatic finish when he brought down Markus Rosenberg to gift Bremen a penalty moments later.
Diego, who came off the Bremen bench in the second half, beat Ziegler with the spot-kick to the goalkeeper's right side.
Just two minutes later, Rosenberg earned another penalty when he was pulled down by Martin Amedick and bundled over by Ziegler.
Diego stepped up again and drove the ball to Ziegler's left, but this time the Dortmund goalkeeper managed to beat away the penalty to ensure his side's place in the last eight.