/ Каталог / Песочница / ipsw-skill
● Сообщество blacktop 🔑 Нужен свой ключ

ipsw-skill

автор blacktop · blacktop/ipsw-skill

Управляйте интерфейсом командной строки ipsw из своего агента — загрузка/извлечение IPSW, различия в кэше ядра, сортировка Mach-O, заголовки ObjC частной платформы.

ipsw-skill учит Клода (и совместимых агентов, таких как Codex CLI/Gemini CLI) управлять ipsw от Blacktop — командной строкой швейцарской армии для прошивки Apple и бинарного анализа. Он знает подкоманды для загрузки/извлечения IPSW и кэшей ядра, дампа заголовков Objective-C из частных фреймворков, сравнения ядер между версиями, аудита прав и проверки двоичных файлов Mach-O. Предназначено для исследователей безопасности платформ Apple, специалистов по обратному проектированию и инженеров, отлаживающих поведение на уровне платформы.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

ipsw-skill.replay ▶ готово
0/0

Установка

Репозиторий автора · Официальная документация Claude Skills

Сценарии использования

Реальные сценарии: ipsw-skill

Дамп заголовков Obj-C из частной платформы для обнаружения API

👤 Исследователи безопасности и специалисты по поддержке SDK, работающие против внутренних компонентов Apple ⏱ ~30 min advanced

Когда использовать: Вам нужна общедоступная поверхность (класс + имена селекторов) частной платформы для изучения изменений поведения.

Предварительные требования
  • ipsw CLI установлен — заварить установку blacktop/tap/ipsw
  • dyld_shared_cache, извлеченный из IPSW — Используйте экстракт ipsw из загруженного вами IPSW.
Поток
  1. Загрузите IPSW
    Используйте загрузку ipsw для указанной мной версии iOS.✓ Скопировано
    → IPSW сохранен локально
  2. Извлеките общий кеш
    Извлеките dyld_shared_cache из IPSW.✓ Скопировано
    → Файл общего кэша извлечен.
  3. Дамп заголовков для целевой платформы
    Дамп заголовков Obj-C для <FrameworkName>.✓ Скопировано
    → Дамп заголовка с классами и селекторами

Итог: У вас есть читаемые заголовки для различий между версиями.

Подводные камни
  • Путаница двоичных файлов симулятора с двоичными файлами устройств — Всегда указывайте изучаемое устройство/арку; фрагменты симулятора отличаются
Сочетать с: ghidrassistmcp

Разница в кэшах ядра в двух версиях iOS

👤 Исследователи Kernel и XNU ⏱ ~60 min advanced

Когда использовать: Вышла новая версия iOS; вы хотите увидеть, что изменилось в ядре.

Поток
  1. Извлеките оба кэша ядра
    Извлеките кэш ядра из IPSW A и IPSW B.✓ Скопировано
    → Два файла kernelcache на диске
  2. Разница
    Сравните два кэша ядра; список добавленных/удаленных/измененных символов.✓ Скопировано
    → Список изменений с категориями символов

Итог: Целенаправленный журнал изменений на уровне ядра.

Подводные камни
  • Рассматривать изменение порядка символов как значимое изменение — Пусть изменение порядка группы инструментов по сравнению с реальными добавлениями/удалениями
Сочетать с: reverse-engineering-assistant

Проверьте Mach-O на наличие прав и подозрительных характеристик.

👤 Рецензенты AppSec, разработчики, проверяющие сторонние зависимости ⏱ ~20 min intermediate

Когда использовать: Вы хотите проверить права и импорт двоичного файла перед его отправкой вместе с приложением.

Поток
  1. Осмотрите Маха-О
    Показать команды загрузки, LC_CODE_SIGNATURE и права для <path>.✓ Скопировано
    → Список прав + информация о подписи
  2. Получение списка импорта
    Список импортированных символов, сгруппированных по платформам.✓ Скопировано
    → Очистить таблицу импорта

Итог: Краткий отчет об аудите, который вы можете сохранить в ветке обзора.

Сочетать с: xcodebuild

Комбинации

Сочетайте с другими MCP — эффект x10

ipsw-skill + ghidrassistmcp

Передавайте интересующие функции Ghidra для более глубокого анализа.

В импорте Mach-O выберите подозрительную функцию и откройте ее в Ghidra.✓ Скопировано

Используйте более широкий набор сценариев RE вместе с инструментами ipsw, специфичными для Apple.

Объедините общий рабочий процесс RE с ipsw для работы с dyld-кешем.✓ Скопировано
ipsw-skill + xcodebuild

Создавайте локальные приложения и проверяйте, соответствуют ли они ожидаемому профилю прав.

После xcodebuild запустите права ipsw для архива, чтобы проверить, что в итоге было выполнено.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
ipsw download version/device selector Получить прошивку для анализа bandwidth only
ipsw extract IPSW + target (dsc / kernelcache / ramdisk) Извлеките конкретный артефакт из IPSW 0
ipsw dyld class-dump dyld_shared_cache + framework Изучите API частных фреймворков 0
ipsw kernel diff two kernelcaches Анализ ядра от версии к версии 0
ipsw macho info/ent Mach-O path Бинарная сортировка 0

Стоимость и лимиты

Во что обходится

Квота API
Никто
Токенов на вызов
Выходные данные зависят от размера артефакта; команды области жестко
Деньги
Бесплатно; загрузка оплачивается только трафиком
Совет
Используйте флаги фильтрации ipsw, чтобы агент не вставлял в контекст 50 МБ символов.

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: Не требуется для базовой работы
Исходящий трафик: ipsw download извлекает IPSW с общедоступных серверов Apple. Никакой дополнительной телеметрии от самого навыка.

Устранение неполадок

Частые ошибки и исправления

ipsw: команда не найдена

Установите CLI через Homebrew Tap: Brew Install blacktop/tap/ipsw.

Проверить: which ipsw
Время загрузки истекло

Серверы Apple могут ограничивать скорость; повторите попытку с --resume. Убедитесь, что ваша сеть позволяет загружать большие файлы.

Проверить: curl -I https://appldnld.apple.com/...
Дамп класса возвращает пустой

Подтвердите, что вы указали общий кеш для правильного устройства/арки. Кэши симулятора отделены от кэшей устройств.

Проверить: ipsw dyld info <cache>

Альтернативы

ipsw-skill в сравнении

АльтернативаКогда использоватьКомпромисс
ghidrassistmcpВам нужна полноценная дизассемблирование и создание сценариев через Ghidra.Гораздо тяжелее; более медленный запуск
ida-pro-mcpВы уже лицензируете IDA Pro и хотите интегрировать MCP.Коммерческий инструмент
reverse-engineering-assistantВам нужен более широкий помощник по рабочему процессу REНе специфично для Apple

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills