Обсудить
бизнес-задачи
блог о bi, №1 в рунете

Потенциальные уязвимости платформы 1С версии 7.7

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

Уязвимости платформы 1С 7.7
Получение пароля dbo

Платформа 1С не использует разграничения прав доступа к SQL серверу, и каждый пользователь работает с информационной базой с полными правами владельца базы (db_owner, DBO).

При этом имя пользователя и пароль DBO хранится в файле 1CV7.DBA в каталоге с конфигурационными файлами платформы. Доступ на чтение файлов конфигурации имеют все пользователи системы. Пароль DBO хранится в зашифрованном виде с использованием XOR-шифрования, но данная защита легко снимается специальными программами типа unsql.exe.

После получения пароля DBO пользователь может напрямую подключаться к серверу базы данных.

Сброс пользовательских паролей

Система 1С:Предприятие хранит информацию о своих пользователях и их паролях в файле users.usr. Пароли хранятся в виде прохэшированных записей , поэтому непосредственное получение пароля затруднено. Однако, существуют программы для перебора паролей, а также позволяющие сбросить пароли пользователей.

Вход в Конфигуратор неавторизованным пользователем

Если система 1С не обнаруживает список пользователей, который хранится в файле users.usr, или список пользователей пуст, то она позволяет запустить Конфигуратор без авторизации.

Как возможно использовать:

Пользователь переименовывает файл users.usr, заходит в Конфигуратор, затем возвращает фалйу со писком сотрудников имя users.usr и получает возможность просмотреть список пользователей, добавлять пользователей, изменять их права доступа и т.п.

Рекомендации по устранению уязвимости:

Защитить файл users.usr от записи. И разрешать запись только администратору на момент редактирования списка пользователей в 1С.

Неавторизованный вход в систему посредством изменения исполняемого файла

Существует возможность изменить исполняемый файл платформы 1CV7s.exe и отключить в нем проверку пароля пользователя.

Как возможно использовать:

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

Рекомендации по устранению уязвимости:

Вариант 1. Предоставить пользователям права только на выполнение исполняемых файлов и запретить их запись.

Вариант 2. На терминальном сервере (ТС) с помощью доменной или локальной политики необходимо разрешить запуск только аутентифицированного исполняемого файла 1CV7s.exe. Это можно осуществить с помощью политики ограничения запуска программ, через хэш-функцию исполняемого файла.

Изменение файла конфигурации

Пользователь может внести изменения в файл конфигурации системы (файл конфигурации имеет расширение MD). Существует ряд программ, который позволяют напрямую работать с файлом конфигурации и вносить в него любые изменения.

Как возможно использовать:

Пользователь может скопировать файл конфигурации, внести в него изменения и поместить обратно.

Рекомендации по устранению уязвимости:

Вариант 1. С помощью прав доступа запретить пользователям изменение файла конфигурации.

Вариант 2. Для работы с 1С использовать терминальный сервер.

Использование внешних обработок и отчетов

Поскольку существует ряд внешних обработчиков, используемых самой системой 1С, существует вероятность того, что пользователь сможет подменить файл внешней обработки и выполнить ее в 1С. Во внешних обработках может быть размещен вредоносный код, который может привести к утечке информации или блокировке работы системы.

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

Как возможно использовать:

Разработать внешнюю обработку, выполняющую вредоносные действия.

Рекомендации по устранению уязвимости:

Вариант 1. Запретить пользователям вызывать внешние обработчики и отчеты, либо, если это невозможно, то ограничить круг пользователей, которым разрешено применять внешние обработки и отчеты.

Вариант 2. Закрыть доступ на изменение к каталогу с внешними обработчиками, используемыми при работе с платформой

Ограничения платформы 1С 7.7

Ограничение 1 – Режим смешанной аутентификации. При работе с сервером SQL 1С:Предприятие использует режим смешанной авторизации. Каждый пользователь 1С:Предприятие работает на SQL сервере под одной учетной записью с полными правами владельца базы (db_owner).

Рекомендации по устранению уязвимости:

Модификация файла bkend.dll, отвечающего за соединение с сервером SQL. С помощью модифицированного файла становится возможным вариант использования режима Windows-аутентификации на SQL-сервере. В случае подобной модификации необходимо настроить права доступа к базам 1С всем пользователям 1С.

Ограничение 2 - версия сервера базы данных. Платформа 1С 7.7 может работать с SQL серверами версии 6.5, 7.0 и SQL Server 2000. Она не может работать с версией SQL Server 2005.

Рекомендации по устранению уязвимости:

Модификация файла bkend.dll, отвечающего за соединение с сервером SQL.1С:Предприятие 8.0