CVE-2021-38406
Delta Electronics DOPSoft 2
2022-08-25
Delta Electronics DOPSoft 2 lacks proper validation of user-supplied data when parsing specific project files (improper input validation) resulting in an out-of-bounds write that allows for code execution.
Технический анализ и план устранения
Суть уязвимости
CVE-2021-38406 представляет собой критическую уязвимость типа Out-of-bounds Write (запись за пределами границ буфера) в программном обеспечении Delta Electronics DOPSoft версии 2.00.07 и ниже.
Проблема возникает из-за отсутствия надлежащей проверки входных данных при парсинге специально сформированных файлов проектов (формат .dps). Злоумышленник может создать вредоносный файл, который при открытии пользователем вызывает переполнение буфера в памяти процесса. Это позволяет атакующему выполнить произвольный код (RCE) в контексте текущего пользователя, что может привести к полному компрометации рабочей станции инженера или оператора HMI.
Как исправить
Единственным надежным способом устранения данной уязвимости является обновление программного обеспечения до актуальной версии, в которой исправлены механизмы валидации файлов проектов.
- Удалите уязвимую версию DOPSoft 2.00.07 или более раннюю через панель управления.
- Скачайте актуальную версию ПО с официального сайта Delta Electronics (раздел Download Center).
- Установите версию DOPSoft 4.00.11 или выше (в зависимости от совместимости с вашим оборудованием), так как поддержка второй ветки ПО ограничена. Если требуется именно вторая ветка, убедитесь, что установлен последний доступный патч от производителя.
Для проверки текущей версии в Windows можно использовать команду:
Get-ItemProperty "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" | Where-Object { $_.DisplayName -like "*DOPSoft*" } | Select-Object DisplayName, DisplayVersion
Временные меры
Если немедленное обновление невозможно, необходимо внедрить компенсирующие меры контроля для снижения риска эксплуатации:
- Применяйте принцип наименьших привилегий: запускайте DOPSoft под учетной записью пользователя, а не администратора.
- Запретите открытие файлов проектов (.dps, .dp2), полученных из недоверенных источников (внешняя почта, мессенджеры, неизвестные USB-носители).
- Изолируйте инженерные рабочие станции, на которых установлено данное ПО, от прямого доступа в интернет.
- Настройте правила в системе обнаружения вторжений (IDS/IPS) или антивирусном ПО (EDR) для мониторинга подозрительной активности процесса DOPSoft.exe.
- Используйте песочницу (Sandbox) для предварительного анализа подозрительных файлов проектов.
Для блокировки запуска приложения неавторизованными пользователями можно использовать AppLocker или политики ограниченного использования программ (SRP). Пример команды для проверки прав доступа к директории приложения:
icacls "C:\Program Files (x86)\Delta Industrial Automation\DOPSoft 2.0"