Вредоносное ПО, поражающее NetBeans для внедрения бэкдоров в собираемые проекты

GitHub выявил вредоносное ПО, поражающее проекты в интегрированной среде разработки NetBeans и использующее процесс сборки для своего распространения. Расследование показало, что при помощи рассматриваемого вредоносного ПО, которому присвоено имя Octopus Scanner, были скрыто интегрированы бэкдоры в 26 открытых проектов, имеющих репозитории на GitHub. Первые следы проявления Octopus Scanner датированы августом 2018 года.

Вредоносное ПО способно выявлять файлы с проектами NetBeans и добавлять свой код в файлы проекта и собираемые JAR-файлы. Алгоритм работы сводится к нахождении каталога NetBeans с проектами пользователя, перебору всех проектов в данном каталоге, копированию вредоносного сценария в nbproject/cache.dat и внесению изменений в файл nbproject/build-impl.xml для вызова этого сценария при каждой сборке проекта. При сборке копия вредоносного ПО включается в результирующие файлы JAR, которые становятся источником дальнейшего распространения. Например, вредоносные файлы были размещены в репозиториях вышеупомянутых 26 открытых проектов, а также различными другими проектами при публикации сборок новых релизов.

При загрузке и запуске поражённого JAR-файла другим пользователем, на его системе начинался очередной цикл поиска NetBeans и внедрения вредоносного кода, что соответствует модели работы самораспространяющихся компьютерных вирусов. Кроме функциональности для самораспространения, вредоносный код также включает функции бэкдора для предоставления удалённого доступа к системе. На момент разбора инцидента управляющие бэкдором серверы (C&C) не были активны.

Вредоносное ПО, поражающее NetBeans для внедрения бэкдоров в собираемые проекты

Всего при изучении поражённых проектов было выявлено 4 варианта инфицирования. В одном из вариантов для активации бэкдора в Linux создавался файл автозапуска «$HOME/.config/autostart/octo.desktop», а в Windows для запуска применялся запуск заданий через schtasks. Среди других создаваемых файлов:

  • $HOME/.local/share/bbauto
  • $HOME/.config/autostart/none.desktop
  • $HOME/.config/autostart/.desktop
  • $HOME/.local/share/Main.class
  • $HOME/Library/LaunchAgents/AutoUpdater.dat
  • $HOME/Library/LaunchAgents/AutoUpdater.plist
  • $HOME/Library/LaunchAgents/SoftwareSync.plist
  • $HOME/Library/LaunchAgents/Main.class

Бэкдор мог использоваться для добавления закладок в развиваемый разработчиком код, организации утечки кода проприетарных систем, кражи конфиденциальных данных и захвата учётных записей. Исследователи из GitHub не исключают, что вредоносная деятельность не ограничивается NetBeans и могут существовать другие варианты Octopus Scanner, внедряющиеся для своего распространения в процесс сборки на базе Make, MsBuild, Gradle и других систем.

Названия поражённых проектов не упоминается, но их легко можно найти через поиск в GitHub по маске «cache.dat». Среди проектов, в которых найдены следы вредоносной активности: V2Mp3Player, JavaPacman, Kosim-Framework, Punto-de-venta, 2D-Physics-Simulations, PacmanGame, GuessTheAnimal, SnakeCenterBox4, Secuencia-Numerica, CallCenter, ProyectoGerundio, pacman-java_ia, SuperMario-FR-.

Источник: opennet.ru