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

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

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

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

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

Категории

Все категории
Loading categories
Trespasser — CVE-2026-74970 · Обход изоляции сайтов Fission в Firefox WebRender | Kitploit
Инструменты/GitHubGitHub/defineid/trespasser
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасность
GitHubdefineid/trespasser

Trespasser

CVE-2026-74970 · Обход изоляции сайтов Fission в Firefox WebRender

Репозиторий
2 дней назадЕщё не проверено

Популярное

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

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

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

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

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

Trespasser

CVE-2026-74970 · Обход изоляции сайтов Fission в Firefox WebRender

Серьёзность: умеренная (sec moderate). CWE 862 и CWE 284. Исправлено в Firefox 154 и ESR 153.1. Bugzilla 2056558.

Краткое описание

При Fission каждый контентный процесс владеет пространством имён PipelineId — это старшие 32 бита wr::PipelineId. WebRenderBridgeParent::AddPipelineIdForCompositable выполняется в GPU-процессе. Он проверял защиту корневого пайплайна и принадлежность к собственному набору, но никогда не проверял, что пространство имён PipelineId принадлежит отправляющему процессу. Пути ключей изображений, шрифтов и blob-объектов в том же файле уже выполняют такую проверку. Скомпрометированный контентный процесс может зарегистрировать PipelineId в пространстве имён другого процесса и перезаписать асинхронный пайплайн изображений этого origin в общем менеджере.

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

Проверка MatchesNamespace, которую выполняют пути ключей ресурсов, отсутствует в пути PipelineId и в RemovePipelineIdForCompositable. AddAsyncImagePipeline защищает уникальность только с помощью MOZ_ASSERT. В релизных сборках это no-op. Поэтому общий AsyncImagePipelineManager молча перезаписывает пайплайн жертвы вместо отклонения дубликата.

Атака

Скомпрометированный контентный процесс перехватывает пайплайн другого origin

Воспроизведение

Модель угрозы — скомпрометированный контентный процесс. PoC — это патч на стороне контента, защищённый XRE_IsContentProcess. Он подделывает пространство имён PipelineId. В комплекте идёт тестовая страница с WebGL-канвасом и кросс-оригинным внепроцессным iframe.

root@kitploit:~
apply poc.patch to mozilla-central and build
MOZ_POC_FORGE_WR_NAMESPACE=999999 ./mach run --temp-profile poc.html

Наблюдается в релизной сборке.

root@kitploit:~
[POC-2056558] ACCEPTED cross-namespace PipelineId: sender-namespace=4 pipeline-namespace=999999 (should have been rejected)

Воздействие

Кросс-оригинная путаница рендеринга и отказ в обслуживании между вкладками. Это обход авторизации изоляции сайтов Fission. Это не повреждение памяти. Потребители ниже по цепочке защищены проверками на null и используют подсчёт ссылок, поэтому это не приводит к выполнению кода.

Исправление

Добавьте ту же проверку владения пространством имён, которую используют пути ключей ресурсов.

root@kitploit:~
if (!MatchesNamespace(aPipelineId)) {
  return IPC_FAIL(this, "PipelineId namespace does not belong to the sending process");
}

Автор

Abdulaziz Alasaiqah · https://azoz.my/writeups.html

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