Сохранить JPEG, а тем более PNG в GIF, это урезать изображение до безобразия, да еще все и вслепую.
Если к изображению и "приклеят" непотребное, то от exif можно и избавиться, это не проблема. И сам по себе код вклеенный не выполнится, нужен "помощник".
Если загрузка по ссылке, то так (используя GD):
if($im = imagecreatefromstring(file_get_contents('url'))) {
//обработка изображения $im, можно уменьшить его на один пиксель по ширине/высоте,
//все что вклеили будет удалено
//можно узнать палитру изображения, если индексированная, то сохранять в GIF
//иначе сохранять как JPEG
//все это функциями GD
//стоит учесть, что если GIF анимация, то она будет утеряна, сохранится только первый ее кадр
} else {
//мусор
}