Saturday, November 7, 2026

Debian 13: installing mobile verification toolkit to trace pegasus malware for android devices

Mobile Verification Toolkit (MVT) is a tool to facilitate the consensual forensic analysis of Android and iOS devices, for the purpose of identifying traces of compromise. The Mobile Verification Toolkit (MVT) was developed by the Amnesty International Security Lab.

Here are common known spyware can be trace by MVT:

  1. Pegasus: NSO Group spyware targeting iOS and Android
  2. Predator: Commercial spyware associated with Intellexa
  3. Reign: Sophisticated spyware associated with QuaDream
  4. Hermit: Commercial spyware associated with RCS Lab
  5. KingsPawn: Spyware associated with QuaDream investigations
  6. FinSpy / FinFisher: Commercial surveillance software
  7. DarkCaracal: Mobile surveillance campaign targeting Android devices

Install python 

# apt install python3 python3-venv sqlite3 libusb-1.0-0 libimobiledevice-utils usbmuxd pipx

Install adb for android

# apt install -y android-sdk-platform-tools android-sdk-platform-tools-common

Create virtual python 

$ pipx ensurepath
Success! Added /[home_user]/.local/bin to the PATH environment variable.

Consider adding shell completions for pipx. Run 'pipx completions' for
instructions.

You will need to open a new terminal or re-login for the PATH changes to take
effect. Alternatively, you can source your shell's config file with e.g.
'source ~/.bashrc'.

Otherwise pipx is ready to go!

Install mvt

$ pipx install mvt
  installed package mvt 2026.11.2, installed using Python 3.13.5
  These apps are now globally available
    - mvt
    - mvt-android
    - mvt-ios
⚠️  Note: '/[home_user]/.local/bin' is not on your PATH environment
    variable. These apps will not be globally accessible until your PATH is
    updated. Run `pipx ensurepath` to automatically add it, or manually modify
    your PATH in your shell's config file (e.g. ~/.bashrc).
done!
$ ls ./.local/bin/
mvt  mvt-android  mvt-ios

Add virtual python binary 

$ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
$ source ~/.bashrc
$ mvt version


        MVT - Mobile Verification Toolkit

        https://mvt.re
        Version: 2026.11.2

        You have not yet downloaded any indicators, check the `download-iocs` 
command!

Download spyware indicators

$ mvt download-iocs


        MVT - Mobile Verification Toolkit

        https://mvt.re
        Version: 2026.11.2

        You have not yet downloaded any indicators, check the `download-iocs` 
command!


               [mvt.common.updates] Downloaded indicators "NSO Group Pegasus 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_AmnestyTec
h_investigations_master_2021-07-18_nso_pegasus.stix2
               [mvt.common.updates] Downloaded indicators "Predator Spyware 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_intellexa_predator_predator.stix2
               [mvt.common.updates] Downloaded indicators "RCS Lab Spyware 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2022-06-23_rcs_lab_rcs.stix2
               [mvt.common.updates] Downloaded indicators "Stalkerware 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_AssoEchap_
stalkerware-indicators_master_generated_stalkerware.stix2
               [mvt.common.updates] Downloaded indicators "Surveillance campaign
linked to mercenary spyware company" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_AmnestyTec
h_investigations_master_2023-03-29_android_campaign_malware.stix2
               [mvt.common.updates] Downloaded indicators "Quadream KingSpawn 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2023-04-11_quadream_kingspawn.stix2
               [mvt.common.updates] Downloaded indicators "Operation 
Triangulation Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2023-06_01_operation_triangulation_operation_triangulation
.stix2
               [mvt.common.updates] Downloaded indicators "WyrmSpy and DragonEgg
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2023-07-25_wyrmspy_dragonegg_wyrmspy_dragonegg.stix2
               [mvt.common.updates] Downloaded indicators "Wintego Helios 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_AmnestyTec
h_investigations_master_2024-05-02_wintego_helios_wintego_helios.stix2
               [mvt.common.updates] Downloaded indicators "NoviSpy (Serbia) 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_AmnestyTec
h_investigations_master_2024-12-16_serbia_novispy_novispy.stix2
               [mvt.common.updates] Downloaded indicators "EagleMsgSpy 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2024-12-25_eaglemsgspy_eaglemsgspy.stix2
               [mvt.common.updates] Downloaded indicators "Candiru 
(DevilsTongue) Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_candiru_candiru.stix2
               [mvt.common.updates] Downloaded indicators "ResidentBat 
Indicators of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_ResidentBat_residentbat.stix2
               [mvt.common.updates] Downloaded indicators "Cellebrite Indicators
of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_cellebrite_cellebrite.stix2
               [mvt.common.updates] Downloaded indicators "DarkSword Indicators 
of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2026-03-30_darksword_darksword.stix2
               [mvt.common.updates] Downloaded indicators "Coruna Indicators of 
Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2026-03-03_coruna_cryptowaters_coruna.stix2
               [mvt.common.updates] Downloaded indicators "Morpheus Indicators 
of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2026-04-23_ips_morpheus_morpheus.stix2
               [mvt.common.updates] Downloaded indicators "BTMOB Indicators of 
Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2026-05-26_btmob_btmob.stix2
               [mvt.common.updates] Downloaded indicators "Spyrtacus Indicators 
of Compromise" to 
/[home_user]/.local/share/mvt/indicators/raw.githubusercontent.com_mvt-projec
t_mvt-indicators_main_2026-04-09_sio_spyrtacus_spyrtacus.stix2
$ mvt version
        MVT - Mobile Verification Toolkit

        https://mvt.re
        Version: 2026.11.2

        Indicators updates checked recently, next automatic check in 12 hours

MVT installation done.

NOTE: steps below does not tested, and may different output depends on your android phone. 

You MUST enable developer option and debug on your Android phone.  Connect your android phone using usb cable.

create directory for forensic

$ mkdir -p ~/forensics/{evidence/android,working/android,reports/android}

Pull your data from android phone

$ adb bugreport ~/forensics/evidence/android/bugreport.zip

Scan your data to find evidence of spying malware 

$ mvt-android check-bugreport -o ~/forensics/reports/android/ ~/forensics/evidence/android/bugreport.zip

Find out the result on folder ~/forensics/reports/android/