Mariano Rivera tore a ligament in his right knee while shagging balls during batting practice Thursday night, casting a pall over the New York Yankees even before their 4-3 loss to the Kansas City Royals.