Ошибка в функции Verify() языка программирования Go позволяет удаленному злоумышленнику получить доступ к защищаемой информации, минуя процедуру авторизации. Уязвимость подтверждена производителем и затрагивает не только сам язык, но и операционную систему РЕД ОС 8.0, в состав которой входит уязвимый компонент. Разработчики уже выпустили исправления.
Детали уязвимости
Суть проблемы связана с ошибками в процедуре авторизации, которую выполняет функция Verify(). Эта функция предназначена для проверки подлинности данных или субъекта, обращающегося к системе. Из-за ошибки архитектуры проверка может быть выполнена некорректно или вовсе пропущена. В результате нарушитель, действующий удаленно, может обойти ограничения и получить несанкционированный доступ к защищаемой информации. Тип ошибки соответствует CWE-862 - отсутствие авторизации.
Уязвимости присвоен идентификатор CVE-2026-39831, а также номер BDU:2026-11948 в Банке данных угроз безопасности информации. По шкале CVSS 2.0 уязвимость получила базовую оценку 9,4 балла, что соответствует высокому уровню опасности. По более современной методологии CVSS 3.1 оценка составляет 9,1 балла - это уже критический уровень. Вектор атаки сетевой, для эксплуатации не требуется наличие учетных данных или взаимодействие с пользователем. При этом атака не нарушает доступность системы, но полностью компрометирует конфиденциальность и целостность данных.
Уязвимость воспроизводится в версиях Go до 0.52.0, а также в операционной системе РЕД ОС версии 8.0. Эта ОС включена в единый реестр российских программ, поэтому она широко применяется в государственных учреждениях, на предприятиях критической инфраструктуры и в коммерческих организациях. Потенциальная эксплуатация ошибки может привести к утечке конфиденциальной информации, включая персональные данные и служебную документацию. Кроме того, нарушитель может не только прочитать защищаемые сведения, но и изменить их, поскольку страдает целостность данных.
Атака может быть реализована путем отправки специально сформированного сетевого запроса к уязвимому сервису. Эксплуатация не требует наличия учетной записи или выполнения каких-либо действий со стороны легитимного пользователя. Это делает уязвимость привлекательной для массовых автоматизированных атак. Наличие эксплойта на данный момент уточняется, однако производитель уже подтвердил проблему и опубликовал рекомендации по устранению.
Разработчики Go выпустили обновление, которое закрывает ошибку в функции Verify(). Для пользователей РЕД ОС исправление доступно через официальный репозиторий компании "Ред Софт". Администраторам рекомендуется обновить Go до версии 0.52.0 или более поздней, а для РЕД ОС - установить последние обновления из репозитория. Ссылки на бюллетени и инструкции приведены в официальных источниках: уведомление GO-2026-5019 в системе безопасности Go, информация о CVE-2026-39831, а также страница поддержки безопасности "Ред Софт".
Важно отметить, что уязвимость относится к классу архитектурных. Это означает, что проблема связана не с конкретной реализацией функции, а с общим подходом к проверке авторизации. Подобные ошибки сложнее обнаружить и исправить, так как они могут затрагивать множество сценариев использования. В данном случае разработчики оперативно отреагировали и предоставили исправление, что снижает риск длительного периода незакрытой бреши.
Помимо РЕД ОС, уязвимость может затрагивать и другие дистрибутивы и продукты, использующие уязвимую версию Go. Однако в бюллетене BDU указана именно эта операционная система, что подчеркивает актуальность проблемы для российского рынка. Язык Go применяется в качестве основы для множества приложений, включая сетевые сервисы и облачные платформы. Ошибки в подобных компонентах могут иметь каскадный эффект, распространяясь на все зависимое программное обеспечение.
Своевременное обновление зависимостей остается одной из ключевых мер предотвращения атак, направленных на такие уязвимости. В данном случае исправление уже выпущено, и пользователям рекомендуется установить его в кратчайшие сроки. Также в качестве временной меры до установки обновления можно ограничить сетевой доступ к сервисам, использующим уязвимую версию Go, и усилить журналирование попыток доступа. Это позволит снизить риск эксплуатации, особенно в инфраструктурах, где обновление невозможно выполнить немедленно.
Уязвимость в функции Verify() затрагивает базовые механизмы проверки подлинности, что делает ее особенно опасной для систем, полагающихся на криптографические проверки. Подобные ошибки в языках программирования, лежащих в основе многих решений, обращают внимание на важность контроля версий используемых компонентов. Оперативное исправление со стороны производителей позволяет ограничить потенциальный ущерб, но окончательная безопасность зависит от действий администраторов и разработчиков, которые должны своевременно применять обновления.
Ссылки
- https://bdu.fstec.ru/vul/2026-11948
- https://www.cve.org/CVERecord?id=CVE-2026-19650
- https://pkg.go.dev/vuln/GO-2026-5019
- https://groups.google.com/g/golang-announce/c/a082jnz-LvI
- https://github.com/golang/go/issues/79566
- https://go-review.googlesource.com/c/crypto/+/781662
- https://redos.red-soft.ru/support/secure/