
CVE-2020-8809 и CVE-2020-8810
Gurux GXDLMS Director — это программа с открытым исходным кодом для Windows, предназначенная для взаимодействия со счётчиками электроэнергии по протоколу DLMS/COSEM.
Программное обеспечение имеет функцию удалённого обновления для дополнительных DLL-модулей, а также для файлов, содержащих OBIS-коды (определения, специфичные для устройств, необходимые для взаимодействия со смарт-счётчиками).
| CVEID | Название затронутых продуктов и версии | Тип проблемы |
|---|---|---|
| CVE-2020-8809 | Gurux GXDLMS Director (все версии до 8.5.1905.1301) | CWE-494: Загрузка кода без проверки целостности |
| CVE-2020-8810 | Gurux GXDLMS Director (все версии) | CWE-23: Относительный обход пути |
Сводка
Все версии Gurux GXDLMS Director до 8.5.1905.1301 содержат механизм обновления дополнительных модулей и OBIS-кодов, который работает по незашифрованному HTTP-соединению. Кроме того, все версии содержат ошибку обхода пути, возникающую при загрузке OBIS-кодов. Эти уязвимости могут быть использованы злоумышленником для выполнения кода.
Описание
Злоумышленник, использующий атаку «человек посередине» (например, оператор вредоносной Wi-Fi-сети), может предложить пользователю загрузить обновления, изменив содержимое gurux.fi/obis/files.xml и gurux.fi/updates/updates.xml. Затем злоумышленник может изменить содержимое загруженных файлов. В случае дополнительных модулей (если пользователь их использует) это приведёт к выполнению кода. В случае OBIS-кодов (которые пользователь использует всегда, поскольку они необходимы для взаимодействия со счётчиками электроэнергии) злоумышленник может добиться выполнения кода, используя уязвимость обхода пути.
При загрузке OBIS-кодов программа не проверяет, являются ли загруженные файлы действительными OBIS-кодами, и не проверяет обход пути. Это позволяет злоумышленнику отправлять исполняемые файлы и размещать их в каталоге автозапуска (запускаются после перезагрузки) или размещать DLL-файлы внутри существующей установки GXDLMS Director (запускаются при следующем запуске GXDLMS Director). Это можно использовать для достижения выполнения кода, даже если у пользователя не установлено ни одного дополнительного модуля.
Воспроизведение
obis.obis/files.xml со следующим содержимым:<files>
<file modified=”28-09-2099″ name=”Iskraemeco”>../../../../../../../../../../Users/Public/Documents/test.txt</file>
</files>
Users/Public/Documents.Users/Public/Documents/test.txt.C:\Windows\system32\drivers\etc\hosts и добавьте в него следующую строку: 127.0.0.1 gurux.fi (если ваш HTTP-сервер находится не на той же машине с Windows, замените 127.0.0.1 на IP-адрес сервера).C:\Users\Public\Documents\ теперь содержит файл test.txt.Устранение
Обновите Gurux GXDLMS Director до последней версии.