Google устранила опасную RCE-уязвимость Golang в Windows

Google устранила опасную RCE-уязвимость Golang в Windows

Google устранила опасную RCE-уязвимость Golang в Windows

Специалисты Google в этом месяце устранили опасную уязвимость в проекте Golang (многопоточный язык программирования Go). Брешь затронула пользователей Windows, с её помощью можно удалённо выполнить произвольный код.

RCE-уязвимость, получившая идентификатор CVE-2021-3115, существует из-за стандартного поведения Windows при поиске пути. В частности, дыра кроется в команде «go get».

Проблему безопасности обнаружил японский исследователь, известный в Twitter под псевдонимом RyotaK. Как объяснил специалист, баг проявляется в момент, когда пользователь запускает команду «go get» для того, чтобы профетчить репозиторий.

Согласно принципу поиска файлов в Windows, опирающемуся на системную переменную PATH, при использовании, например, команды netstat система будет искать сначала исполняемые файлы netstat.exe, netstat.bat или netstat.* в текущей директории. Если же в ней нет ничего с похожим именем, шелл Windows найдёт системную утилиту netstat, расположение которой можно найти в переменной %PATH%.

Из-за определённых рисков разработчики PowerShell не так давно отказались от такого поведения и начали отдавать приоритет путям в переменной %PATH%, а не текущим недоверенным директориям. На Linux всё это работает несколько иначе.

Однако в случае использования команды «go» Windows отдаст приоритет локальной директории и что более важно — задействует утилиту cgo, предназначенную для генерации пакетов Go, вызывающих код C. Таким образом, в первую очередь поиск компилятора GCC будет производиться в недоверенной локальной директории.

Как объяснил RyotaK, в системах Windows GCC-компилятор допускает запуск вредоносной копии gcc.exe, которую атакующий может подсунуть вместо легитимного компилятора GCC. Именно этот баг, по словам Google, разработчики устранили на этой неделе.

Claude AI помог запустить Bartlett Lake на обычной Z790-плате

У Intel Bartlett Lake появился ещё один неожиданный шанс на жизнь вне встраиваемых систем. Энтузиаст с ником kryptonfly сумел загрузить Windows на процессоре Bartlett Lake с 12 P-ядрами на материнской плате Asus Z790-AYW OC Wi-Fi, несмотря на то что официальной поддержки таких чипов у массовых плат на чипсетах 600-й и 700-й серий нет.

Об этом сообщили Tom’s Hardware и другие профильные издания со ссылкой на обсуждение на Overclock.net. Самое интересное в этой истории даже не сам запуск, а то, как он был достигнут.

Модер правил BIOS, много экспериментировал и использовал Claude AI как помощника в процессе модификации прошивки. Сначала ему удалось добиться только POST, а затем пришлось отдельно бороться с проблемой инициализации памяти, которая не давала системе пройти дальше стартового этапа и загрузить Windows.

Чтобы обойти это ограничение, kryptonfly фактически заставил плату думать, что отдельные компоненты Bartlett Lake относятся к поддерживаемым Raptor Lake 13-го и 14-го поколений. Именно это и помогло протолкнуть систему дальше стартового экрана и довести дело до полноценной загрузки Windows.

До идеала, впрочем, ещё далеко. У сборки остаются проблемы: например, процессор по-прежнему не даёт нормально заходить в BIOS, поэтому для изменения настроек приходится менять CPU. Но даже в таком виде результат считают серьёзным шагом вперёд: раньше речь шла только о POST, а теперь — уже о рабочей загрузке системы. Сам модер уже смотрит в сторону адаптации решения для других LGA 1700-плат, включая версии Asus Apex и Encore.

Интерес к Bartlett Lake понятен. Это довольно странная и потому любопытная линейка Intel: топовые чипы вроде Core 9 273QPE / 273PQE предлагают до 12 производительных ядер без E-ядер, с частотами до 5,9 ГГц. Формально эти процессоры рассчитаны не на обычные домашние десктопы.

RSS: Новости на портале Anti-Malware.ru