Comments 12
Лучше расскажите про полное отсутствие аудита в их unity hub, что по сути позволило выполнять произвольный код на всех машинах пользователей, став одним из самых крупных ботнетов.
https://forum.unity.com/threads/unity-hub-3-1-release-overview.1253823/
А что там рассказывать? Нужно уметь искать бэкдоры, а это очень сложно, можно только предполагать по наличию в репозитории энтропии, base64, минификации, обфускации, обращение к другим процессам, запуск сомнительных команд, наличии подозрительных url и хостов. Функционал поиска бэкдоров есть у единиц софтин. Скорее поведенческий анализ эффективен, а не статический.
а как решить подобную проблему? Ну понятно что можно писать все свое и с нуля - осталось еще свою ось написать, чтобы уж точно безопасно.
Изучать каждую строчку из 10500 зависимостей? Это хоть кто-то физически может сделать? Вот прям с каждым коммитом? Особенно если JS код обфусцируется, и это является нормальной (и даже хорошей) практикой оптимизации?
Можно провести аудит своего кода. Можно провести аудит первого уровня зависимостей с которыми работаешь напрямую... Но как проводить аудит зависимостей зависимостей зависимости? Ладно, можно запустить в песочнице и посмотреть что будет... А если оно с отложенной атакой или таргетировано (как тут и было)?
По факту такому риску подтверждены все кто использует языки тянущие сторонние библиотеки на любой чих - раст, питон, шарп, js и т.д.
Примеры со всякими color.js показали что никто не защищен.
Коллеги, что насчет поиска уязвимостей в каком-то опенсорс решении по безопасности, например, в защите Kubernetes?
Хотел попробовать проанализировать проект прямо в Unity (c#), но похоже так прям нельзя)
Я правильно понимаю, что нужно перекинуть все исходники в студию и уже там анализировать?
Да, вам потребуется открыть проект через Unity Hub -> Assets -> Open C# Project. У вас откроется IDE, заданная в настройках редактора Unity.
Например, в Visual Studio 2022 можно использовать пункт меню: Extensions -> PVS-Studio -> Check -> Solution. Также можно проверить только текущий открытый файл.
Исходя из документации, Unity поддерживает следующие среды разработки:
· Visual Studio
· Visual Studio Code
· JetBrains Rider
Для Visual Studio и Rider у PVS-Studio имеется плагин, где вы можете запустить анализ и ознакомиться с его результатами. Из VS Code нельзя напрямую запустить анализ, но можно просматривать отчёт с помощь плагина Sarif Viewer.
В Unity Hub нет такой опции, только открытие проекта в самой Unity.
Можно конкретнее про Unity Hub -> Assets -> Open C# Project
А, все, понял... вот так надо сначала сделать https://answers.unity.com/questions/513720/unity-not-opening-solution-in-visual-studio-only-f.html
Очень полезный инструмент, постараемся использовать в скором времени! Спасибо за триал-версию. Проверили свои продукты, естественно, ряд ошибок удалось таки найти. https://lcontent.ru/vypolnili-proverku-produktov-staticheskim-analizatorom-pvs-studio/
Повторная проверка Unity статическим анализатором PVS-Studio