¿Qué es Pegasus?

Pegasus es un spyware (software espía) desarrollado por la compañía Israelí NSO Group que puede instalarse en teléfonos móviles, principalmente iOS y Android. Una vez instalado, Pegasus es capaz de acceder prácticamente a toda la información del dispositivo, desde las llamadas, fotos y mensajes, hasta la cámara, el micrófono y la información de localización, todo ello de manera transparente al/la usuario/a y así proporcionar dicha información al atacante.

vectores-ataque-pegasus

Vectores de ataque de Pegasus y el tipo de información que puede recopilar.

Fue descubierto en agosto de 2016, tras un intento fallido de instalación en el iPhone de un activista de derechos humanos. Esto permitió llevar a cabo una investigación que reveló detalles sobre el software espía, sus capacidades y las vulnerabilidades de seguridad que explota.

¿Quiénes utilizan Pegasus?

Según informa la empresa creadora del software, NSO Group, solo se vende a gobiernos y fuerzas de seguridad. Al ser considerado como armamento, para su exportación, necesita el visto bueno del Ministerio de Defensa de Israel. Expertos/as del sector calculan que al menos 60 agencias militares, de inteligencia o de seguridad en 40 países de todo el mundo, son las que cuentan con esta tecnología, muchas de Oriente Medio y del Golfo Pérsico.

gobiernos-que-usan-pegasus

Gobiernos que hacen uso de Pegasus.

 

¿Cómo funciona Pegasus?

A lo largo de los años, Pegasus ha empleado varios métodos para conseguir infectar un dispositivo. En sus inicios, Pegasus se instalaba en los teléfonos a través de vulnerabilidades identificadas en aplicaciones de uso común o mediante “spear-phishing”. Esto consiste en engañar al/la usuario/a objetivo para que haga “click” en un enlace o abra un documento para que de manera transparente al/la usuario/a se instale el software en cuestión. Asimismo, otras vías de ataque eran posibles como, por ejemplo, mediante el uso de un transceptor inalámbrico situado cerca del objetivo, o de manera manual en caso de tener acceso físico al terminal.

Por aquel entonces, Apple, en el caso de los terminales iOS, descubrió tres vulnerabilidades “zero-day” (CVE-2016-4655, CVE-2016-4656 y CVE-2016-4657) que de forma encadenada permitían llevar a cabo el ataque sobre los dispositivos. Esta técnica de encadenamiento de vulnerabilidades o “vulnerbility chaining” ha sido la que Pegasus utilizaba desde 2016 a 2021, y consistía en detectar vulnerabilidades tanto hardware como software que fueran explotadas de manera simultanea para comprometer el terminal objetivo. Este tipo de ataque de “Vulnerability chaining” es comúnmente conocido como “Trident”.

Recientemente, el vector de ataque para la instalación de Pegasus ha cambiado haciendo uso de la versión mejorada del “zero click attack”. En este caso, el atacante puede infectar el dispositivo de la víctima con una simple “llamada perdida de WhatsApp”, pudiendo incluso borrar el registro de la llamada perdida y haciendo imposible que el/la propietario/a del teléfono pueda sospechar.

vectores-de-ataque-de-pegasus

Vectores de ataque de Pegasus.

Cómo saber si me ha afectado:

Dado que Pegasus se ha utilizado principalmente en líderes empresariales influyentes, periodistas o políticos/as, es poco probable que el/la ciudadano/a medio se haya visto afectado. Sin embargo, existen un par de maneras para comprobar si el terminal está afectado por Pegasus:

  • iVerify: iVerify es una aplicación de seguridad para usuarios/as de iPhone y Android capaz de detectar la presencia de Pegasus en el teléfono de un/a usuario/a. La aplicación busca evidencias que demuestren que el dispositivo está comprometido como, por ejemplo, archivos maliciosos. Además, proporciona actualizaciones en tiempo real de los rastros de Pegasus en el dispositivo. Cabe destacar que esta aplicación está aprobada por Apple y también está disponible para los usuarios de Android a través de Google Play.
  • MVT: Amnistía Internacional ha desarrollado una herramienta llamada “Mobile Verification Toolkit (MVT)” que permite identificar el software espía Pegasus en un dispositivo. La manera en la que comprueba la existencia de Pegasus es en base realizar y almacenar una copia de seguridad de los datos del teléfono inteligente en un ordenador, antes de escanear en busca del programa espía Pegasus.

En caso de no ser un/a usuario/a avanzado/a o simplemente querer una respuesta rápida y fácil, lo aconsejable es descargar la aplicación iVerify.

Sin embargo, si quieres hacer la comprobación por ti mismo/a, puedes utilizar la opción de desplegar el “toolkit” de MVT siguiendo estos pasos:

Nota: Los pasos descritos son para llevar a cabo el análisis de un terminal iPhone de Apple.

  • MVT solamente está soportado por MacOS o, en el caso de Windows, podría llegar a instalarse sobre WSL (Windows Subsystem for Linux). En este caso lo haremos sobre una máquina Linux Ubuntu 22.04.
  • En primer lugar, instalaremos Python y los paquetes necesarios:
$sudo apt install python3 python3-pip libusb-1.0-0 sqlite3
  • A continuación, crearemos los backups para posteriormente poder analizarlos. Puesto que estamos en una máquina Linux, deberemos instalar la aplicación “libimobiledevice” que nos permitirá realizar dichos backups:
$sudo apt-get install libimobiledevice2
  • Realizamos el backup mediante el siguiente comando:
$cd /home/perseus

$idevicebackup2 -i backup encryption on
  • Para llevar a cabo el proceso de análisis sobre el backup, deberemos en primer lugar descifrarlo. Para ello, iremos al directorio donde previamente hemos almacenado el backup y ejecutaremos el siguiente comando para que realice el descifrado del backup:
$mvt-ios decrypt-backup -p "password" -d ./decrypted_backup

Nota: Este proceso puede llevar un tiempo hasta que se complete.

  • A continuación, descargaremos los IoC (Indicators of Compromise)  y los dejaremos dentro de la misma carpeta donde se encuentra ubicado el backup descifrado:
$wget https://github.com/AmnestyTech/investigations/raw/ad04b5473382faf860f595f2f201 1a0ff2c19902/2021-07-18_nso/pegasus.stix2
  • Analizaremos el backup que previamente hemos descifrado contra los IoC descargados:
    $mkdir ioc_output
    
    $mvt-ios check-backup -i ./pegasus.stix2 -o ./ioc_output
  • Por último, tan solo nos queda revisar si en la carpeta “ioc_output” se ha generado algún tipo de fichero con terminación “_detected”. Esto indicaría que el terminal posiblemente esté comprometido.

En caso de haber sido víctima del spyware, la recomendación seria restaurar el terminal a valores de fábrica.

Y si tienes cualquier cuestión o necesidad relacionada con Ciberseguridad, no dudes en ponerte en contacto con nosotros/as.