Вопросы безопасности системы 1С:Предприятие 8

1С:Предприятие является самой распространённой учетной системой в России системой, но, несмотря на это, до версии 8 её разработчики уделяли крайне мало внимания вопросам безопасности. В основном, конечно, это диктовалось ценовой нишей продукта и ориентацией на малые предприятия, где отсутствуют квалифицированные ИТ-специалисты, и возможная стоимость развёртывания и поддержки защищённой системы была бы непозволительно дорога для предприятия. С выпуском версии 8 акценты должны были поменяться: стоимость решений значительно возросла, система стала значительно более масштабируемой и гибкой – требования значительно изменились. Стала ли система достаточно надёжной и защищённой – это вопрос очень индивидуальный. Основная информационная система современного предприятия должна удовлетворять как минимум, следующим требованиям безопасности:

  • Достаточно низкая вероятность сбоя системы по внутренним причинам.
  • Надёжная авторизация пользователей и защита данных от некорректных действий.
  • Эффективная система назначения прав пользователей.
  • Оперативная система резервного копирования и восстановления в случае сбоя.

Удовлетворяют ли решения на базе 1С:Предприятия 8 таким требованиям? Однозначного ответа не существует. Несмотря на значительные изменения в системе управления доступом осталось достаточно много нерешённых вопросов. В зависимости от того, как разработана и настроена система, все эти требования могут не выполняться или выполняться в достаточной для данного внедрение мере, однако стоит обратить внимание (и это существенное следствие "юности" платформы), что для полного выполнения перечисленных условий приходится прикладывать поистине титанические усилия.

1С:Предприятие 8 поставляется в двух вариантах: файловый и клиент-серверный. Файловый вариант нельзя считать обеспечивающим информационную безопасность системы по следующим причинам:

  • Данные и конфигурация хранятся в файле, доступном на чтение и запись всем пользователям системы.
  • Авторизацию системы не сложно обойти.
  • Целостность системы обеспечивается только ядром клиентской части.
  • В клиент-серверном варианте для хранения информации используется MS SQL Server, что обеспечивает:
    • http://v4.stavanalit.ru/manager/index.php?a=30&id=99&parent=8&context_key=web
    • Более надёжное хранение данных.
    • Изоляцию файлов от прямого доступа.
    • Более совершенные механизмы транзакций и блокировок.

Несмотря на значительные отличия файлового и клиент-серверного варианта системы, они обладают единой схемой контроля доступа на уровне прикладного решения, которые предоставляют следующие возможности:

  • Авторизация пользователя по паролю заданному в 1С.
  • Авторизация пользователя по текущему пользователю Windows.
  • Назначение ролей пользователям системы.
  • Ограничение выполнения административных функций по ролям.
  • Назначение доступных интерфейсов по ролям.
  • Ограничение доступа к объектам метаданных по ролям.
  • Ограничение доступа к реквизитам объектов по ролям.
  • Ограничение доступа к объектам данных по ролям и параметрам сеанса.
  • Ограничение интерактивного доступа к данным и исполняемым модулям.
  • Некоторые ограничения выполнения кода.

В целом, используемая схема доступа к данным достаточно типична для информационных систем такого уровня. Однако применительно к данной реализации трёхзвенной клиент-серверной архитектуры есть несколько принципиальных аспектов, которые приводят к относительно большому количеству уязвимостей:

  • Большое количество этапов обработки данных, причем на каждом этапе могут действовать отличающиеся правила доступа к объектам.
  • Недостаточно отлаженные процедуры контроля передаваемых данных при переходе с уровня на уровень механизмов системы.
  • Недостаточно высокая средняя квалификация разработчиков и администраторов систем, доставшаяся в наследство от предыдущей версии.
  • Сравнительно небольшой возраст платформы.

Основные рекомендации настройки безопасности

Итак, система (и, возможно, типовое прикладное решение) развёртывается на предприятии и устанавливается на компьютеры. В первую очередь необходимо создать такую среду, в которой будет иметь смысл настройка безопасности 1С, а для этого её необходимо настроить таким образом, чтобы предположение, что на безопасность системы существенно влияют настройки системы, выполнялось.

