The Mexican tested positive for Marijuana after losing his WBC middleweight crown to Argentina's Sergio Martinez on September 15.
Reports of the positive test emerged within a week of the bout, and the 26-year-old Chavez - who has a long history of problems outside the ring - admitted that he had used the drug.
"The WBC has decided to impose a fine of $20,000 to be donated to a cancer clinic for children and also an indefinite suspension to enter a rehabilitation centre", the WBC announced in a statement, adding that his ban would only be reconsidered once he has completed his rehab.
The Nevada Boxing Commission also have the power to penalise Chavez since the Martinez fight was held in Las Vegas, and their decision is expected later this month.
Last January Chavez was arrested for drink-driving in Los Angeles, and a few weeks later was accused of refusing to take a drugs test after beating Marcio Rubio.
He also served a seven-month suspension after testing positive for a diuretic three years ago.
Chavez, son of Mexico's greatest ever boxer who bears the same name, was unbeaten in 48 fights before his defeat by Martinez.
- Related links