Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-43300 — Это POC для IOS 0click CVE-2025-43300 | Kitploit
Инструменты/GitHubGitHub/hunters-sec/cve-2025-43300
Безопасность встроенных системБезопасность iOSКриминалистика памятиАнализ уязвимостейЭксплуатацияФаззингМобильная безопасностьСтатьи и ИсследованияОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHubhunters-sec/cve-2025-43300

CVE-2025-43300

1162931 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Это POC для IOS 0click CVE-2025-43300

Репозиторий

CVE-2025-43300: Уязвимость повреждения памяти при обработке DNG-изображений на iOS/macOS

Обзор

CVE-2025-43300 — это критическая уязвимость повреждения памяти в фреймворке обработки изображений Apple, затрагивающая iOS 18.6.1 и системы macOS. Уязвимость находится в коде декомпрессии JPEG Lossless внутри RawCamera.bundle и вызывается несоответствиями между метаданными TIFF и параметрами потока JPEG в файлах DNG.

Детали уязвимости

Корневая причина

Уязвимость возникает из-за несоответствия метаданных и потока в файлах DNG (Digital Negative):

  1. Метаданные SamplesPerPixel в заголовках TIFF указывают ожидаемые цветовые компоненты
  2. Количество компонентов SOF3 в потоках JPEG Lossless задаёт фактические компоненты данных
  3. Когда эти значения различаются, выделение памяти и обработка становятся несогласованными

Поток повреждения памяти

root@kitploit:~
1. Parser reads SamplesPerPixel from TIFF metadata (e.g., 2 components)
2. System allocates buffer: width × height × 2 components
3. JPEG decoder reads SOF3 component count (e.g., 1 component)
4. Decoder writes data based on inconsistent assumptions
5. Buffer overflow occurs when more data is written than allocated

Вектор атаки

  • Уязвимость без клика: Не требуется взаимодействие пользователя
  • Автоматическая обработка: Вызывается просмотром, импортом или получением файлов DNG
  • Кросс-платформенное воздействие: Затрагивает системы iOS и macOS
  • Повреждение памяти: Может привести к сбоям приложений или потенциальному выполнению кода

Обзор инструментов

Этот репозиторий содержит два Python-инструмента для анализа и воспроизведения CVE-2025-43300:

1. Анализатор уязвимости DNG (dng_vulnerability_analyzer.py)

Назначение: Анализирует структуру файлов DNG для выявления условий уязвимости

Ключевые возможности:

  • Разбирает структуру файлов TIFF/DNG, включая IFD и SubIFD
  • Находит теги метаданных SamplesPerPixel
  • Определяет маркеры SOF3 JPEG Lossless и количество компонентов
  • Обнаруживает несоответствия метаданных/потока
  • Сообщает точные смещения байтов для модификации

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

root@kitploit:~
python3 dng_vulnerability_analyzer.py <dng_file>

Вывод:

  • Анализ структуры файла
  • Расположение и значения тегов метаданных
  • Информация о компонентах потока JPEG
  • Оценка уязвимости
  • Конкретные смещения для создания POC

2. Безопасный модификатор шестнадцатеричных данных (hex_modifier.py)

Назначение: Создаёт proof-of-concept файлы путём безопасного изменения определённых байтов

Ключевые возможности:

  • Проверяет ожидаемые значения байтов перед модификацией
  • Создаёт хеши SHA256 для отслеживания файлов
  • Генерирует отчёты о двоичных различиях
  • Реализует проверки безопасности для предотвращения случайного повреждения
  • Поддерживает как ручное, так и автоматизированное создание POC

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

root@kitploit:~
# Create POC using known vulnerable offsets
python3 hex_modifier.py create-poc <input.dng>

# Manual byte modification
python3 hex_modifier.py modify <input.dng> <offset> <old_byte> <new_byte> <output.dng>

# Generate diff report
python3 hex_modifier.py diff <original.dng> <modified.dng>

Процесс создания POC

Шаг 1: Анализ целевого файла

root@kitploit:~
python3 dng_vulnerability_analyzer.py IMGP0847.DNG

Это определяет:

  • Расположение метаданных SamplesPerPixel
  • Расположение количества компонентов SOF3 JPEG
  • Текущие значения и предлагаемые модификации

Шаг 2: Создание уязвимого образца

POC требует двух конкретных модификаций байтов:

  1. Увеличение метаданных SamplesPerPixel (обычно с 1 до 2)
  2. Уменьшение количества компонентов SOF3 (обычно с 2 до 1)
root@kitploit:~
python3 hex_modifier.py create-poc IMGP0847.DNG

Шаг 3: Проверка POC

root@kitploit:~
python3 dng_vulnerability_analyzer.py vuln_poc_IMGP0847.dng

