Обновление ряда модулей в продуктах Dr.Web версии 5.0 - Общий форум по информационной безопасности - Форумы Anti-Malware.ru Перейти к содержанию
vaber

Обновление ряда модулей в продуктах Dr.Web версии 5.0

Recommended Posts

vaber

Не так давно компания DrWeb выпустила фиксы, устраняющие уязвимости в компонентах их продукта.

http://news.drweb.com/show/?i=389&c=5

От себя хочу добавить информацию об исправленных уязвимостях.

Первая бага заключалась в неправильном использовании функции CreateProcess (а именно в передаваемых первых двух параметрах) в компоненте обновления антивирусного продукта.

Это ошибка, в теории, могла бы позволить запустить стороннее приложение модулем обновления антивируса с наследованием прав. При этом в MSDN в графе Security Remarks приведен пример такого опасного использования функции.

Следующая уязвимость оказалась в трех компонентах антивирусного комплекса. Она заключается в том, что компоненты антивируса пытаются загрузить в память функцией LoadLibrary несуществующую библиотеку drwipc.dll без указания полного пути к DLL. Это позволяло разместить в соответствии с search order вредоносный код, который будет загружен самим антивирусным продуктом в память и будет работать из контекста процессов антивируса. Это позволило бы вредоносному коду работать с файлами, ключами, процессами антивируса несмотря на самозащиту последнего.

При этом хочу отметить высокую скорость ответа на vulnerability notification (ответ был получен в день уведомления) и скорость исправления уязвимостей. Так первое уведомление было получено ими 17.06, второе - 30.06. 02.07 исправления стали доступны пользователям. За что им спасибо (правда мое сообщение на офф.форуме с благодарностью за адекватную и качественную реакцию на vulnerability notification было удалено с пометкой "флейм" одним ярым поклонником антивируса Касперского =))

P.S.

Порядок поиска DLL:

1. Директория, в которой расположено приложение

2. system-диретория (%systemroot%\system32)

3. 16-bit system-диреткория (%systemroot%\system)

4. windows-директория (%systemroot%)

5. Рабочая директория

6. переменная окружения %PATH%

P.S.S.

Уязвимость в модуле почтового антивируса была обнаружена нашим форумчанином K_Mikhail сразу же после vulnerability notification, где была указана уязвимость только в сканере (drweb32w.exe).

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
priv8v
Первая бага заключалась в неправильном использовании функции CreateProcess (а именно в передаваемых первых двух параметрах) в компоненте обновления антивирусного продукта.

Можно подробнее?..

Т.е нечто подобное было?:

LPTSTR szCmdline = _tcsdup(TEXT("C:\\Program Files\\MyApp -L -S"));CreateProcess(NULL, szCmdline, /* ... */);

Гм.. Ну, дают...

Порядок поиска DLL:

Не ожидал от Др.Веба такого...

Ведь это "мега-боян". К ослу давно так частенько либы пристраивались...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vaber
Можно подробнее?..

В MSDN все есть ;). Даже с примером.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
priv8v
В MSDN все есть wink.gif. Даже с примером.

Я знаю. Просто я не поверил, что у них именно такая ошибка. (все-таки про кавычки говорится везде)

Кстати, и еще:

несуществующую библиотеку drwipc.dll без указания полного пути к DLL

Даже если бы был указан полный путь, то все равно эффект был бы тот же - ведь либа не существует и ничто бы не мешало ее положить по тому адресу.

PS: а кто нашел все эти уязвимости и как?..

После долгого просмотра под отладчиком ?))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vaber
Даже если бы был указан полный путь, то все равно эффект был бы тот же - ведь либа не существует и ничто бы не мешало ее положить по тому адресу.

Не совсем так. Если путь указывал бы на директорию защищаемою драйвером самозащиты, то туда поместить свою DLL не удалось бы.

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

PS: а кто нашел все эти уязвимости и как?

А ты смекни :)))

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sww
А ты смекни :)))

Ах вы красные поросята :lol:

P.S. А баги реально ламерские и вполне юзабельны.

За что им спасибо (правда мое сообщение на офф.форуме с благодарностью за адекватную и качественную реакцию на vulnerability notification было удалено с пометкой "флейм" одним ярым поклонником антивируса Касперского =))

