La seguridad de los Teclados virtuales
La seguridad de los Teclados virtuales, cada vez se hace más evidente que la mayoría de las páginas web, no tienen en cuenta la importancia de la protección de los datos, páginas con contenido confidenciales.
Los bancos por ejemplo, o webs de e-commerce, son objetivos de los atacantes o de la causa "hacktivista" del momento, solo veamos los siguientes escenarios para hacernos una idea de lo que piensan los roles involucrados.
Tres escenarios posibles, tenemos que considerar:
- Del lado del usuario, nos conectamos a un banco o a una web de compras, ¿acaso podemos tener por lo menos una "pequeña tranquilidad" viendo el "candadito"?
- Del lado del proveedor de ese servicio, disponemos del último antivirus, parche y cumplimos con la ISO 1.000.001 ¿damos por asentado que los usuarios estarán seguros?
- Mientas Del lado del atacante, están contentos porque instalaron el último keylogger, indetectable, y encima pueden saber si el usuario sale con la secretaria que trabaja en el proveedor
Posiblemente tú estés en alguno de esos roles y has pensado algo muy parecido a los escenarios planteados.
De cada 10 sitios webs que visito, y en el cual estén trabajando tanto con "HTTPS" como con teclados virtuales, 7 de ellos tienen fallas que un atacante no perdonaría.
Hablemos de los teclados virtuales en la seguridad de los Teclados virtuales
Un teclado virtual es una aplicación por lo general escrita en JavaScript que nos muestra una pagina web, y en el cual, mediante clics del mouse, podremos mandar nuestro o "clave", sin utilizar el teclado y así poder tener acceso al servicio ofrecido.
Encontramos también, teclados que no obedecen ningún orden de aparición de teclas.
Esto significa que no están ordenadas como los teclados originales, y también tenemos teclados virtuales de números solos, o hasta gráficos (este es muy bueno, recomendable usarlo!!!)
El peligro de acceder a teclados virtuales públicos
Es IMPORTANTE, no acceder a sitios que contengan teclados virtuales (por tanto con información sensible) desde lugares públicos, (llámese ciber, aeropuerto, hoteles, etc), dado que es más sencillo un ataque desde ahí.
Pero no siempre la seguridad de estos teclados es la mejor, algunos llegan al punto de guardar en "campos ocultos" los datos digitados sin cifrar, para luego ser enviados en métodos GET o POST, otros guardan una cookie en texto plano con esta información, sin contar con los que guardan toda la información digitada en la cache del navegador.
Métodos empleados por los atacantes
Existen métodos como la suplantación del teclado en la caché del navegador.
Estos permiten a un atacante, sin modificar la página de la entidad bancaria o el sitio que contenga el teclado virtual, reemplazarlo con otro.
Además de enviar la información al sitio donde debería ir, envían una copia de la misma a ellos y para esto es necesario que el usuario visite un sitio malicioso para después acceder a la página legítima de la entidad.
Amenazas que pueden utilizar los atacantes
Tenga presente que los atacantes casi siempre utilizan:
- Keyloggers indetectables
- Troyanos que graban videos
- Aplicaciones que utilizamos para manejo de proxys
Lo anterior son de utilidad en el traslado de los paquetes hacia el destino no se habla de un esnifeo, sino que se habla de la traslación de esos paquetes, que NO ESTAN CIFRADOS en el momento que los utilizamos en NUESTRO ORDENADOR.
La clave ingresada, sea pulsada o por teclado virtual, no está cifrada en su mayoría (al menos de cada 10 bancos que testee, 2 estaban cifrados), y pude capturar lo ingresado por teclado virtual, en TEXTO PLANO!!!!, en otros bancos, capture el hash que realizo el teclado virtual, pero no hay como un buen traductor (HASHONLINE).
Conclusión y recomendaciones sobre la seguridad de los teclados virtuales
De lado del cliente
- Utilizar software para la administración de contraseñas como LastPass.com o similares
- Realizar nuestras transacciones desde equipos seguros y ojalá siempre desde el mismo.
- Utilizar diferentes claves SEGURAS para cada sitio (ayuda mucho usar software de administración de contraseñas)
Del lado del sitio web
- CIFRA TODO, cada etapa del camino que recorre la información debe ser cifrada
- Si deseas almacenar la información temporalmente en alguna parte, asegúrate que esta esté cifrada y que sea borrada cuando no se necesite
- Utiliza un teclado que cambie la posición de las teclas cada vez que el usuario entre, ojalá que maneje símbolos que acordaran utilizar mutuamente con anterioridad.
- No te quedes con el "OK, tengo todo controlado", piensa mejor ¿¿tengo todo controlado??
Como conclusión, acerca de la seguridad de los teclados virtuales, recomiendo no confiar del candadito y el teclado virtual pensando que son medidas altamente seguras y que nuestra información estará segura con ellas, como vimos anteriormente existen muchas formas de atacar estas medidas