tudmin
Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
algo curioso cuando vi la noticia en wordpress, me parecio una mas del monton hast que me fije que era una vulnerabilidad comun que cualquiera podria cometer, revisando sitios webs de clientes yo lo tenia, asi que lo mas rapido es desactivar GHOSTSCRIPT , POSTSCRIPT desde PHP, sobre todo si tienen un docker que usa como imagen Ubuntu.
ya que solo validar la imagen que suba un usuario solo por extension no basta, algo comun cuando se hace las cosas rapidas y por ahorrar un poco de procesamiento
y es interesante en proyectos sbre todo del gobierno, donde pueden probar, la logica detras de esto es que imagemagick te quiere complacer, cuando le pides un thumbnail este te lo saca de cualquier archivo soportado, PDF, PostScript, etc,y ahi es donde te cuelan los comandos para que se ejecuten
alguien con un archivo postscript, le agrega la extension JPG o PNG, te lo sube al server y si tiene Ghostscript habilitado se ejecuta.
ya que solo validar la imagen que suba un usuario solo por extension no basta, algo comun cuando se hace las cosas rapidas y por ahorrar un poco de procesamiento
PHP:
// ❌ Practica obsoleta - Solo verifica extensión
$allowed = ['png', 'jpg', 'jpeg', 'gif'];
$ext = pathinfo($_FILES['imagen']['name'], PATHINFO_EXTENSION);
if (!in_array($ext, $allowed)) {
die('Archivo no permitido');
}
// Luego procesas con ImageMagick
$img = new Imagick($_FILES['imagen']['tmp_name']);
// Listo si tienes Ghostscript habilitado ya te la metieron por atras
$img->thumbnailImage(200, 200);
y es interesante en proyectos sbre todo del gobierno, donde pueden probar, la logica detras de esto es que imagemagick te quiere complacer, cuando le pides un thumbnail este te lo saca de cualquier archivo soportado, PDF, PostScript, etc,y ahi es donde te cuelan los comandos para que se ejecuten
alguien con un archivo postscript, le agrega la extension JPG o PNG, te lo sube al server y si tiene Ghostscript habilitado se ejecuta.

