* Este post corresponde a la serie de apuntes del Learning Path «Become an Ethical Hacker» de LinkedIn Learning.
* Todos los comandos mencionados son para ser ejecutados desde Linux a no ser que se diga lo contrario.
Introducción a la ingeniería social
Un hacker experimentado normalmente intentará usar la ingeniería social antes de pasar a otros métodos más complicados y costosos para obtener un password. Hay estudios que demuestran que un 50% de la gente daría su password gratis o por una pequeña cantidad de dinero. Con Ingeniería Social, tiempo y empeño se conseguirán accesos de sistema, sí o sí.
Best practices para reconocer un ataque cara a cara son:
- Dar a los visitantes un badge de visitante, que debe estar siempre visible
- Ser educado y calmado si se necesita hacer una llamada de verificación
- Acompañar siempre a los invitados
Mecánicas
El catfishing es una nueva forma de Ingeniería Social donde el cybercriminal usa páginas de búsqueda de parejas. Likejacking es el clickjacking para Facebook.
Podemos protejer nuestro navegador en primer lugar eligiendo el navegador adecuado, manteniéndolo actualizado, revisando plugins (afectan la forma en la que una web responde, e.g. flash) y extensiones (afecta al navegador, no a la web en sí, y son peligrosos pues pueden incluso capturar lo que tecleamos u obtener el historial de navegación) e instalando protección anti-exploit como Malwarebytes o Microsoft EMET. Y sobre todo, no entrando en webs maliciosas especialmente si el propio browser nos está avisando de que la web tiene mala reputación.
Algunas estrategias para que los usuarios descarguen malware son:
- Enlace a un video divertido.
- Llamar a un número para recuperar un mensaje de texto o voz.
- Enviar un enlace a un «phony patch», una web que parece legítima pero que en realidad es un clon de la original con malware embebido.
- Ofrecer cosas gratis
- Coger una app legítima, incluírle malware y subirla para su descarga en una web distinta
Abuso de la confianza
Muchos problemas de seguridad vienen de dentro de la compañía. Por ejemplo, empleados descontentos pueden llegar a revelar información o robar o dañar recursos de la empresa. Usando el principio de «Least Privilege» podemos reducir el alcance de un ataque interno.
Las redes sociales funcionan muy bien para conseguir información sobre una víctima, así como también para crear un perfil falso (e.g. Facebook Cloning) con el que conseguir un objetivo, pues por defecto te fiarás de ese perfil falso y aceptarás su solicitud de amistad y posteriormente creerás lo que de ese perfil salga.
Tests de penetración con Ingeniería Social
El phishing y el pharming, básicamente envían emails masivos que parecen urgentes y requiren de una respuesta rápida. Uno de cada 10 responde.
Otra técnica de ingeniería social es el clonado de websites, que parecen legítimas (pues son un clon de la original) pero que pueden contener contenido malicioso en los anuncios u otros enlaces, popups que al clickar en ellos instalan malware (incluso en webs legítimas visitadas préviamente), e incluso descarga de software sin necesidad de clickar aprovechando vulnerabilidades del navegador o del SO.
Los adjuntos en los emails pueden contener malware, así como ciertos programas que podemos descargar de internet, para los cuales se debería leer el EULA (End User Licence Agreement).
El vishing es un intento de que alguien revele información personal tras recibir una llamada de voz (por ejemplo un mensaje automátizado –robocall– haciéndose pasar por el banco pidiéndo que devuelva la llamada para tratar un asunto importante). El hacker puede incluso falsear el número de teléfono de origen para realmente hacerse pasar por el banco.
La Social-Engineering Toolkit (SET) es un seguido de herramientas opensource para ser usadas en tests de penetración usando ingeniería social, incluído en Kali. Para completar el ataque se querrá usar metasploit para crear el exploit. Permite, entre otros:
- Realizar ataques de phishing o spear-phishing (phishing dirigido a empresas, es decir, a una audiencia mucho más específica)
- Generar ficheros maliciosos (pdfs, words, etc.)
- Crear websites maliciosas (clonadas)
Defensa contra la Ingeniería Social
Aunque es difícil pues no se puede únicamente defender con hardware y software, sí que hay algunas medidas a tomar:
- Saber quién está en la línea (caller ID, tono de llamada para llamadas internas, etc.)
- Saber quién está en el edificio (identificación via badge, escort, etc.)
- Conocer a los empleados (ID via badge y protección del mismo)
- Foco en la seguridad al navegar (privacy settings, cifrado, revisar la información pública)
- Eliminado seguro (trituradoras, empresas de destrucción de discos duros, etc.)
- Contraseñas, políticas y educación
Respecto al spam, es importante saber que un email tiene dos «senders», envelope y letterhead (o el del sobre y el del encabezado de página). El primero sería el HELO, que no se puede falsear, mientras que el segundo es el MAIL FROM, el cual es fácilmente falseable. ¿Cómo detectar el spoofing?
Además de para el spam en sí, también para el phishing son muy útiles los registros SPF, DKIM y DMARC. La cabecera de un email da mucha información útil, y se lee de abajo a arriba.