🔥Adquiere tu membresía:  acceso a todos los cursos, videos eliminados, contenidos protegidos, manuales y más. >> Ver Más

Cómo encontrar y eliminar Pegasus de un dispositivo móvil – Guía definitiva

El software espía (spyware) Pegasus acaparó los titulares de los medios de comunicación a nivel mundial hace unos días. El uso que los gobiernos como el mexicano le dan a este software es un tema polémico. En este artículo no generaremos ningún tipo de polémica al respecto. Sin más preámbulo, pasemos a al propósito de este artículo: ¿Cómo podemos saber si nuestro teléfono está infectado con Pegasus o no?

Pegasus es un spyware desarrollado por la firma de seguridad de información israelí NSO Group que se puede instalar de forma encubierta en teléfonos móviles (y otros dispositivos) que ejecutan la mayoría de las versiones de iOS y Android

Pegasus no solo permite el monitoreo de pulsaciones de teclas de todas las comunicaciones desde un teléfono (mensajes de texto, correos electrónicos, búsquedas en la web). Este también permite el seguimiento de llamadas telefónicas y ubicación, convirtiendo así nuestro teléfono en un dispositivo de vigilancia constante. 

En primer lugar, no sabemos exactamente cómo llega este malware a los dispositivos y qué vulnerabilidad utiliza. Pero cuando está en nuestro dispositivo, puede espiarnos leyendo SMS, rastreando nuestras ubicaciones GPS, usando nuestro micrófono y cámara y descargando nuestros archivos desde nuestros teléfonos. 

El software realiza todo lo que requiera permisos de nuestro Android o iOS. Entonces, podemos descubrirlo desde allí, pero necesitamos realizar algunas pruebas forenses para detectarlo. 

No te preocupes, es una tarea más fácil de lo que piensas. Vamos a utilizar MVT o Mobile Verification Toolkit en nuestro sistema para detectar si Pegasus nos está espiando. MVT fue creado por Amnistía Internacional en julio de 2021.

¿Qué es MVT?

Mobile Verification Toolkit, también conocido como MVT, es una colección de herramientas diseñadas para facilitar las pruebas forenses de dispositivos Android e iOS con el fin de identificar cualquier signo de compromiso. Las capacidades de MVT evolucionan continuamente, pero algunas de sus características claves incluyen: 

  • Descifrar las copias de seguridad de iOS cifradas.
  • Procesar y analizar registros de numerosos sistemas iOS y bases de datos de aplicaciones, registros y análisis del sistema.
  • Extraer las aplicaciones instaladas de los dispositivos Android.
  • Extraer información de diagnóstico de dispositivos Android a través del protocolo adb.
  • Comparar los registros extraídos con una lista proporcionada de indicadores maliciosos en formato STIX2.
  • Generar logs JSON de registros extraídos y logs JSON separados de todos los rastros maliciosos detectados.
  • Generar una línea de tiempo cronológica unificada de registros extraídos, junto con una línea de tiempo de todos los rastros maliciosos detectados.

Instalación de MVT en Linux y Mac

Antes de instalar MVT necesitamos tener Python 3.6 instalado en nuestra computadora. Python está disponible para la mayoría de los sistemas operativos de escritorio.

Para instalar MVT en Linux necesitamos instalar algunas dependencias, para instalarlas necesitamos ejecutar los siguientes comandos en nuestra ventana de la terminal:

sudo apt install python3 python3-pip libusb-1.0-0

libusb-1.0-0 no es necesario si tienes la intención de usar solo mvt-ios y no mvt-android.

Entonces necesitamos ejecutar el siguiente comando para instalar MVT en nuestro sistema:

pip3 install mvt

MVT comenzará a descargarse en nuestro sistema, como podemos ver en la siguiente captura de pantalla:

Después de un par de minutos (el tiempo dependerá del rendimiento de nuestro sistema y de la velocidad de Internet) MVT se instalará en nuestro sistema Linux.

Instalación de MVT en MAC

Para instalar MVT en MAC es necesario instalar Xcode y homebrew. Además, el proceso es casi el mismo. Necesitamos instalar dependencias para ejecutar MVP en MAC usando el siguiente comando en la terminal:

brew install python3 libusb

Entonces, podemos instalar MVT usando el siguiente comando:

pip3 install mvt

Corrección de ruta después de la instalación

Después de instalar MVT en nuestro sistema, podemos ejecutarlo para verificar si Pegasus se encuentra en nuestro dispositivo móvil. Sin embargo, antes de usarlo debemos corregir nuestra ruta para ejecutarlo fácilmente. Este paso a veces no es necesario con algunos sistemas operativos. Te sugerimos omitir esto y continuar al siguiente paso si eso no funciona, entonces debes intentarlo.

