Ross batted .240 with 14 home runs and 52 RBI over 121 games with San Francisco last season.
The 31-year-old has played in 757 game over eight major league seasons with the Tigers, Dodgers, Reds, Marlins and Giants. He is a career .261 hitter with 100 homers and 371 RBI.
To make room for Ross on the 40-man roster, the Red Sox designated pitcher Scott Atchison for assignment.
The 35-year-old right-hander posted a 3.26 earned run average in 17 relief appearances over six stints with Boston in 2011.