Гема в irc доказывал, что проверка содержимого не состоятельна, т.к. благодаря специфике форматов изображений можно вставить нужный код в различные коментарии, etc в тело картинки.
Предложенный мною метод переноса "изображений" из временной папки хорош тем, что благодаря особенности GD - эта библиотека не работает с мета-данными файлов, а использует только ту информацию, которая используется при построении растра.
И сохраняет GD, соответственно, только графическую информацию, т.е. вставки шеллкода в различных полях идут лесом.
Вот этим кодом преобразовал файл с встроенным куда только можно кодом <?php phpinfo(); ?> (image.jpg)
PHP код:
$im = imagecreatefromjpeg('image.jpg');
imagejpeg($im, 'newimage.jpg');
После сохранения были вырезаны все мета данные, и размер избражения изменился:
image.jpg: 3.75 кб
newimage.jpg: 2.33 кб
На выходе имеем "чистую" картинку, что и требовалось.