Daniil Kvyat returned to Toro Rosso in May, having been demoted from the senior Red Bull team as part of a swap with Max Verstappen.
The Russian’s future had been in doubt, but he will now continue to partner Carlos Sainz, who agreed terms for the 2017 season back in June.
“In recent races, it has been clear that Daniil is back on top form,” said Toro Rosso team principal Franz Tost.
“I always told him that his future with us was in his hands and he has stepped up to the mark and delivered the sort of performances that have ensured his 2017 seat in the STR 12.”
Kvyat added: “I’d like to thank Red Bull, Dr. [Helmut] Marko and all the team for their support and the faith they have shown in me since I returned to the team earlier this year.
“I’m very happy to stay with a team that feels like home to me. I’m really looking forward to continuing the hard work together in 2017 and I’m really aiming high.”
Kvyat sits 14th in the drivers’ championship, having claimed five fewer points than team-mate Sainz this year.