Necesitamos abrir nuestro .bash o .zshrc (dependiendo de qué shell estemos usando BASH o ZSH) en el editor nano usando el siguiente comando:

nano .zshrc

Posteriormente, debemos agregar la siguiente línea al final del código (en una nueva línea), luego debes guardar y cerrar (presionando ctrl + x, luego Y, luego Enter).

export PATH=$PATH:~/.local/bin

Ya tenemos instalado MVT para ejecutar un análisis forense en nuestros teléfonos móviles para comprobar si eldispositivo está infectado con Pegasus o no. En primer lugar, revisaremos la ayuda/opciones de esta herramienta aplicando dos comandos en nuestra terminal. ¿Dos comandos? Sí, un menú de ayuda es para Android y otro para iOS. Los comandos son los siguientes:

mvt-android --help
mvt-ios --help

En la siguiente captura de pantalla, podemos ver el resultado de los comandos anteriores.

Cómo comprobar si Pegasus está instalado un dispositivo Android

Si tenemos un dispositivo Android sospechoso, debemos conectar nuestro dispositivo Android a través de ADB (Android Debug Bridge). Es decir, ADB debe estar en nuestro sistema. En sistemas Linux podemos usar sudo apt install adb android-tools-adb, también podemos instalarlo en Mac. La conexión ADB del teléfono debe estar permitida dentro de las opciones de desarrollador; los detalles sobre ADB los puedes encontrar aquí.

Posteriormente, debemos conectar nuestro dispositivo Android a través de USB con nuestra computadora y verificar que ADB esté funcionando y que nuestro dispositivo móvil esté conectado correctamente.

En la captura de pantalla anterior podemos ver que nuestro dispositivo está correctamente conectado con ADB. Ahora también podemos verificar la conexión con MVT usando el siguiente comando:

mvt-android check-adb

Es posible que obtengamos algún error como la siguiente captura de pantalla:

Si observamos este error común (ya se está ejecutando adb-server, debemos eliminarlo), entonces debemos ejecutar el siguiente comando para resolverlo y verificar adb nuevamente.

adb kill-server

Ahora bien, aquí hay dos tipos de análisis que podemos realizar en nuestros dispositivos Android:

  • Verificar APKs: podemos escanear todas las aplicaciones instaladas.
  • Verificar la copia de seguridad de Android: crear una copia de seguridad del dispositivo y verificarla.

Comprobar APKs

Podemos ejecutar el siguiente comando para empezar a descargar todas nuestras aplicaciones de Android en nuestra PC y escanearlas.

mvt-android download-apks --output androidapps --all-checks

El comando anterior iniciará el trabajo y guardará todas nuestras aplicaciones en una carpeta llamada androidapps, luego iniciará todas las comprobaciones como lo indicamos.

En la captura de pantalla anterior podemos ver que estamos extrayendo todas las aplicaciones instaladas en nuestra PC. Después de la descarga completa, MVT comenzará a escanear todas las aplicaciones, luego de escanear nos mostrará un resultado como podemos ver en la siguiente captura de pantalla:

Aquí, en la imagen anterior, podemos ver que MVT no detectó ningún spyware en nuestro teléfono.

Analizando la copia de seguridad de Android

Algunos ataques contra teléfonos Android se realizan mediante el envío de enlaces maliciosos por SMS. La función de copia de seguridad de Android no permite recopilar mucha información que pueda ser interesante para un análisis forense, pero se puede utilizar para extraer SMS y verificarlos con MVT. Para hacerlo, necesitamos conectar nuestro dispositivo Android a nuestra computadora. Luego, necesitaremos habilitar la depuración USB en el dispositivo Android.

Si es la primera vez que nos conectamos a este dispositivo, necesitaremos aprobar las claves de autenticación a través de un mensaje que aparecerá en nuestro dispositivo Android. Luego, podemos usar adb para extraer la copia de seguridad de SMSs con el siguiente comando:

adb backup com.android.providers.telephony

Necesitamos aprobar la copia de seguridad en el teléfono y posiblemente ingresar una contraseña para cifrar la copia de seguridad. La copia de seguridad se almacenará en un archivo llamado backup.ab en nuestro directorio de trabajo en la PC.

En este punto necesitamos usar Android Backup Extractor y descargar el archivo abe.jar para convertirlo a un formato de archivo legible. Asegúrate de que Java esté instalado en tu sistema (principalmente Linux viene con él). Posteriormente debes usar el siguiente comando:

java -jar ~/Downloads/abe.jar unpack backup.ab backup.tar

Podemos ver el resultado en la siguiente captura de pantalla:

Ahora lo extraemos usando el siguiente comando:

tar xvf backup.tar

La captura de pantalla muestra el resultado del comando anterior.

Posteriormente podemos extraer con MVT SMSs que contengan enlaces:

