The 33-year-old's two-and-a-half year deal at Elland Road was due to expire in the summer.
Warnock, who moves for an undisclosed fee, has been one of Leeds' most consistent performers during a troubled season for the club, but talks over an extended deal for one of their higher wage-earners never materialised.
There had been reports of a fall-out between Leeds president Massimo Cellino and Warnock, who has denied he sought help from the Professional Footballers Association amid rumours he had been kept out of the side earlier in the season on the Italian's say-so.
The left-back later returned to the side and was handed the captain's armband by head coach Neil Redfearn.
He has missed Leeds' last two games due to an ankle injury.
Warnock, who has won two England caps, began his career at Liverpool and after loan spells at Bradford and Coventry made his debut for the Reds in a Champions League game at AK Graz in August 2004.
Blackburn paid £1.5m to take him to Ewood Park in January 2007 and he moved on to Aston Villa in August 2009 for an undisclosed fee before joining Leeds on a free transfer in 2013.
The left-back made a total of 67 appearances for the Whites, scoring three goals.
The Rams have the option to extend the deal for a further year.