Программа BOINC
Вызвал интерес проект [url=http://www.boinc.ru/]BOINC[/url] – в мире распределенных вычислений. В принципе есть возможность помочь мощностью своего компьютера науке. Однако несмотря на уверения с сайтов проектов о том, что в них осуществляются именно мирные задачи (поиск внеземных цивилизация SETI, обсчет моделей белков раковых клеток в целях поиска лекарств и т.п.) все-таки есть сомнения в справедливости этих слов. Ну, можно назвать это своего рода параноей. А вдруг вместо действительно решения мирных задач я буду предоставлять компьютерное время для обсчета более совершенной ядерной бомбы недружественному государству, ведь почти все проекты, несмотря на русский сайт, являются зарубежными. Как вы считаете? Есть ли причина для опасений такого рода?
Ссылки
[link1] http://boinc.berkeley.edu/trac/wiki/ClientSetupLogicWinSix
Теоретически, не вижу никаких препятствий, чтобы организаторы не могли подсунуть узлам любые данные для обсчёта. Какую-то гарантию может дать только открытый код и отсутствие функций самообновления через Сеть, но незначительную, если функции обсчёта достаточно универсальны.
Гость, Вы посмотрели только на первую строчку сайта, там ведь много проектов, нуждающихся в распределенных вычислениях.
вот и внимательность посетителей к ссылям(
http://distributed.ru/wiki/pro
список подобных систем...
Посмотрел на BOINC с точки зрения безопасности. При установке предлагается поставить галочку "secure", которая настраивает запуск программы от пользователя с низкими привилегиями. Это можно записать в плюс. А в минус можно записать то, что для пользователей созданных BOINC назначаются следующие особые привилегии:
SeIncreaseQuotaPrivilege – позволяет превышать стандартные квоты на системные ресурсы. Использование этой привилегии оправдано функционалом программы.
SeAssignPrimaryTokenPrivilege – разрешает назначать привилегии запускаемым дочерним процессам. Опасности не представляет.
SeCreateGlobalPrivilege – разрешает создание объектов в глобальном пространстве имён. Прямой опасности не представляет, но может открывать возможности для нетривиальных атак, обычно используется для синхронизации процессов работающих от разных пользователей.
SeDebugPrivilege – разрешает отладку любого процесса в системе. Наличие этой привилегии позволяет в любой момент взять права администратора. Привилегия включена для группы boinc_users. У меня эта группы всегда оставалась пустой, но в документации BOINC написано, что там может быть прописан Everyone. Если это так, то в системе будет открыта уязвимость на повышение привилегий от произвольного пользователя до администратора.
Ссылка: http://boinc.berkeley.edu/trac.....ientSetupLogicWinSix[link1]
SeImpersonatePrivilege – разрешает имперсонацию. Опасности не представляет.
К тому же, для группы boinc_admins, в которую входит пользователь boinc_master, разрешена запись во все файлы в директории BOINC, в том числе и в файлы GUI фронтенда запускаемого пользователем программы.
Радует только то, что пароль на boinc_master генерируется безопасным способом, иначе это открывало бы дыру в системе. А текущей версии BOINC отсутствует автоматическое обновление, что тоже радует.
Плюсы:
Минусы:
Общий вывод: безопасность не так плоха, как могло бы быть, но использование SeDebugPrivilege наводит на подозрения. Надо бы отписать авторам чтобы заделали дыру. К тому-же хорошо бы запретить запись в исполнимые файлы BOINC.