Уязвимости в APC Smart-UPS, позволяющие удалённо управлять устройством

Исследователи безопасности из компании Armis раскрыли данные о трёх уязвимостях в управляемых источниках бесперебойного питания APC, позволяющих удалённо получить контроль над устройством и манипулировать его работой, например отключить питание для определённых портов или использовать в качестве плацдарма для совершения атак на другие системы. Уязвимости получили кодовое имя TLStorm и затрагивают устройства APC Smart-UPS (серии SCL, SMX, SRT) и SmartConnect (серии SMT, SMTL, SCL и SMX).

Две уязвимости вызваны ошибками в реализации протокола TLS в устройствах, управляемых через централизованный облачный сервис компании Schneider Electric. Устройства серии SmartConnect при запуске или потере соединения автоматически подключаются к централизованному облачному сервису и атакующий без аутентификации может эксплуатировать уязвимости и получить полный контроль над устройством через отправку на UPS специально оформленных пакетов.

  • CVE-2022-22805 – переполнение буфера в коде пересборки пакетов, эксплуатируемое при обработке поступающих соединений. Проблема вызвана копированием данных в буфер в процессе обработки фрагментированных TLS-записей. Эксплуатации уязвимости способствует некорректная обработка ошибок при использовании библиотеки Mocana nanoSSL – после возвращения ошибки соединение не закрывалось.
  • CVE-2022-22806 – обход аутентификации при установке TLS-сеанса, вызванный ошибкой определения состояния при согласовании соединения. Кэширование неинициализированного нулевого TLS-ключа и игнорирование кода ошибки, возвращаемого библиотекой Mocana nanoSSL при поступлении пакета с пустым ключом, позволяло притвориться сервером Schneider Electric без прохождения стадии обмена и проверки ключей.

Третья уязвимость (CVE-2022-0715) связана с некорректной реализацией проверки загружаемых для обновления прошивок и позволяет атакующему установить модифицированную прошивку без проверки цифровой подписи (оказалось, что у прошивок вообще не проверяется цифровая подпись, а лишь используется симметричное шифрование предопределённым в прошивке ключом).

В сочетании с уязвимостью CVE-2022-22805 атакующий может заменить прошивку удалённо, выдав себя за облачный сервис компании Schneider Electric, или инициировав обновление из локальной сети. Получив доступ к UPS атакующий может разместить на устройстве бэкдор или вредоносный код, а также совершить диверсию и отключить питание для важных потребителей, например, обесточить системы видеонаблюдения в банках или приборы жизнеобеспечения в больницах.


Компания Schneider Electric подготовила патчи для устранения проблем, а также готовит обновление прошивки. Для снижения риска компрометации дополнительно рекомендуется изменить пароль по умолчанию (“apc”) на устройствах с картой NMC (Network Management Card) и установить заверенный цифровой подписью SSL-сертификат, а также ограничить доступ к UPS на межсетевом экране только для адресов Schneider Electric Cloud.

Release. Ссылка here.