Доступ к серверам физически ограничен и обеспечена их бесперебойная работа:

  • Серверное оборудование отвечает требованиям надёжности, замена неисправного серверного оборудования отлажена, для особо критичных участков используются схемы с дублированием аппаратного обеспечения (RAID, питание от нескольких источников, несколько каналов связи и т.п.);
  • Настройки сети и информационной инфраструктуры предприятия выполнены корректно:
    • на всех серверах установлены и настроены брандмауэры;
    • все пользователи и компьютеры авторизованы в сети, пароли достаточно сложны, чтобы их нельзя было подобрать;
    • у операторов системы достаточно прав для нормальной работы с ней, но нет прав на административные действия;
    • на всех компьютерах сети установлены и включены антивирусные средства;
    • желательно, чтобы пользователи (кроме администраторов сети) не обладали административными правами на клиентских рабочих местах;
    • доступ в Интернет и к съёмным носителям информации должен быть регламентирован и ограничен;
    • системный аудит событий безопасности должен быть настроен;
  • Решены основные организационные вопросы:
    • пользователи обладают достаточной квалификацией для работы с 1С и аппаратными средствами;
    • пользователи извещены об ответственности за нарушение правил эксплуатации;
    • назначены материально ответственные на каждый материальный элемент информационной системы;
    • все системные блоки опломбированы и закрыты;
    • особое внимание уделите инструктажу и контролю над уборщиками помещений, строителями и электриками. Эти лица могут по неосторожности нанести ущерб, который не сопоставимо больше умышленного вреда, причинённого недобросовестным пользователем системы.
  • MS SQL Server, сервер приложений и клиентская часть работают на разных компьютерах, серверные приложения работают под правами специально созданных пользователей Windows; Для MS SQL Server
    • установлен режим смешанной авторизации
    • пользователи MS SQL, входящие в роль serveradmin, не участвуют в работе 1С,
    • для каждой ИБ 1С создан отдельный пользователь MS SQL, не имеющий привилегированного доступа к серверу,
    • пользователь MS SQL одной ИБ не имеет доступа к другим ИБ;
  • Пользователи не имеют непосредственного доступа к файлам сервера приложений и сервера MS SQL
  • Рабочие места операторов оснащены ОС Windows 2000/XP (не Windows 95/98/Me)
  • Не пренебрегайте рекомендациями разработчиков системы и чтением документации. На дисках ИТС в разделе "Методические рекомендации" публикуются важные материалы по настройке системы.
  • Используйте для пользователей возможности авторизации совмещённой с авторизацией Windows
  • Создавая роли прикладного решения, не добавляйте прав "про запас"
  • Проводите регулярный просмотр журналов регистрации и протоколов работы системы

Использование терминального доступа к клиентской части для ограничения доступа

Нередко можно встретить рекомендации использовать терминальный доступ для ограничения доступа к данным и поднятия производительности за счет выполнения кода клиентской части на сервере терминалов. При правильной настройке использование терминального доступа действительно способно повысить общий уровень безопасности системы.

В любом случае терминальные службы позволяют:

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

Рекомендации при использовании:

  • Необходимо ограничивать количество возможных соединений с сервером терминалов одного пользователя
  • Нельзя допускать запуска более одного-двух клиентских приложений 1С одновременно в одном подключении
  • Не рекомендуется давать права на доступ к терминальному серверу пользователям, обладающих правом запуска ресурсоёмких вычислительных задач в 1С или предотвращать такой запуск во время активной работы других пользователей.
  • Необходимо удостовериться, что каждый пользователь имеет права на запись только в строго определённые каталоги сервера терминалов и другие пользователи не имеют к ним доступа.
  • Необходимо запретить подключение (mapping) дисковых устройств, принтеров и буфера обмена клиентского рабочего места.
  • Сетевой файловый доступ с сервера терминалов должен быть ограничен.
  • Ни в коем случае при создании защищённой системы нельзя оставлять сервер приложений на терминальном сервере.
  • Необходимо исключить возможность запуска всех приложений кроме 1С:Предприятия на терминальном сервере.
  • Учитывайте ограничения штатного журнала регистрации (все пользователи используют программу с одного компьютера)

Очевидно, что раз пользователи открывают 1С в терминальном режиме, то и в журнале регистрации записываться будет именно сервер терминалов. С какого компьютера подключился пользователь, журнал регистрации не сообщает.

Одним из случаев, когда применение сервера терминалов наиболее эффективно, является запуск 1С без Windows Explorer в полноэкранном режиме для пользователей c ограниченным функционалом и специализированным интерфейсом.

В заключении можно сказать: идеальной данную платформу назвать нельзя – в ней, как и во многих других есть свои проблемы организации защищённой системы. Но это ни в коем случае не означает, что эти проблемы нельзя обойти, наоборот, почти все недостатки могут быть ликвидированы при правильной разработке, внедрении и использовании системы. Большинство проблем возникает из-за недостаточной проработки конкретного прикладного решения и среды его выполнения. И разработчики фирмы 1С не стоят на месте, постоянно развивая, дополняя и улучшая механизмы платформы 1С: Предприятие 8.