Cleveland activated Hafner from the 15-day disabled list on Wednesday, and manager Manny Acta put him in the No. 6 slot in the starting lineup against the Minnesota Twins.
Hafner had been sidelined since Aug. 6 with lower black inflammation, the latest in a series of ailments that have plagued the 35-year-old the past five years.
Hafner has been on the disabled list nine times in his big league career. He missed nearly five weeks after right knee surgery in May and hasn't had a full season since 2007.
Hafner has a .239 average with 11 homers and 32 RBIs in 60 games.