Grigorenko had been an unrestricted free agent in the NHL after his contract with Colorado expired.
Grigorenko came to the NHL in 2012 as a first-round draft pick but struggled to live up to expectations during three seasons with the Buffalo Sabres and two with the Avalanche.
He scored 10 goals and 13 assists in 75 games for Colorado last season. In total, he has 22 goals and 42 assists from 217 NHL games.
CSKA also said it had signed defenceman Nikita Nesterov, who last played for the Montreal Canadiens. He has also agreed to a three-year contract in Russia.
Nesterov, a fifth-round pick in the 2011 draft for the Tampa Bay Lightning, played 132 games over the last three seasons with Tampa Bay and Montreal, with nine goals and 24 assists.
CSKA did not give any information about salary for Grigorenko and Nesterov’s contracts.