Ha sido posible por un largo
tiempo para que los desarrolladores usar CSS para añadir contenido malicioso en
el portapapeles sin conocimiento del usuario y por lo tanto engañarlos para que
ejecute comandos de terminales no deseados. Este tipo de ataque se conoce como
clipboard hijacking. Un investigador de seguridad de página web,
publicó una nueva versión de este ataque, que sólo utiliza JavaScript como
medio de ataque, no CSS. JavaScript hace que este ataque más difícil de
detectar y más difícil de detener.
JavaScript
es mucho más potente y versátil en comparación con CSS, y se nota
inmediatamente explica profesor de curso de seguridad informática. Mientras que
en el CSS exploit el usuario tenía que copiar y pegar todo el texto malicioso,
con JavaScript cosas son mucho más complicadas.
Los
usuarios ni siquiera tienen que seleccionar todo el texto malicioso. Un
carácter es suficiente. En teoría, un atacante podría añadir su código
malicioso Pastejacking JavaScript para toda la página, y cuando tú pegas
cualquier cosa dentro de la consola, ellos podrían ejecutar comandos a escondidas
a tus espaldas explica profesor de curso de seguridad informática. El
atacante puede ejecutar su código malicioso, limpiar la consola, y luego añadir
el código del usuario copiado, haciéndoles creer que no pasó nada.
Según
investigador de seguridad de página web, el ataque puede ser mortal si se
combina con las páginas de soporte técnico o correos electrónicos de phishing.
Los usuarios pueden pensar que están copiando el texto inocente en su consola,
pero de hecho, se están ejecutando código malicioso. Debido a que los comandos
de terminal se ejecutan automáticamente, el usuario ni siquiera tiene presionar
la tecla Enter para ejecutar el código malicioso, CTRL + V es suficiente.
Por
ejemplo, alguien en busca de consejos sobre los comandos de cmd.exe podría
copiar y pegar el código que encontró en línea en los artículos de tutoriales,
pero la persona maliciosa detrás de ese sitio en particular se podría anexar
decenas de líneas de código malicioso que se descargan malwares desde una
fuente y se instalan en línea en su ordenador. Todo esto puede suceder en
silencio, sin que el usuario se percate de nada.
Acuerdo
con el ternario del curso de seguridad informática ataques similares han sido
posibles a través de HTML / CSS. Lo que es diferente al respecto es que el
texto puede ser copiado después de un evento, se puede copiar en un contador de
tiempo corto después de un evento, y es más fácil de copiar en caracteres
hexadecimales en el portapapeles, cual puede ser utilizado para explotar VIM,
como se mostrara a continuación.
DEMOSTRACIÓN
He aquí
una demostración de un sitio web que atrae a un usuario para copiar un comando
de aspecto inocente. El sitio es de demostración credo por investigador de
seguridad de página web.
Si un
usuario intenta copiar el texto con atajos de teclado, es decir, Ctrl + C o
command+C, un temporizador de 800 ms se establece que sustituye directamente el
valor del portapapeles del usuario con código malicioso.
echo “not evil” Se reemplazará con echo “evil”\n
Tenga
en cuenta el carácter de nueva línea se añade al final de la línea. Cuando un
usuario va a pegar el comando de eco en su terminal, “evil” se aparecera
automáticamente en la pantalla sin dar al usuario la oportunidad de
revisar el comando antes de ejecutar. Payloads más sofisticadas que se esconden
también se pueden utilizar.
touch ~/.evilclearecho “not evil”
Este
comando creará un archivo “evil” en su directorio personal y limpiara la
terminal de salida. La víctima parece tener el comando que pretendía copiar en
el terminal.
IMPACTO
Este
método se puede combinar con un ataque de phishing para atraer a los usuarios a
ejecutar comandos aparentemente inocentes explica investigador de seguridad de página web.
El código malicioso se anulará el código inocente, y el atacante puede obtener
la ejecución remota de código en la máquina del usuario si el usuario pega el
contenido en el terminal.
¿CÓMO
PROTEGERTE A TI MISMO?
Esto no
es tan sencillo. Una solución recomendada por curso de seguridad informática
es, verificar el contenido del portapapeles antes de pegarlo en una terminal,
pero tenga cuidado de donde se verifican estos comandos. Por ejemplo si se
pegan en vim, macros vim se puede utilizar de aprovecharte. Un ejemplo de esto
se puede ver en esta demostración más abajo.
copyTextToClipboard(‘echo “evil”\n \x1b:!cat /etc/passwd\n’);
Una
solución en todo esto puede observarse a continuación
Dentro
de vim para pegar portapapeles sin interpretar como un comando vim
Si está
ejecutando iTerm, estaría advertido si el comando termina con un salto de línea
como se ve aquí:
Por supuesto, no hace falta
decir, tomar nota de la fuente que se está pegando a partir, y tener precaución
adicional si se va a pegar de fuentes cuestionables.
0 comments:
Post a Comment