"Midfielder Denisov had refused to play after issuing an ultimatum to renegotiate his contract. He was demanding more money," Zenit said on their website.
"The club feels that Denisov's demands are groundless as he already is one of the best-paid players in the Russian league."
Kerzhakov, who was supporting his team mate, had been demoted for "improper behaviour", a club spokesman said.
Zenit did not say when the two Russia internationals would be recalled to the first team.
Denisov was left out of the squad for Saturday's league match at Krylya Sovietov Samara while Kerzhakov was substituted in the first half, with his team down 0-2.
Zenit scored twice after the break to salvage a 2-2 draw.
Several senior Zenit players have apparently been unhappy after the big-spending club, backed by Russian energy giant Gazprom, splashed more than £61 million on Brazil striker Hulk and Belgium midfielder Axel Witsel just before the September 3 transfer deadline.
"It's true we have an unstable situation in the team at the moment because we have certain players who create this problem," Zenit's Italian coach Luciano Spalletti told reporters on Saturday without naming any individuals.
"I can say that these players are wrong and we'll deal with them because if you don't, then the whole team would suffer."
Following their record signings, Zenit failed to win a game, suffering a 2-0 home defeat by Chechen side Terek Grozny before being crushed by unfancied Spanish club Malaga 3-0 in their Champions League opener last week.
Zenit host AC Milan in the Champions League Group C match next week.
Denisov, who was also made Russia captain this month by national team boss Fabio Capello, is no stranger to controversy.
The 28-year-old, who rarely speaks to the media, refused an invitation to join the national team for Euro 2008 by then Russia coach Guus Hiddink after being upset at being omitted from the initial squad