The Cardinals have signed veteran infielder Nick Punto to a one-year, $700,000 contract. Punto provides insurance for oft-injured third baseman David Freese and will also provide back-up at shortstop and second base. He made $4 million each of the last two seasons with the Twins.