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

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

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

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

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

Категории

Все категории
Loading categories
Trigon — Детерминированный эксплойт ядра, основанный на CVE-2023-32434. | Kitploit
Инструменты/GitHubGitHub/alfiecg24/trigon
Безопасность iOSАнализ уязвимостейЭксплуатацияМобильная безопасностьОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHubalfiecg24/trigon

Trigon

Детерминированный эксплойт ядра, основанный на CVE-2023-32434.

Репозиторий
13918243 дней назадПроверено Kitploit

Популярное

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

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

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

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

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

Trigon

Trigon — это детерминированный эксплойт для ядра и обход PPL, основанный на CVE-2023-32434. Он поддерживает устройства A9 - A16 под управлением iOS 13 - 16.5.1. Детерминированность означает, что этот эксплойт никогда не вызовет панику во время или после эксплуатации и является полностью надёжным.

Trigon эксплуатирует целочисленное переполнение в слое VM ядра XNU. Уязвимость позволяет нам построить примитив произвольного отображения физических адресов. Это даёт нам примитивы чтения/записи по почти любому физическому адресу, но последующая стратегия эксплуатации различается для разных устройств и версий.

Если вам интересны технические статьи об iOS, рекомендую прочитать серию Trigon! Я постарался сделать её максимально понятной, чтобы её могли понять и те, кто не является iOS-исследователем.

  • Часть 1: Поддержка A10
  • Часть 2: Поддержка A9 и A11
  • Часть 3: Поддержка A12+

Примечание: устройства arm64 в настоящее время не поддерживаются на iOS 16, поддерживаются только устройства arm64e (A12+).

arm64e

Поддержка arm64e требует нескольких жёстко заданных значений, которые следует поместить в unique_offsets.h. Большинство из них можно найти очень легко: некоторые смещения структур можно найти в исходном коде Dopamine, а другие — запустив XPF. Однако есть три смещения, которые мы не можем найти до эксплуатации, и сейчас я объясню, как их найти.

База отображения

UniqueValues.addresses.base — это физический базовый адрес вредоносного отображения памяти для Trigon. Простой способ найти его — использовать существующее значение в качестве предполагаемого базового адреса, а затем прочитать распознаваемый физический адрес, например 0x41410000. После этого можно вычесть смещение из физического адреса в логе паники, чтобы определить правильный базовый адрес отображения.

pv_head_table и pp_attr_table

UniqueValues.offsets.pv_head_table и UniqueValues.offsets.pp_attr_table — это относительные смещения двух структур данных ядра от физической базы ядра. Поскольку они выделяются так рано во время инициализации ядра, они всегда находятся по одному и тому же смещению от базы ядра в физической памяти. Чтобы найти их, можно использовать существующий эксплойт для ядра (например, kfd), чтобы найти эти структуры и перевести их в правильный физический адрес, а затем вычислить смещения таким образом.

Инструмент CLI

Для устройств, поддающихся джейлбрейку через Dopamine, я включил простой в использовании инструмент командной строки, который найдёт все необходимые смещения для Trigon на arm64e здесь. Вы можете использовать его, чтобы настроить эксплойт для работы на вашей комбинации устройства и версии.

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