CVE-2020-0674
CVE-2020-0674 — это уязвимость use-after-free в устаревшем движке jscript. Она может быть вызвана в Internet Explorer. Эксплойт написан maxpl0it, но сама уязвимость была обнаружена Qihoo 360 при атаках в реальных условиях. Данный эксплойт просто открывает калькулятор.
Подробное описание эксплойта можно найти здесь.
Обзор уязвимости
- Уязвимость существует в функции
sort массива при использовании функции сравнения.
- Два переданных аргумента для функции сравнения не отслеживаются сборщиком мусора и поэтому будут указывать на освобождённую память после вызова GC.
Примечания к эксплойту
- Эксплойт был написан специально для Windows 7, но, вероятно, его можно перенести без особых проблем.
- Этот эксплойт написан для x64-версий IE, поэтому он будет работать (и был протестирован) на следующих конфигурациях браузера:
- IE 8 (x64 сборка)
- IE 9 (x64 сборка)
- IE 10 (с включенным расширенным защищённым режимом или включенным TabProcGrowth)
- IE 11 (с включенным расширенным защищённым режимом или включенным TabProcGrowth)
- Стоит отметить, что расширенный защищённый режим в Windows 7 просто включает x64-версию процесса браузера, так что это не обход изолированной среды, а скорее отсутствие дополнительной изоляции. По иронии судьбы, поскольку этот эксплойт предназначен для x64, EPM фактически позволяет ему работать.
- Эксплойт не предназначен для полного обхода EMET (реализован только обход обнаружения изменения стека), однако финальная версия (5.52), похоже, не вызывает срабатывание EAF+ при запуске эксплойта, в то время как версия 5.5 вызывает (по крайней мере, на Windows 7 x64). Таким образом, IE 11 в расширенном защищённом режиме с максимальными настройками EMET позволяет использовать эксплойт.
- Эксплойт содержит много комментариев, но для лучшего понимания того, как он работает и что делает на каждом этапе, измените
var debug = false; на var debug = true; и либо откройте консоль разработчика для просмотра лога, либо оставьте её закрытой и смотрите всплывающие окна alert (что может быть немного раздражающим).