Cuidado con open-uri
February 17, 2022Es muy común que usemos open-uri
si queremos descargar
un fichero remoto, pero si lo usas para descargar un fichero que
introduce un usuario puede que tengas un agujero de seguridad.
open-uri
usa por debajo Kernel#open
el cual puede ejecutar código malicioso.
Por ejemplo para Kernel#open
esto | ls
sería una url válida al igual que | rm -rf ~
.
Puedes probarlo con un comando no dañino:
open("| ls -lah").read
Janko Marohnić lo explica con más detalle en su blog y nos propone su gema down.