Google нашёл 16 уязвимостей в ядре Windows при помощи фаззинга

Google нашёл 16 уязвимостей в ядре Windows при помощи фаззинга

Специалисты Google протестировали компонент ядра Windows и обнаружили в нём шестнадцать опасных уязвимостей. Впоследствии оказалось, что таким образом они, сами того не зная, перебежали дорогу Hacking Team. Хакеры знали об одной из этих уязвимостей и хотели выпустить эксплойт, но не успели.

Все уязвимости скрывались в подсистеме, которая отвечает за визуализацию шрифтов. В большинстве версий Windows она по историческим причинам включена в состав ядра. Это делает её изъяны особенно опасными. Рассказ об охоте на них, которую предпринял Google, опубликован в блоге Project Zero.

В растеризаторах шрифтов всегда полно уязвимостей, и не без причины. Во-первых, они, как правило, написаны на Си или Си++, а сложные программы на этих языках почти всегда подвержены ошибкам из-за переполнения буфера или нарушения безопасности памяти. Во-вторых, шрифты в форматах TrueType и OpenType могут содержать код, исполняемый в специальных виртуальных машинах. Это делает их настоящим кладом для хакеров, передает xakep.ru.

Специалисты Google занимались поиском уязвимостей в растеризаторе Windows с начала 2015 года. Он оказался непростым объектом для изучения. Его исходники, в отличие от исходников FreeType, недоступны, и даже отладочной информации во многих случаях нет. Задача усложняется тем, что код растеризатора исполняется на уровне ядра операционной системы.

В мае 2015 года в Google попробовали подвергнуть этот компонент фаззингу. Так называется метод автоматизированного поиска уязвимостей, при котором тестируемой программе скармливают неверные, неожиданные или случайные данные, а потом смотрят на её реакцию.

Идея оказалась продуктивной. 21 мая в течение одного дня Google выявил одиннадцать уязвимостей в растеризаторе шрифтов Windows. 18 августа тесты указали пару новых уязвимостй, а 22 декабря их список пополнился ещё тремя пунктами.

Десять из шестнадцати уязвимостей объяснялись ошибками, которые ведут к переполнению буфера. Одна уязвимость была связана с переполнением области, занимаемой стеком, а остальные оказались вызваны попытками растеризатора обратиться к неинициализированной или уже освобождённой памяти.

Подавляющее большинство уязвимостей, которые обнаружили специалисты Google, подходило для расширения прав, с которыми исполняется вредоносный код. В некоторых случаях они допускали даже удалённое исполнение кода. Правда, не везде, а лишь в приложениях, которые позволяют графической подсистеме Windows (GDI) работать с непроверенными файлами пользователя.

Пара уязвимостей, которые фаззинг выявил в самом начале тестирования, срабатывала от самых мизерных изменений в файлах с шрифтами. Позже в Google узнали, что их уже отыскали другие хакеры. Одну из уязвимостей обнаружили во время соревнования pwn2own в марте 2015 года, то есть за два месяца до Google. Другая упоминалась в архивах Hacking Team, похищенных в июле 2015 года.

Обо всех найденных дырах компания сообщала в Microsoft, и та не очень быстро, но всё же реагировала на жалобы. Первой была побеждена уязвимость, известная Hacking Team. Это произошло в прошлом июле. А последний пункт из списка Google был закрыт относительно недавно — 12 апреля 2016 года.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

Инфостилер Jarka прожил год на PyPI под видом инструментов интеграции ИИ

Эксперты «Лаборатории Касперского» нашли на PyPI два схожих пакета, якобы реализующих доступ к API популярных ИИ-моделей — GPT-4 Turbo и Claude AI. Анализ показал, что истинной целью в обоих случаях является внедрение зловреда JarkaStealer.

Вредоносные библиотеки gptplus и claudeai-eng были загружены в репозиторий Python-кодов в ноябре прошлого года, притом из-под одного и того же аккаунта. До удаления с подачи Kaspersky их скачали более 1700 раз пользователи из 30 стран (в основном жители США, Китая, Франции, Германии и России).

 

Описания содержали инструкции по созданию чатов для ИИ-ботов и примеры работы с большими языковыми моделями (БЯМ, LLM). Для имитации заявленной функциональности в код был встроен механизм взаимодействия с демопрокси ChatGPT.

При запуске параллельно происходит загрузка с GitHub файла JavaUpdater.jar — инфостилера Jarka. При отсутствии у жертвы софта Java с Dropbox скачивается JRE.

Внедряемый таким образом вредонос умеет выполнять следующие действия в системе:

  • собирать системную информацию;
  • воровать информацию из браузеров;
  • прерывать процессы Google Chrome и Microsoft Edge (чтобы вытащить сохраненные данные);
  • отыскивать сессионные токены в Telegram, Discord, Steam, чит-клиенте Minecraft;
  • делать скриншоты.

Украденные данные архивируются и передаются на C2-сервер. После этого файл с добычей удаляется с зараженного устройства, чтобы скрыть следы вредоносной активности.

Как оказалось, владельцы JarkaStealer продают его в Telegram по модели MaaS (Malware-as-a-Service, «вредонос как услуга»), однако за доступ уже можно не платить: исходники были опубликованы на GitHub. В рекламных сообщениях и коде зловреда обнаружены артефакты, позволяющие заключить, что автор стилера владеет русским языком.

«Обнаруженная кампания подчёркивает постоянные риски, связанные с атаками на цепочки поставок, — отметил эксперт Kaspersky GReAT Леонид Безвершенко. — При интеграции компонентов с открытым исходным кодом в процессе разработки критически важно проявлять осторожность. Мы рекомендуем организациям внедрять строгую проверку целостности кода на всех этапах разработки, чтобы убедиться в легитимности и безопасности внешнего программного обеспечения или внешних компонентов».

Тем, кто успел скачать gptplus или claudeai-eng, рекомендуется как можно скорее удалить пакет, а также обновить все пароли и сессионные токены.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

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