В сегодняшней статье я расскажу об уязвимостях сервера 1С в корпоративной сети.
Как показала практика, при установках с 1С все допускают одни и те же ошибки разной степени тяжести.
Я не буду касаться таких очевидных вещей, как установка обновлений, а расскажу о специфике работы сервера приложений под Windows. Например, по возможности бесконтрольно манипулировать базами данных Microsoft SQL средствами 1С.
Исторически сложилось так, что системные администраторы и программисты 1С редко работают в одной команде.А в результате получается инфраструктура с «детскими болячками», очевидными для специалиста по ИБ — ниже мой личный ТОП таких проблем.Чаще всего специалисты 1С не вникают в тонкости системного администрирования, а системные администраторы не стремятся постичь нюансы работы 1С.
Запускаем сервер правильно По умолчанию платформа 1С при установке создает специальную учетную запись с ограниченными правами, под которой запускаются службы сервера — USR1CV8. Все идет хорошо, пока не понадобятся сетевые ресурсы: например, для автоматической загрузки и скачивания.
Учетная запись по умолчанию не имеет доступа к сетевым папкам домена, поскольку она является локальной.
В своей практике я встречал множество способов решения этой проблемы: папки с доступом на запись для группы «Все», сервер 1С под учетной записью с правами администратора домена, явно прописанные в коде учетные данные для подключения сетевого ресурса.
Даже запуск сервера 1С под пользовательской сессией как обычное приложение.
Заходим на сервер по RDP, видим такое окно и получаем нервный тик.
Конечно, «жестко запрограммированные» пароли и сетевые ресурсы с анонимным доступом для записи встречаются редко.
В отличие от запуска сервера 1С от обычной доменной учетной записи.
Разумеется, с возможностью выполнения произвольного кода «на сервере».
Как знает любой пользователь 1С, но не любой системный администратор, в обработке 1С существует два режима выполнения процедур: на сервере и на клиенте.
Процедура, запущенная в «серверном» режиме, будет выполнена под учетной записью службы сервера приложений.
Со всеми ее правами.
Если сервер 1С работает с правами администратора домена, то потенциальный вредитель сможет сделать с доменом что угодно.
Разумным решением будет создание специального аккаунта на базе USR1CV8 , только уже в домене.
В частности, ей следует разрешить вход только на определенные серверы в оснастке «Пользователи и компьютеры Active Directory».
Настройка входа только на авторизованные серверы.
Также было бы неплохо разрешить вход на сервер только как сервис, отключив возможность локального (интерактивного) входа.
Это можно сделать с помощью локальных политик безопасности непосредственно на сервере или с помощью групповых политик домена.
Назначение прав пользователя в локальной политике безопасности.
То же самое относится и к учетной записи сервера Microsoft SQL. Седые волосы могут увеличиться из-за вредных привычек:
- запускайте SQL с правами администратора компьютера или даже домена для удобного резервного копирования;
- включить возможность запуска исполняемых команд через хранимую процедуру xp_cmdshell перенести резервные копии на сетевые ресурсы через красивые тарифные планы.
В целом это не так страшно, как звучит, ведь пароль SA хешируется в файле 1CV8Reg.lst на сервере приложений.
Злоумышленник гипотетически может получить хэш — не забывайте о правах учетной записи сервера — но расшифровка займет много времени, особенно если использовать перебор.
Но все равно было бы неплохо устроить проверку доступа к этому файлу и поставить в известность ответственных лиц.
Другое дело, когда программистам 1С «делегируют» обязанности администратора базы данных.Для собственного спокойствия вам следует установить сложный пароль для SA или полностью деактивировать эту учетную запись.Опять же из личного опыта: SQL-сервер был обязанностью программистов, как и интеграция внешнего сайта с базами данных 1С.
Результатом стал пароль SA в скриптах сайта.
В SQL тогда нужно включить доменную аутентификацию для управления и создать отдельный логин для 1С с правами на необходимые базы.
Если вы не хотите оставлять возможность создания баз SQL через интерфейс 1С, то новому пользователю будет достаточно общей роли общественный И db_owner непосредственно в базе данных 1С.
Это можно сделать через Management Studio или с помощью простого сценария T-SQL:
пользователи 1С Почему-то мало кто обращает внимание на права пользователей в 1С.USE <databasename> CREATE LOGIN 1c_user WITH PASSWORD = 'VeryStrongPassword' CREATE USER 1c_user FOR LOGIN 1c_user ALTER ROLE db_owner ADD MEMBER 1c_user GO
Но пользователь с правами «Административные функции» или «Администрирование» может легко загрузить базу данных на .
ДТ через конфигуратор и забрать домой - это подарит не одну минуту волнительного счастья вашему руководству.
Поэтому стоит за рюмкой чая поймать ник 1С и вместе посидеть над базой данных, чтобы узнать, какие пользователи имеют такие права.
И в то же время, чем грозит сокращение их полномочий.
Право на выгрузку базы данных предоставлено роли Полные права в стандартной 1С:Бухгалтерии 2.0. Следующий важный момент — запуск внешней обработки.
Как мы помним, в 1С можно запускать код с правами учетной записи сервера.
Хорошо, если у нее нет административных прав на систему, но исключить возможность запуска такой обработки для пользователей все же стоит. И не забудьте попросить специалиста 1С «встроить» в базу данных дополнительные отчеты и обработку.
Хотя не все обработки поддерживают встраивание — эта возможность зависит от версии 1С.
Проверить, какие типовые роли не имеют прав на открытие внешних процессоров, можно в конфигураторе.
Все эти действия не только помогут защититься от потенциального «внутреннего вредителя», но и станут дополнительным препятствием на пути.Если вам все же необходимо запустить внешний процессинг, то хорошим вариантом контроля и страховки будет аудит их запуска.вирусы-вымогатели маскируясь под обработку 1С.
В 1С пока нет стандартного механизма аудита, но сообщество уже придумало его.
Стоит реализовать эти механизмы вместе со специалистом 1С, а также настроить уведомления о событиях в журнале регистрации базы данных.
Отдельно хотелось бы отметить возможность настройки аутентификации доменного пользователя вместо аутентификации 1С.
Да и пользователям будет удобнее — меньшее количество паролей в памяти снижает риск появления наклеек на мониторе.
Администратор кластера Итак, пользователи теперь не могут запускать обработку, учетная запись сервера максимально ограничена.
Но есть еще кое-что: учетная запись администратора кластера 1С, которая по умолчанию не создается.
Ее отсутствие опасно: любой, у кого есть ноутбук с открытым доступом к сетевым портам сервера (по умолчанию TCP:1540), может создать там свою базу данных, и никаких ограничений на запуск обработки не будет. Причем злодей сможет получить информацию о базах данных, о работающих пользователях, изменить параметры кластера и даже принудительно прекратить работу отдельных пользователей.
Пример скрипта PowerShell, который удаляет всех пользователей из всех баз данных сервера: $COMConnector = New-Object -ComObject V83.COMConnector
$agent = $COMConnector.ConnectAgent("servername")
$cluster = $agent.GetClusters()[0]
$agent.Authenticate($cluster,"", "")
$sessions = $agent.GetSessions($cluster)
Foreach ($session in $sessions) {
$agent.TerminateSession($cluster, $session)
}
Об использовании подобного метода работы с сервером 1С в благих целях уже упоминалось.
в одной из предыдущих статей .
Создать администратора кластера непросто, а очень просто – достаточно нажать правой кнопкой мыши на пункт «администраторы» в управлении кластером 1С, создать нового администратора, указав логин и пароль.
Создание администратора кластера 1С.
Я коснулся лишь некоторых недостатков при настройке 1С:Предприятия.
Для самостоятельного обучения рекомендую прочитать материалы, которые по-прежнему актуальны:
- документ по информационной безопасности на сайте ИТС;
- статья по вопросам безопасности 1С:Предприятие 8.0 в сообществе mista.ru.
Теги: #информационная безопасность #ИТ-инфраструктура #Администрирование серверов #sql #Системное программирование #1c:предприятие #1c безопасность
-
Apple Id Не Работает
19 Oct, 24 -
Rutracker.org Заблокирован
19 Oct, 24 -
Не Спи!
19 Oct, 24 -
Новая Игровая Клавиатура От Belkin.
19 Oct, 24