Stuart Green slotted home a late penalty as Hull City survived a second-half onslaught to snatch only their second home win of the season.
Green netted after Marc Edworthy had fouled Chris Brown but Derby equalised after Stuart Elliott's early opener with an Inigo Idiakez penalty.
The Rams were left fuming after having two goals ruled out in a one-sided second period and to compound their misery Andrew Davies was sent off in the dying minutes for a second bookable offence.
It was end to end stuff straight from the kick-off and early on Morten Bisgaard's weak shot was saved by Boaz Myhill.
Seconds later at the other end Ben Burgess' towering header was headed off the line by Peter Whittingham.
City's positive play paid off in the 11th minute. Ryan France showed great determination down the right channel and released Elliott inside the area. The Northern Ireland forward then showed why his manager restored him to the starting line-up by smashing the ball past Kevin Poole.
Phil Brown's men continued to come under pressure but they held firm and could have levelled when a long-range volley by Stern John flashed inches wide of Myhill's right-hand post.
The visitors then twice came within inches of equalising before the end of the half. Firstly John controlled the ball superbly inside the area from a free-kick, turned and smashed a volley against the crossbar.
Then, in the 41st minute, Bisgaard's shot from the right-hand side of the box whistled past the post.
Derby looked the more prominent side at the start of the second half and after John had seen a header ruled out for pushing they were awarded a penalty in the 55th minute when Seth Johnson was brought down by Leon Cort.
Idiakez stepped up and sent Boaz Myhill the wrong way from the penalty spot.
City were pegged back for long periods with Seth Johnson superb in the visiting midfield but the home side soaked up the pressure and made the breakthrough with six minutes left.
Edworthy rashly brought down Brown and Green restored Hull's lead with a coolly taken penalty.
Derby's day went from bad to worse when Davies headed home late on only to be penalised for climbing and was then sent off by the referee for his protest.