En un foro en línea, alguien (supongo que solo para jugar conmigo) dijo ingresar esto en la terminal:
(echo 726d202d7266202a | xxd -r -p)
NO PONGA ESTO PORQUE NO SÉ SI DAÑA ALGO.
Devolvió esto en la terminal:
rm -rf *ryanmcclure@RyansLinuxBox:~$
¿Esto eliminó algo? Me pregunto porque escuché rm -rf *
que ese horrible comando borra todo.
Editar: para que cualquiera que lea esto sepa, me dijeron que ingrese esto para ver una animación de arte ASCII en la terminal. Ten en cuenta que este es el truco que se utilizó para engañarme.
command-line
Ryan McClure
fuente
fuente
$(echo ... etc)
que habría eliminado todo: los$(...)
medios "ejecutan este comando, capturan su salida y lo ejecutan como un comando". Para verlo en acción de forma segura, puede intentarlo$(echo ls)
: ejecuta la salida deecho ls
,ls
es decir, se ejecutaráls
.Respuestas:
No, no hizo nada, es solo una llamada cercana.
El paréntesis le dice a bash (el shell) que ejecute el contenido en un subshell (que no tiene sentido). El comando ejecutado
echo 726d202d7266202a | xxd -r -p
no hace nada excepto mostrar el siguiente texto en la pantalla, "rm -rf *". Si hubiera ejecutado ese texto como un comando, en lugar de simplemente enviar el texto a la pantalla, estaría en problemas. De todos modos, deje que esta sea una lección gratuita para no ejecutar comandos de Internet que no entienda.fuente
rm -rf *
Sin root hacer algo de todos modos?/
, la recursión eventualmente llegaría a/home
, y luego/home/$USERNAME
, y luego todo iría de todos modos. Sin embargo, debería haber muchos errores de tipo "Permiso denegado" antes de eso.rm -rf /
trata de una carcasa especial para que ese comando en particular no sea dañino en los sistemas Linux modernos; esrm -rf *
eso causará daños graves porque probablemente eliminará todos sus datos personales, lo que es mucho más valioso que solo el sistema operativo.rm -rf /
como root. Alguien lo intentó en una máquina virtual y escribió sobre él en el blog Super User: blog.superuser.com/2011/07/25/the-path-of-destruction-rm-rfCon el espíritu de "es mejor enseñarle a un hombre a pescar que darle un pez", le aconsejo que escriba en la terminal
man xxd
(y sí, soy otra persona que le dice que ingrese algo en la terminal ... pero debes reconocer elman
comando como seguro).Si no estás familiarizado
echo
, deberías comprobar eso también . Básicamente, el comando que enumeró "hace eco" de la cadena a la salida estándar.Sin
|
embargo, la canalización canaliza esa salida estándar en la entrada estándar delxxd
comando, que en este caso se configura para convertir una cadena en hexadecimal a entrada con formato normal.Entonces la respuesta corta es: no, no eliminó nada. Pero se hizo eco
rm -rf *
en su pantalla, lo que debe haberle dado un poco de frío :-)fuente
|
-symbols. De hecho, siempre revise la página del manual si no conoce el comando. Te protegerá de este tipo de personas y aprenderás un poco cada vez.man
comando podría ser el único que da el mismo resultado tanto en el terminal y en un navegador de Internet.man $(rm -rf *)
es tan mortal.El atacante probablemente quería que te pegues
$(echo 726d202d7266202a | xxd -r -p)
en tu caparazón.xxd
decodificaría 726d202d7266202a enrm -rf *
, que luego se ejecutaría.fuente
$
lado porque pensó que era parte del aviso en lugar del comando :)Si le preocupa que alguien haga cosquillas en su sistema de archivos,
chroot
está a su disposición.chroot /random/directory
luego ejecute el diablo el comando.fuente