Dortmund welcomed back Germany centre-back Mats Hummels after two months out with an ankle injury.

The 25-year-old rescued Dortmund with a challenge on replacement Karim Bellarabi in the dying stages as Dortmund stayed third, 14 points behind leaders Bayern Munich.

The night belonged to Aubameyang who, along with Poland striker Robert Lewandowski, finished the match with 11 league goals for the season -- the same tally as the entire Braunschweig team.

"That was a very difficult game for us, so we're very happy about the win," said Aubameyang.

The Gabon right-winger headed home a Lewandowski cross in the first-half, then fired home the winner from Marco Reus' pass 25 minutes from the final whistle.

His pin-point winner saved Dortmund's blushes after hosts Braunschweig had equalised when defender Benjamin Kessel tapped home on 54 minutes, despite a posse of Borussia defenders.

"We're very happy, even if it was a dirty win," admitted Dortmund goalkeeper Roman Weidenfeller.

"We know that it wasn't a good game, but we can build on the victory."

In a frantic final 10 minutes, Borussia's Lewandowski, Reus, Aubameyang and midfielder Nuri Sahin all had chances to add a third.

Braunschweig's attacking midfielder Bellarabi also had a late shot saved, while centre-back Ermin Bicakcic's header rebounded off the inside of the post.

Dortmund's attacking midfielder Henrikh Mkhitaryan also hit the post two minutes from time with Braunschweig goalkeeper Daniel Davari well beaten.

This was Dortmund's first win since November 30 after suffering two defeats and two draws.