Adam Hlousek, Josip Drmic and Per Nilsson gave Gertjan Verbeek's men a comfortable cushion at the interval.
However, it was not enough to earn the Bavarians three points as Leonardo Bittencourt and a Mame Diouf brace snatched a draw for the Reds with the Senegalese striker scoring the equaliser deep in stoppage-time.
Without a win all season, and up against a side who had made their Niedersachsenstadion home a fortress until recently, Nurnberg's hopes did not look too good coming into the game.
Luck has not been on their side either with no other side in the Bundesliga hitting the post as often as Nurnberg this season, yet perhaps fortune was turning their way when Diouf missed a chance he would normally be expected to score for Hannover.
Artur Sobiech sent a shot wide as it looked increasingly like it would be Nurnberg's day.
They took the lead less than 60 seconds later when Makoto Hasebe passed to Hlousek and his shot from 25 yards took a deflection off Hiroki Sakai to leave Ron Robert Zieler no chance.
The visitors made it two in the 38th minute when Hiroshi Kiyotake's pass set up Drmic, who took the ball past Zieler and slotted it into the unguarded goal.
The first murmurs of discontent were already being heard from the home fans when Nilsson headed in a third for Nurnberg in the 41st minute from Marvin Plattenhardt's corner.
Coach Mirko Slomka must have found the right words during the interval as Hannover were transformed in the second half.
Substitute Bittencourt tucked the ball in from 10 yards out after Szabolcs Huszti set him up.
The game opened up with Hannover forced to commit men forwards, but it was not until three minutes from time that they pulled back a second with Diouf scoring from what looked like an offside position.
The hosts threw everything forwards going into stoppage time and they got their reward with the last touch of the game, Diouf scoring at the second attempt after Raphael Schafer kept out his first.