В системе управления сетями LMS устранены SQL-инъекция, OS-инъекция и XSS

vulnerability

Разработчики открытой платформы LMS (LAN Management System) выпустили серию обновлений, закрывающих три уязвимости в кодовой базе. Две из них - SQL-инъекция и внедрение команд операционной системы - получили рейтинг 8,6 балла по шкале CVSS 4.0, что относит их к категории высокой опасности. Третья проблема, связанная с межсайтовым скриптингом. Всем администраторам, использующим LMS для управления корпоративными или провайдерскими сетями, рекомендовано как можно скорее применить исправления.

Детали узявимостей

Наиболее серьёзная уязвимость затрагивает модуль "tarifflist.php", отвечающий за работу с тарифными планами. Ошибка кроется в недостаточной санитизации массива значений, передаваемых через POST-параметр "tg[]". Разработчик напрямую склеивает элементы массива с помощью функции "implode()" и подставляет их в SQL-запрос. Это позволяет аутентифицированному злоумышленнику через манипуляции с формой отправки данных выполнять произвольные SQL-операторы (классическая Error-Based SQL-инъекция). В случае успешной эксплуатации появляется возможность извлечения конфиденциальных сведений из базы данных - например, логинов, хэшей паролей, финансовых записей и персональных данных абонентов. Уязвимости присвоен идентификатор CVE-2026-40455, исправление содержится в коммите 4cb30a7.

Вторая проблема связана с внедрением команд операционной системы (CVE-2026-40456). В одном из компонентов платформы параметр, содержащий IP-адрес, передаётся в функцию "exec()" без какой-либо проверки. Атакующий, обладающий учётной записью в системе и возможностью влиять на адрес (например, через POST- или GET-запрос), способен выполнить произвольные команды на сервере. Учитывая, что LMS обычно работает от привилегированного пользователя (из-за необходимости управления сетевыми конфигурациями), последствия могут быть катастрофическими: от полного контроля над хостом до компрометации всей управляемой сети. Патч закреплён в коммите 9fcb4de.

Третья уязвимость (CVE-2026-40457) - отражённый межсайтовый скриптинг (XSS). Она присутствует в двух модулях: "dbrecover.php" и "netremap.php". В них неэкранированные GET-параметры напрямую вставляются в HTML-код страниц без какого-либо обезвреживания. Чтобы атака сработала, необходимо, чтобы аутентифицированный администратор перешёл по специально сформированной ссылке, а в системе должна быть хотя бы одна определённая сеть (что является обычной ситуацией). После клика внедрённый JavaScript-код может быть выполнен в контексте сессии жертвы, что позволит злоумышленнику, например, изменить настройки, создать новых пользователей или перенаправить трафик. Несмотря на низкий балл CVSS из-за высокой сложности атаки (требуется вовлечённость администратора), при целенаправленной фишинговой рассылке уязвимость может быть использована. Исправление включено в коммит 9c5651b.

Система LMS широко применяется интернет-провайдерами и корпоративными администраторами для управления абонентской базой, биллингом, DHCP, DNS и файрволами. Компрометация такой системы может привести не только к утечке персональных данных, но и к нарушению функционирования сети или её блокировке. Высокие оценки по шкале CVSS подчёркивают потенциальную серьёзность последствий, особенно в случае с выполнением команд ОС.

В официальном бюллетене безопасности разработчики отметили, что все три уязвимости были обнаружены в ходе внутреннего аудита кода и не сообщается об их эксплуатации в реальных атаках до выхода патча. Тем не менее администраторам рекомендуется не откладывать обновление. Помимо установки указанных коммитов, в качестве временной меры защиты можно ограничить доступ к веб-интерфейсу LMS по IP-адресам доверенных сетей или разместить систему за VPN-шлюзом, что снизит поверхность атаки. Также стоит проверить настройки веб-сервера на предмет возможного отключения "exec()" через директиву "disable_functions" в PHP, если выполнение внешних команд не критично для работы.

Тенденция к обнаружению SQL-инъекций и OS-инъекций в открытых системах управления сетями сохраняется на протяжении последних лет. В большинстве случаев корень проблемы - отсутствие строгой валидации ввода при работе с унаследованным кодом. Разработчикам LMS стоит рассмотреть внедрение автоматизированного анализа кода с акцентом на некорректное использование функций "exec()", "system()" и конкатенацию запросов. Для пользователей же главным правилом остаётся своевременная установка патчей и ограничение доступа к административным интерфейсам.

Ссылки

Комментарии: 0