Так то правильный форум для правильных "пасанов с меготехнологиями".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • demkd
      Да есть такой баг, выбор целого диска не предусмотрел.
    • PR55.RP55
      Сейчас попробовал добавить файлы и... E:\ [Error: 0x3 - The system cannot find the path specified. ] т.е. Файл > Добавить в список >  Все исполняемые файлы каталога. или пишет вышеуказанную ошибку или вешается. Это и на Win 7 и на Win 10 и с HDD дисками и с USB Диски нормально открываются т.е. доступны.
    • demkd
      А ничего с этим не сделать старые версии windows проблемные там система сама балуется внедрением потоков при очень низком уровне защиты системных процессов, а эцп вообще ничего не гарантирует когда речь заходит о внедренных потоках, зловред вполне может внедрить поток в системный процесс как с помощью подкинутой в правильное место "легитимной" dll, так и просто создав его, а тот уже в свою очередь внедрить в следующий системный и ищи концы среди вот этого вот всего.
      Все это усугубляется тем что тот же SVCHOST.EXE который был когда запущен может оказаться совсем не системным, хотя путь у него будет правильным как и файл будет иметь валидную эцп и запущен он будет якобы services.exe, в 10ке такое провернуть уже сложнее, а вот 7ке легко, потому урезать лог по принципу "оба файла имеют эцп" никак нельзя.
    • PR55.RP55
      uVS v5.0.6v x64 [http://dsrt.dyndns.org:8888]: Windows 7 Home Basic x64 (NT v6.1 SP1) build 7601 Service Pack 1 [C:\WINDOWS] (!) ПРЕДУПРЕЖДЕНИЕ: Ф зафиксировал внедрение потока C:\WINDOWS\SYSTEM32\SERVICES.EXE [428] внедрил поток [380] в процесс: C:\WINDOWS\SYSTEM32\SVCHOST.EXE [876]   C:\WINDOWS\SYSTEM32\SVCHOST.EXE [1060] внедрил поток [1276] в процесс: C:\WINDOWS\SYSTEM32\SVCHOST.EXE [336] и т.д.  А есть ли смысл выводить в лог десяток - другой аналогичных записей, если все эти файлы  в базе проверенных и у них легальная цифровая?  
    • demkd
      ---------------------------------------------------------
       5.0.6
      ---------------------------------------------------------
       o Добавлено 4 новых ключа автозапуска в список для проверки.

       o Добавлен новый статус "UWP".
         Его получают пакеты приложений универсальной платформы Windows (Universal Windows Platform Apps).

       o Добавлен новый твик #46: Отключить Windows Terminal и очистить реестр.
         Если Windows Terminal активен, в лог выдается предупреждение.
         При обнаружении подозрительных настроек Windows Terminal в конфигурационных файлах, реестре или в каталогах с фрагментами в лог выводится предупреждение.
         Если подозрительная строка найдена в JSON-файле настроек, то в список автозапуска добавляется этот файл с содержимым со статусом "подозрительный".
         В любом случае рекомендуется отключить Windows Terminal, а еще лучше немедленно удалить это из системы.
         Windows Terminal — крайне уязвимый и неоптимизированный кусок кода.

       o Улучшена функция масштабирования удаленного рабочего стола, повышено качество аппаратного апскейла, добавлен параметр "Резкость".
         (Требуется D2D и DX11 на клиентском компьютере)

       o Исправлена старая ошибка в функции отправки ответов серверной части uVS.
         Из-за ошибки в редких случаях могло происходить подвисание серверной и клиентской частей uVS при работе с удаленной системой.

       o Исправлена ошибка в функции завершения серверной части при выходе из удаленной системы.

       o Оптимизирована функция подключения к удаленной системе.

       o Оптимизирована функция сжатия фреймов для DDAL/DDAw режимов: шрифты теперь не теряют яркость, а картинка DDAL практически неотличима от DDA1/DDA2 на глаз, 
         при этом размер сжатого фрейма вырос лишь незначительно.

       o Добавлена x64 версия report_crash.

       o Обновалена функция сбора дампа при падении uVS, функция перенесена в утилиту report_crash, что позволит
         получить максимально точную информацию о произошедшей ошибке.

       o Временно добавлена аппаратная функция обнаружения разрушения списка автозапуска в памяти uVS, что позволит отлавливать сложные в обнаружении ошибки.
         Есть 5 дампов, по которым не удалось выяснить точное место ошибки и эта функция должна помочь найти проблемное место.
         Функция снижает скорость формирования списка на ~5% на современных процессорах.

       o Исправлена ошибка в функции подсчета удаленных ключей реестра.

       o Исправлена ошибка в функции записи параметров при выходе из uVS.

       o Исправлена ошибка разбора JSON-файлов.

       o Исправлена ошибка проверки переменных окружения загруженного пользователя.

       o Из списка доступных для подключения IP-адресов удалены адреса активных VPN.

       
×