Компания Microsoft восстановила в каталоге Visual Studio Marketplace дополнения к редактору кода VSCode – “Material Theme” и “Material Theme Icons“, насчитывающие 3.9 и 5.4 миллионов установок, а также сняла блокировку с учётной записи разработчика. Две недели назад данные дополнения были удалены в связи с выявлением вредоносного кода. В итоге оказалось, что имело место ложное срабатывание при проверке и дополнения были удалены по ошибке.
Представители Microsoft принесли извинения пострадавшим разработчикам и признались, что поторопились, пытаясь оперативно защитить пользователей от возможной угрозы, положившись на срабатывание нескольких детекторов вредоносного ПО в коде. Для снижения вероятности подобных инцидентов в будущем компания Microsoft
разъяснят свою политику в отношении обфусцированного кода, а также обновит системы сканирования и процесс расследования.
Дополнения заподозрили в распространении вредоносного кода из-за наличия обфусцированных вставок, на которые обратили внимание сотрудники компании
компания ExtensionTotal, разработавшая AI-инструменты для сканирования вредоносных дополнений к VSCode. В Microsoft была направлена жалоба с подозрениями на использование обфусцированных вставок для скрытия вредоносного кода.
Например, в файле release-notes.js выявлены обфусцированный исполняемый код, в то время как темы должны включать лишь статические JSON-файлы. Частичное раскодирование обфусцированных блоков также показало наличие имён пользователей и паролей. Исследователи безопасности из Microsoft подтвердили опасения, после чего дополнения были удалены, а учётная запись автора заблокирована.
Автор дополнений сразу после блокировки опубликовал возражение против действий Microsoft и заявил, что его проектах нет вредоносного кода, а наличие обфусцирования не является поводом для удаления. Единственной проблемой было то, что в обфусцированный блок попал код клиента из SDK sanity.io, в котором имелись строки, упоминающие логины и пароли в клиенте аутентификации. Данный код попал в состав дополнения по недосмотру из-за старого сборочного скрипта, применявшегося для генерации файлов в формате JSON после загрузки SVG-пиктограмм из закрытого репозитория.
По словам автора дополнений, если бы Microsoft сообщала ему о проблеме, он устранил бы её в считанные секунды, но вместо этого компания без предупреждений и уведомлений заблокировала дополнения и учётную запись. На то чтобы добиться восстановления ошибочно удалённых дополнений потребовалось две недели.