[Перевод] Эксплойтинг браузера Chrome, часть 3: анализ и эксплойт уязвимости CVE-2018-17463
Это третья и последняя часть серии статьей про эксплойтинг браузера Chrome. Основная задача этой серии заключалась в том, чтобы познакомить читателя с внутренним устройством браузера и погрузиться в тему эксплойтинга Chrome в Windows.
В первой части мы изучили внутреннюю работу JavaScript и V8. В том числе изучили объекты map и shape, а также рассмотрели методики оптимизации памяти, например, маркировку указателей и сжатие указателей.
Во второй части мы более глубоко исследовали конвейер компилятора V8. Изучили предназначение Ignition, Sparkplug и TurboFan в конвейере и рассмотрели такие темы, как байт-код V8, компиляция и оптимизация кода.
В этой части сосредоточимся на анализе и эксплойтинге уязвимости JIT-компилятора в TurboFan CVE-2018-17463. Эта уязвимость возникла из-за ненадлежащего моделирования побочных эффектов операции JSCreateObject на этапе понижающей оптимизации. Прежде чем мы приступим к эксплойтингу этого бага, нужно изучить фундаментальные примитивы эксплойтинга браузеров, такие как addrOf и fakeObj, а также узнать, как можно использовать этот баг для эксплойтинга type confusion.
Читать дальше →
В первой части мы изучили внутреннюю работу JavaScript и V8. В том числе изучили объекты map и shape, а также рассмотрели методики оптимизации памяти, например, маркировку указателей и сжатие указателей.
Во второй части мы более глубоко исследовали конвейер компилятора V8. Изучили предназначение Ignition, Sparkplug и TurboFan в конвейере и рассмотрели такие темы, как байт-код V8, компиляция и оптимизация кода.
В этой части сосредоточимся на анализе и эксплойтинге уязвимости JIT-компилятора в TurboFan CVE-2018-17463. Эта уязвимость возникла из-за ненадлежащего моделирования побочных эффектов операции JSCreateObject на этапе понижающей оптимизации. Прежде чем мы приступим к эксплойтингу этого бага, нужно изучить фундаментальные примитивы эксплойтинга браузеров, такие как addrOf и fakeObj, а также узнать, как можно использовать этот баг для эксплойтинга type confusion.
Читать дальше →
Источник: Хабрахабр
Похожие новости
- Пентест на автопилоте: что доверить роботам, а что — нет?
- Ботнеты растут, стратегия DDoS — меняется? Аналитический отчет за первое полугодие 2025
- VI Форум «Мой бизнес» в Архангельске: предприниматели, эксперты и представители власти обсудят рост в новых условиях
- Утечка хендлов в IP Helper API: как мы нашли и обошли ещё один баг Windows
- Тайна замочной скважины — зачем ПК запирали на ключ
- [Перевод] Как ИБ-специалисты могут превратить шумиху в новые возможности
- Как настроить работу с ПД на сайте клиники: база и тонкости
- Политики безопасности k8s gatekeeper OPA. Интеграция с GO
- Почему фаундер — лучший маркетолог: история провалов и роста B2B-продукта
- От раздражения к лояльности: как UX влияет на бизнес-показатели