Подтверждает наличие несоответствия и активацию уязвимости.

Почему POC работает

Технический механизм

  1. Фаза выделения памяти:

    • Парсер изображения читает SamplesPerPixel = 2
    • Выделяет буфер для данных пикселей на 2 компонента
    • Размер буфера = ширина_изображения × высота_изображения × 2
  2. Фаза обработки:

    • Декодер JPEG Lossless встречает SOF3 с 1 компонентом
    • Логика парсинга путается между фактическим и ожидаемым размером данных
    • Пытается записать данные, основываясь на противоречивых предположениях
  3. Повреждение памяти:

    • В буфер записывается больше данных, чем было выделено
    • Переполнение буфера повреждает соседние области памяти
    • Приводит к сбою приложения или потенциальному выполнению кода

Особенности формата файла

Файлы DNG используют контейнерный формат TIFF со встроенными потоками JPEG Lossless:

  • Метаданные TIFF описывают свойства изображения и цветовую информацию
  • Потоки JPEG содержат сжатые данные пикселей
  • Доверительное отношение существует между метаданными и содержимым потока
  • Пробел в валидации позволяет несоответствующим значениям достигать кода обработки

Оценка воздействия

Серьёзность: Критическая

  • Оценка CVSS: Высокая (без клика, повреждение памяти, широкое воздействие)
  • Затронутые системы: iOS 18.6.1, системы macOS с аналогичной обработкой изображений
  • Вектор атаки: Сетевая/локальная передача файлов
  • Взаимодействие пользователя: Не требуется
  • Область: Все устройства, обрабатывающие файлы DNG

Реальные сценарии

  • Вложения электронной почты с файлами DNG
  • Передачи AirDrop
  • Синхронизация фото в облаке
  • Загрузки из Интернета примеров фотографов
  • Обмен медиафайлами в мессенджерах

Смягчение и исправления

Ответ вендора

  • Исправлено в iOS 18.6.2: Apple реализовала правильную проверку метаданных
  • Обновления macOS: Аналогичные исправления применены к обработке изображений в macOS
  • Корневая причина: Добавлены проверки согласованности между метаданными и параметрами потока

Рекомендуемые меры смягчения

  1. Обновление систем: Установите iOS 18.6.2 или новее
  2. Проверка входных данных: Проверяйте согласованность метаданных в собственных парсерах
  3. Проверка границ: Реализуйте строгую проверку размера буфера
  4. Фаззинг: Регулярное тестирование парсеров файловых форматов

Структура файла и технические детали

Структура TIFF/DNG

root@kitploit:~
TIFF Header → IFD Chain → SubIFDs → Image Data
├── Metadata Tags (SamplesPerPixel, Compression, etc.)
├── JPEG Lossless Streams (SOF3 markers)
└── Pixel Data (compressed)

Ключевые места уязвимости

  • Тег SamplesPerPixel: Тег TIFF 0x0115 в структурах IFD
  • Маркеры SOF3: Начало кадра JPEG Lossless (0xFFC3)
  • Количество компонентов: Смещение байта +9 от маркера SOF3
  • Критическое несоответствие: Когда значение тега ≠ количеству компонентов

Рекомендации по тестированию

Безопасная среда тестирования

  1. Используйте изолированные системы: Виртуальные машины или выделенные тестовые устройства
  2. Создавайте снимки: Перед тестированием файлов POC
  3. Отслеживайте сбои: Проверяйте системные журналы и отчёты о сбоях
  4. Изоляция сети: Предотвращайте непреднамеренный обмен файлами

Ожидаемое поведение

  • Уязвимые системы: Сбой приложения, ошибки повреждения памяти
  • Исправленные системы: Корректная обработка ошибок или правильная обработка
  • Индикаторы в журналах: Нарушения доступа к памяти, ошибки сегментации

Технические ссылки

Документация по форматам файлов

  • Спецификация TIFF 6.0: Структура тегов и формат IFD
  • Спецификация DNG: Формат Adobe Digital Negative
  • Стандарт JPEG: Сжатие без потерь (ITU-T T.87)

Исследования безопасности

  • Техники повреждения памяти: Основы переполнения буфера
  • Фаззинг файловых форматов: Автоматическое обнаружение уязвимостей
  • Безопасность парсеров: Лучшие практики проверки входных данных

Отказ от ответственности: Данное исследование предоставляется только в образовательных целях и целях защиты. Пользователи несут ответственность за соблюдение применимых законов и этических норм.

ПРИМЕЧАНИЕ

Сбой происходит через 1-3 минуты. Удачи. А для POC вы можете выполнить open vuln_file.dng, чтобы открыть файл, или просто просмотреть его, и он будет выполнен.

Скачать инструмент