Sploitus

Exploit for CVE-2025-24132-Scanner

kitploit · 2026-08-25

Exploit Code

MARKDOWN74 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-FERALTHEDOGG-CVE-2025-24132-SCANNER
EN | KR

* * *

## 📄 Обзор

Этот инструмент обнаруживает устройства, поддерживающие AirPlay, в вашей локальной сети через mDNS (Zeroconf) и проверяет их на наличие уязвимости CVE-2025-24132 «zero-click» HTTP RCE. Найденные устройства отображаются в простом графическом интерфейсе; щелкните по устройству, чтобы просмотреть все полученные свойства.

* * *

### Необходимые компоненты

  * Python 3.7+
  * PyQt5
  * Пакет `zeroconf` (`pip install zeroconf`)



### Установка

root@kitploit:~
    
    
    pip install PyQt5 zeroconf
    

или

root@kitploit:~
    
    
    pip install -r requirements.txt
    

### Использование

root@kitploit:~
    
    
    python3 main.py
    

  * GUI откроется и автоматически обнаружит все устройства AirPlay в той же локальной сети.
  * Каждое обнаруженное устройство отображается как « ()» с начальным статусом «Scanning…».
  * После завершения теста на RCE правая колонка обновится на **Уязв** (уязвим) или **Безопасен**.



### Интерфейс

  * **Левая колонка («Device»)** : отображает `<имя> (IP-адрес)`.
  * **Правая колонка («RCE»)** : показывает статус уязвимости.
  * **Одиночный щелчок** по строке устройства раскрывает её и показывает все свойства mDNS TXT (например, `deviceid`, `model`, `osvers`, `features`, `srcvers` и т.д.).



### Принцип работы

  1. **Обнаружение** :

     * Использует `zeroconf` для поиска сервисов `_airplay._tcp.local.`.
     * Отфильтровывает адреса `127.*` и дубликаты.
  2. **Извлечение свойств** :

     * Читает все TXT-записи (`info.properties`) в словарь.
  3. **Тест на RCE (CVE-2025-24132)** :

     * Формирует HTTP-запрос `POST /pairing-init` с фиктивным plist обратного шелла.
     * Помечает устройство как уязвимое, если получен **любой** HTTP-ответ.
  4. **Обновление GUI** :

     * Испускает сигналы Qt для добавления новой строки и последующего обновления её статуса.
     * Хранит полную информацию о каждом устройстве (включая поля TXT) в `self.device_info`.