Second-half goals from Simon Rolfes and Dmitri Bulykin put the visitors 2-1 ahead after Michal Papadopulos had given the strugglers an early lead.

Christian Bassila levelled for the home team 13 minutes from time, but Rolfes had the last word with his second of the game - from the penalty spot - in the 86th minute.

Leaders Bayern Munich triumphed 2-1 at Hansa Rostock on Friday night to move three points clear of second-placed Werder Bremen, who face Bochum on Sunday.

While Leverkusen made up ground on the top two, Hamburg slipped a place to fourth after a 1-1 draw at home to Hannover.

Hamburg had to rely on a Vadis Odjija Ofoe goal 20 minutes from time to salvage a point after a Szabolcs Huszti penalty five minutes before the interval had put the away team in the ascendancy.

Hannover finished the match with 10 men following the late sending-off of second-half substitute Sergio Pinto.

Karlsruhe climbed to fifth after emerging 2-0 victors against Nurnberg thanks to two goals in seven minutes from Christian Eichner and Joshua Kennedy.

Nurnberg's cause was not helped by the second-half dismissal of Andreas Wolf.

Basement boys Duisburg were denied only their fifth league win of the season when visitors Borussia Dortmund secured a 3-3 draw in the last minute.

Iulian Filipescu put the hosts ahead after 17 minutes and Tobias Willi doubled their advantage on the half-hour mark.

Sebastian Kehl halved the deficit five minutes into the second half with a bizarre goal off his back, but Mihai Tararache soon restored Duisburg's two-goal cushion from the penalty spot.

Diego Klimovicz was introduced in the 65th minute and had the desired impact - reducing the arrears 22 minutes from time and then levelling at the death.

Elsewhere, a Martin Fenin hat-trick secured three points for Eintracht Frankfurt in a 3-0 win at Hertha Berlin and Grafite's 27th-minute strike was enough to earn Wolfsburg a 1-0 victory at Arminia Bielefeld.