Derby suffered a double blow as their mini-revival under George Burley came to an end and goalkeeper Andy Oakes was taken off with a shoulder injury.
Oakes could have suffered ligament damage and Burley said afterwards: "It doesn't look too good and he could be out for the rest of the season." Derby are still not totally safe from relegation and, ironically, it was goalkeeping errors that prevented them claiming the points that would have secured safety.
Both Millwall goals could be laid at the door of Oakes and then his replacement Lee Grant although Millwall showed why they had won their previous three games.
Neil Harris was always a threat while Paul Ifill was outstanding on the right of midfield.
Derby's star performer was Georgi Kinkladze who scored a first-half equaliser and created a number of chances that went begging.
Derby had to claw their way back after Oakes dropped a free-kick in the sixth minute leaving Harris a simple chance for his tenth goal of the season.
But two minutes later Kinkladze fired in a low left-foot shot from 16 yards that whistled into the bottom right-hand corner and the rest of the half belonged to the 29-year-old.
He sent Fabrizio Ravanelli in but the Italian's right-foot shot hit the legs of Tony Warner and the same combination saw Ravanelli rattle a post just before the break.
Oakes did not emerge for the second half but Grant was soon picking the ball out of the net after a comedy of errors in the Derby defence.
Paul Ritchie did not get enough power on his back header but Grant missed the ball as he tried to clear leaving Mark McCammon to roll the ball into the empty net.
Derby had the chances to bounce back again but Warner saved well from Tommy Mooney before Craig Burley hit a post from six yards.
Warner also clawed away a Kinkladze free-kick before Ravanelli sent an overhead kick narrowly wide in stoppage time.