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

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

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

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

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

Категории

Все категории
Loading categories
WDBFontOverwrite — Демонстрационное приложение для перезаписи шрифтов на iOS с использованием CVE-2022-46689. | Kitploit
Инструменты/GitHubGitHub/ginsudev/wdbfontoverwrite
Безопасность iOSАнализ уязвимостейЭксплуатацияПентестинг мобильных приложенийМобильная безопасность
GitHubginsudev/wdbfontoverwrite

WDBFontOverwrite

Демонстрационное приложение для перезаписи шрифтов на iOS с использованием CVE-2022-46689.

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

Популярное

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

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

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

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

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

Proof-of-concept приложение для перезаписи шрифтов на iOS с помощью CVE-2022-46689.

Работает на iOS 16.1.2 и ниже (протестировано на iOS 16.1) на устройствах без джейлбрейка.

IPA доступен в разделе Releases.

Включенные шрифты:

  • DejaVu Sans Condensed
  • DejaVu Serif
  • DejaVu Sans Mono
  • Go Regular
  • Go Mono
  • Fira Sans
  • Segoe UI
  • Comic Sans MS
  • Choco Cooky

Вы также можете импортировать пользовательские шрифты, портированные для iOS.

Скриншоты

DejaVu Sans Condensed | DejaVu Serif | DejaVu Sans Mono | Choco Cooky

Скриншот

Go Regular | Go Mono | Segoe UI | Comic Sans MS

Ещё один скриншот

Hanna Soft + JoyPixels | Bronkoh | Noto Serif SC | Fira Sans

Ещё один скриншот

Автор скриншота: @ev_ynw за портированные шрифты Hanna Soft и Bronkoh, JoyPixels за шрифт эмодзи

Где найти портированные шрифты

  • @ev_ynw
  • @PoomSmart

Известные проблемы

  • Встроенные шрифты портированы некорректно (я не умею портировать шрифты). Для наилучшего результата используйте пользовательский шрифт.
    • со встроенными шрифтами:
    • Только обычный текст использует изменённый шрифт: тонкий/средний/жирный текст вместо этого использует Helvetica.
    • Если шрифт вообще не отображается, отключите «Жирный текст» в настройках доступности.
  • Средства выбора файлов в приложениях не откроются с ошибкой «Something went wrong while displaying documents».
    • Это происходит, если вы заменяете шрифт эмодзи или устанавливаете шрифты с несколькими начертаниями
    • Попробуйте экспериментальное исправление .ttc, используя «Import custom with fix for .ttc»
  • Устройства на iOS 14.x, которые имеют джейлбрейк или были взломаны ранее, не смогут вернуться к исходному шрифту.
    • Обходной путь: не используйте это приложение, если у вас iOS 14.x и вы ранее делали джейлбрейк. Вместо этого просто сделайте джейлбрейк и замените шрифты обычным способом.

Конвертация шрифтов

Проблема CVE-2022-46689, насколько я знаю, позволяет перезаписать только 16383 байта из каждых 16384: последний байт страницы записать нельзя.

(Могу ошибаться)

Чтобы обойти это, я упаковываю шрифт в веб-формат WOFF2, который поддерживается на iOS. WOFF2 использует Brotli для сжатия, что позволяет мне вставлять отступы, чтобы пропустить последний байт.

Подробности см. в repackfonts/make_woff2src.sh: этот скрипт:

  • переименовывает шрифт в .SFUI-Regular с помощью TTX согласно этому ответу
  • пересобирает шрифт в .woff2
  • запускает repackfonts/BrotliPadding.swift для распаковки WOFF2-файла и вставки отступов, чтобы пропустить 16384-й байт

Благодарности

  • Ian Beer из Project Zero за обнаружение CVE-2022-46689.
  • Apple за тестовый пример и патч. (Я ничего не менял: я только обернул тестовый пример в библиотеку.)
  • Все в Twitter, кто помогал и экспериментировал с CVE-2022-46689, особенно @dedbeddedbed, @AppleDry05 и @haxi0sm за исследование возможностей этой проблемы..
  • WOFF2 compressor от Google
  • ttcpad от LIJI32
  • Fontforge stripttc
  • Шрифты DejaVu распространяются в соответствии с их лицензией.
  • Шрифты Go распространяются в соответствии с их лицензией.
  • Шрифт Fira Sans сконвертирован @jonpalmisc — спасибо!
  • Segoe UI и Comic Sans MS являются собственностью Microsoft.
  • Choco Cooky является собственностью Samsung.
  • У меня нет прав на их распространение, но я всё равно их выкладываю, потому что #yolo.
Скачать инструмент