mvt-android check-backup --output sms .

La salida se guardará en una carpeta llamada “sms”. En la captura de pantalla podemos ver que nuestro dispositivo tiene muchos SMS con enlaces, lo que puede ser peligroso.

Así es como podemos probar un dispositivo Android para encontrar Pegasus o cualquier otro potencial spyware.

Comprobando si Pegasus se encuentra en un iPhone

Antes de comenzar a adquirir y analizar datos de un dispositivo iOS, debemos evaluar cuál es nuestro plan de acción preciso. Debido a que tenemos múltiples opciones a nuestra disposición, debemos definir y familiarizarnos con la metodología forense más efectiva en cada caso.

Recuperación del sistema de archivos

Tendremos que decidir si intentaremos hacer jailbreak al dispositivo y obtener un registro completo del sistema de archivos, o no.

Si bien el acceso al sistema de archivos completo permite extraer datos que de otro modo no estarían disponibles, es posible que no siempre podamos hacer jailbreak a un determinado modelo de iPhone o versión de iOS. Además, según el tipo de jailbreak disponible, hacerlo podría comprometer algunos registros importantes, contaminar otros o causar un mal funcionamiento no intencionado del dispositivo más adelante en caso de que se vuelva a utilizar.

Si no volveremos a utilizar el teléfono, es posible que consideremos un jailbreak después de haber agotado todas las demás opciones, incluida una copia de seguridad.

Copia de seguridad de iTunes

Una opción alternativa es generar una copia de seguridad de iTunes. Es importante aclarar que en la versión más reciente de mac OS, ya no se inician desde iTunes, sino directamente desde Finder. 

Si bien las copias de seguridad solo proporcionan un subconjunto de los archivos almacenados en el dispositivo, en muchos casos puede ser suficiente para al menos detectar algunos artefactos sospechosos. Las copias de seguridad cifradas con una contraseña tendrán algunos registros interesantes adicionales que no están disponibles en los no cifrados. Por ejemplo, el historial de Safari, el estado de Safari, etc.

El uso de MVT es casi el mismo aquí. Si leemos la parte de Android, podemos entender fácilmente el punto, pero el análisis forense y la copia de seguridad de iOS son un poco diferentes. Aquí te sugerimos visitar la Documentación Oficial de MVT. Esto es lo suficientemente detallado como para continuar.

Cómo eliminar Pegasus del teléfono móvil

Está bien, hasta este punto es todo lo que tenemos. Sabemos que podemos buscar Pegasus en nuestro teléfono móvil, pero ¿qué pasa si nuestro teléfono se ve afectado? En ese caso, te sugerimos los siguientes métodos.

  • Si nuestro Android o iPhone no está rooteado (Jailbreak para el caso de iPhones), entonces podemos eliminarlo fácilmente haciendo un restablecimiento de fábrica o restablecimiento completo para eliminar Pegasus. Puedes conservar la copia de seguridad aparte. No te recomendamos hacer una copia de seguridad de ellas nuevamente en el móvil, porque no sabemos qué vulnerabilidad usó Pegasus. Puede haber utilizado algún archivo multimedia o algo que se puede almacenar.
  • Si tenemos un dispositivo Android rooteado, el formato completo o el restablecimiento de fábrica no funcionarán aquí, porque en los dispositivos rooteados los spywares se instalan como aplicaciones predeterminadas. La actualización de la versión de Android tampoco funciona. La mejor solución puede ser instalar una ROM personalizada. Eso puede eliminar todo el sistema operativo con el spyware.
  • Si estamos en un iPhone con Jailbreak, entonces ya hemos violado la política de Apple, no nos ayudarán. Debido a que iOS no es de código abierto y utiliza diferentes kernels, no tiene ninguna ROM personalizada práctica. En este caso, te podemos sugerir un reinicio completo del dispositivo y verificar nuevamente. Si Pegasus todavía estuviera allí, tendríamos que comprar un teléfono nuevo.
  • Usar un teléfono básico puede ser una solución, pero en esta era digital esto es casi imposible. Por lo tanto, podemos usar algunos teléfonos Linux (nos referimos teléfonos inteligentes que vienen con el sistema operativo Linux).

Conclusión

Así es como podemos encontrar y eliminar si nuestro dispositivo móvil está infectado con el spyware Pegasus usando MVT. Pegasus ha sido llamado el software de hacking más sofisticado disponible en la actualidad para invadir teléfonos. 

NSO Group ha afirmado una y otra vez que no se hace responsable en caso de uso indebido de Pegasus. NSO Group afirma que solo vende la herramienta a gobiernos transparentes y no a individuos ni a ninguna otra entidad.

Deja un comentario

Adquiere tu Membresía Anual Wiser

Adquiere tu Membresía Anual Wiser y adquiere grandes beneficios

Más información