Unicode переполнение буфера обнаружено в MDAC, которая используется Server
QL-DMO библиотекой. Удаленный атакующий может выполнить произвольный код на
целевой системе. Уязвимость можно эксплуатировать через широковещательные
запросы. 

Одна из особенностей сетевой библиотеки SQL сервера - возможность
запрашивать список SQL серверов в локальной сети. Для этого посылается
широковещательное UDP сообщение к 1434 порту, которое достигнет всех
приложений в локальной сети. Эта функция - компонент SQL-DMO, который
используется SQL Server Service Manager (всякий раз при запуске), Enterprise
Manager (при регистрации сервера), Query Analyzer и SQL (при клике на "..."
клавишу), DTS (при выборе SQL сервера) и т.п. Все SQL серверы, получающие широковещательный запрос, отвечают стандартным
UDP пакетом. Если злонамеренная машина отвечает на этот широковещательный
запрос слишком длинным пакетом, произойдет переполнение буфера. Переполнение
происходит в UNICODE строке, так что для эксплуатации этого переполнения
буфера должен использоваться Venetian метод. Любые утилиты SQL сервера, которые используют SQL-DMO функцию для поиска SQL
серверов, уязвимы к этому нападению. Нападающий может использовать несколько
методов для эксплуатации этой уязвимости: 

Установить службу, слушающую на 1434 UDP порту, которая будет
посылать эксплоит при получении данных. В этом случае злонамеренный сервис
должен находится в той же самой подсети. 

Засыпать удаленную подсеть UDP пакетами, надеясь, что кто-то сделает
уязвимый запрос. Например, посылайте злонамеренные пакеты каждые 2 сек к
192.168.3.255, которые достигнут всех машин на 192.168.3.x подсети. Когда
кто-то наконец пошлет широковещательный UDP пакет, то они примут
злонамеренный пакет и подвергнуться действию эксплоита. 

Также возможно через низко привилегированную учетную запись в MS SQL
сервере послать запрос напрямую к IP адресу на сети. Следующая SQL
инструкция заставит SQL сервер запросить хост с именем SERVER с UDP пакетом: 

SELECT * FROM openrowset( 'SQLOLEDB', 'server=SERVER\instance
name;uid=sa;pwd=', '') 

Могут быть и другие методы заставить SQL сервер посылать UDP запрос и
вызвать переполнение. 

Уязвимость обнаружена в Microsoft Data Access Components 2.5sp1 - 2.7 SP1.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии