Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1182

Уязвимость путаницы типов

Что такое Уязвимость путаницы типов?

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


Уязвимость путаницы типов возникает, когда программа читает или записывает память через указатель или ссылку с задекларированным типом, отличающимся от реального типа объекта. Типичные причины — ошибочные downcast'ы, неверная обработка полиморфизма, спекулятивные оптимизации JIT, предполагающие стабильную форму объекта, которую злоумышленник может изменить. Когда среда выполнения трактует структуру как неверный тип, методы, vtable, поля длины и встроенные данные интерпретируются неправильно, давая атакующему контролируемые примитивы чтения/записи, нередко переходящие в RCE. Часто эксплуатируются движки JavaScript (V8, JSC) и рендереры браузеров, регулярно на Pwn2Own. Защита — сильная система типов, проверки во время выполнения, песочница и языки с безопасной памятью.

Примеры

  1. 01

    CVE-2021-30551: путаница типов в V8, эксплуатация в качестве 0-day против Chrome.

  2. 02

    C++ static_cast вместо dynamic_cast, что позволяет запись в посторонний объект.

Частые вопросы

Что такое Уязвимость путаницы типов?

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

Что означает Уязвимость путаницы типов?

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

Как работает Уязвимость путаницы типов?

Уязвимость путаницы типов возникает, когда программа читает или записывает память через указатель или ссылку с задекларированным типом, отличающимся от реального типа объекта. Типичные причины — ошибочные downcast'ы, неверная обработка полиморфизма, спекулятивные оптимизации JIT, предполагающие стабильную форму объекта, которую злоумышленник может изменить. Когда среда выполнения трактует структуру как неверный тип, методы, vtable, поля длины и встроенные данные интерпретируются неправильно, давая атакующему контролируемые примитивы чтения/записи, нередко переходящие в RCE. Часто эксплуатируются движки JavaScript (V8, JSC) и рендереры браузеров, регулярно на Pwn2Own. Защита — сильная система типов, проверки во время выполнения, песочница и языки с безопасной памятью.

Как защититься от Уязвимость путаницы типов?

Защита от Уязвимость путаницы типов обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия Уязвимость путаницы типов?

Распространённые альтернативные названия: Неверный cast, Ошибка несоответствия типов.

Связанные термины