Photoshop CS3 is the best but it is expensive. Depending on how severe the scratches are Photoshop Express, a free online version of Photoshop, may be adequate.
https://www.photoshop.com/express/la...?promoid=CBTVJ
Another program you could try is Paint.NET. It is an excellent free photo editing program that is similar to Photoshop but lacks some tools that are useful for repairing images.
Paint.NET - Free Software for Digital Photo Editing