Где 1С:Предприятие 8.3 держит пароли пользователей и насколько это надёжно

· 10 мин

Содержание

1С:Предприятие не шифрует пароли пользователей в обратимом виде — оно хранит их хэш. Хэш строится на основе SHA-1 и записывается в кодировке Base64 в служебную таблицу пользователей информационной базы. Расшифровать такой пароль нельзя, но короткий или словарный пароль можно подобрать, если у постороннего окажется копия базы .

Отсюда простое правило безопасности. Надёжность паролей в 1С держится не на алгоритме хэширования, а на трёх вещах: длине пароля, закрытом доступе к файлу базы или СУБД и настройках входа.

Где лежат пароли: файловая и клиент-серверная база

Список пользователей хранится внутри самой информационной базы, а не в конфигурации и не на компьютере пользователя. Место зависит от варианта работы.

Вариант базыГде список пользователейКто может добраться до хэшей
ФайловаяТаблица V8USERS внутри файла 1Cv8.1CDЛюбой, у кого есть права на чтение папки базы
Клиент-сервернаяТаблица v8users в базе данных СУБД (MS SQL, PostgreSQL)Администратор СУБД и все, у кого есть учётная запись SQL с правом чтения
Выгрузка .dtВнутри архива выгрузки вместе с даннымиЛюбой, кому попал файл выгрузки

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

💡 Из встроенного языка хэш виден через свойство СохраняемоеЗначениеПароля объекта пользователя информационной базы. Им пользуются, когда переносят учётные записи между базами без смены паролей. Сам пароль свойство Пароль только принимает, прочитать его нельзя.

Что ещё хранит пароли рядом с базой

  • 🗄️ Реестр кластера серверов. В каталоге srvinfo сервер держит параметры зарегистрированных баз, включая логин и пароль пользователя СУБД. Этот пароль серверу нужно передавать в СУБД, поэтому он хранится в обратимо закодированном виде, а не хэшем.
  • 🔑 Администраторы кластера и центрального сервера. Их учётные записи тоже лежат в файлах реестра в srvinfo.
  • 🖥️ Ярлыки и строки запуска. Если в ярлык вписаны параметры /N и /P (имя и пароль), пароль лежит в ярлыке открытым текстом.

Папка srvinfo и файл 1Cv8.1CD — главные цели при утечке. Закрывайте доступ к ним в первую очередь.

Алгоритм хэширования паролей в 1С: что известно точно

Хэш пароля пользователя в 1С 8.x строится на SHA-1 и кодируется Base64. Формат внутренний, официально его не документируют, но он многократно разобран в открытых источниках и стабилен много лет.

MD5 для паролей пользователей 1С:Предприятия 8 не применяется — это встречается только в пересказах. SHA-512 в штатной схеме тоже нет.

Что это значит на практике:

  • ✅ Пароль нельзя «расшифровать». Хэш — односторонняя функция, обратного преобразования нет.
  • ⚠️ SHA-1 считается быстро. Современная видеокарта перебирает сотни миллионов вариантов в секунду. Короткий пароль подбирается за минуты.
  • ⚠️ Соль не защищает от словаря. Даже если в новых релизах платформы схема усилена, пароль 123, qwerty или имя компании подберут по словарю.
  • ✅ Длинный случайный пароль держится. Двенадцать и больше символов из букв, цифр и знаков перебором не взять за разумное время.

Для сравнения: пароль из 6 строчных латинских букв — это 26⁶ ≈ 309 млн вариантов, около секунды перебора на одной видеокарте. Пароль из 12 символов, где каждый — одна из 70 букв, цифр и знаков, даёт 70¹² ≈ 1,4·10²² вариантов. Это тысячи лет перебора.

Можно ли взломать пароль 1С и что за этим стоит

Подобрать пароль к чужой базе — это неправомерный доступ к компьютерной информации, за который предусмотрена уголовная ответственность по статье 272 УК РФ. Инструкций по взлому здесь не будет. Полезнее понять, как выглядит атака, чтобы закрыть дыры у себя.

Реальные инциденты почти никогда не связаны с «криптографией» 1С. Они идут по одному из сценариев:

  1. Утекла копия базы. Файл 1Cv8.1CD или выгрузку .dt скопировали с открытой сетевой папки, флешки, облачного диска. Дальше хэши достают из файла и перебирают в спокойной обстановке.
  2. Слабый или пустой пароль. Пользователь «Администратор» без пароля, пароль 1, пароль совпадает с именем. Это проверяется вручную за минуту.
  3. Пароль в открытом виде. В ярлыке, в текстовом файле на рабочем столе, в стикере на мониторе, в строке подключения внешней обработки.
  4. Доступ к СУБД. Учётная запись sa в MS SQL или postgres с простым паролем даёт доступ ко всем таблицам, а не только к пользователям.
  5. Удалённый рабочий стол без защиты. Подбирают пароль RDP к серверу, а уже оттуда открывают базу.

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

Как усилить защиту паролей в 1С

Начинайте с настроек платформы — они работают в любой конфигурации. Затем, если у вас типовая конфигурация на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11), включите требования в самой программе.

Настройки платформы в Конфигураторе

Откройте Конфигуратор и выберите Администрирование → Параметры информационной базы. В актуальных версиях платформы 8.3 там есть:

  • 📏 минимальная длина пароля;
  • 🔣 проверка сложности (буквы, цифры, разные регистры);
  • 📅 максимальный и минимальный срок действия пароля;
  • 🔁 запрет повторять несколько последних паролей;
  • 🚫 число неудачных попыток входа до блокировки и продолжительность блокировки.

Блокировка после неудачных попыток — главная настройка против подбора вживую. Пять попыток и блокировка на 10–15 минут делают перебор через окно входа бессмысленным.

Настройки в программе

В конфигурациях на БСП откройте Администрирование → Настройки пользователей и прав. Там задают требования к паролю для пользователей, запрет входа после долгого бездействия и срок действия учётной записи. Здесь же видно, кто и когда последний раз входил.

Защита на уровне сервера и файлов

  • 📁 Папку файловой базы откройте на запись только тем, кто работает в базе. Остальным — ни чтения, ни записи.
  • 🗄️ Для клиент-серверной базы заведите отдельного пользователя СУБД с правами только на свою базу. Не регистрируйте базы под sa или postgres.
  • 🔒 Закройте каталог srvinfo правами NTFS: доступ нужен службе сервера 1С и администраторам.
  • 💾 Храните резервные копии и выгрузки .dt в защищённом месте. Копия базы — это копия всех хэшей.
  • 🌐 Публикацию на веб-сервере открывайте только по HTTPS. При базовой HTTP-аутентификации пароль идёт в каждом запросе, и без TLS его видно в трафике.
  • 🖥️ Уберите /N и /P из ярлыков и командных файлов. Если для обмена или регламентной задачи нужен пользователь с паролем, заведите для него отдельную учётную запись с минимальными ролями.

Контроль попыток входа

Защита без контроля быстро устаревает. Раз в месяц просматривайте журнал регистрации: в программе он открывается через Администрирование → Обслуживание, в Конфигураторе — через Администрирование → Журнал регистрации.

  • 🔎 Отберите события аутентификации и посмотрите неудачные попытки входа.
  • 👤 Серия ошибок под одним именем за короткое время — повод проверить, кто и с какого компьютера входил.
  • 🕒 Входы ночью или в выходные под учётной записью бухгалтера — тоже сигнал.

Учётные записи, под которыми давно никто не входит, отключайте: снимите разрешение на вход, но пользователя не удаляйте.

Минимальная гигиена паролей в базе 1С
Выполнено: 0 / 7

Как восстановить доступ, если пароль 1С утерян

Восстановить старый пароль нельзя — его нет в базе, есть только хэш. Можно установить новый. Способ зависит от того, кто именно забыл пароль.

Чей пароль утерян?

Остановка службы сервера 1С обрывает сеансы всех пользователей на этом сервере. Предупредите людей и делайте это вне рабочего времени.

Почему не стоит искать «программы для сброса пароля»

В сети ходят утилиты, которые обещают «снять пароль с базы 1С». Проблем три:

  • 🦠 Такие файлы часто содержат вредоносный код, а запускают их на компьютере с бухгалтерской базой.
  • 💥 Утилита правит служебную таблицу напрямую. Ошибка в ней — и база не откроется вовсе.
  • ⚖️ Применять их к базе, которой вы не владеете, незаконно.

Если без вмешательства в служебные таблицы не обойтись, это работа для администратора СУБД или партнёра. И только после полной резервной копии.

Мифы о паролях в 1С

МифКак на самом деле
Пароль 1С хранится в открытом видеВ базе лежит хэш. Открытым текстом пароль бывает только там, где его записал человек: ярлык, файл, скрипт
Пароль в 1С шифруется MD5Для пользователей 1С:Предприятия 8 используется схема на основе SHA-1
Пароль можно расшифровать программойРасшифровать хэш нельзя, можно только подобрать пароль перебором
Пароль на Конфигуратор защищает кодПароль пользователя защищает вход. Код конфигурации без поставки и защиты модулей можно посмотреть в копии базы
Вход через Windows небезопаснее пароляНаоборот: пароль в 1С вообще не хранится, работают политики домена
Хватит пароля на базу, папку можно не закрыватьС копией файла базы подбор идёт без ограничения попыток, блокировка входа уже не помогает

Последний миф самый опасный. Блокировка после неудачных попыток защищает только окно входа. От копии файла базы спасают права доступа и длина пароля.

Альтернативы паролю: аутентификация Windows, OpenID и второй фактор

В карточке пользователя информационной базы можно включить несколько видов аутентификации. Они не исключают друг друга.

СпособКак работаетКогда выбирать
Аутентификация 1С:ПредприятияИмя и пароль, хэш в базеНебольшой офис без домена, внешние пользователи
Аутентификация операционной системыПользователь 1С связан с доменной учётной записью Windows, вход без ввода пароляЕсть домен Active Directory
OpenID / OpenID ConnectВход через внешний сервер аутентификации, обычно для веб-клиентаНесколько опубликованных баз, единый вход
Второй факторПосле пароля нужен код или подтверждение из внешнего сервисаУдалённый доступ, базы с персональными данными

Как включить вход через Windows

  1. Откройте пользователя: в программе через Администрирование → Настройки пользователей и прав → Пользователи, в Конфигураторе через Администрирование → Пользователи.
  2. Включите флажок аутентификации операционной системы.
  3. Укажите доменную учётную запись в формате \\ДОМЕН\имя_пользователя.
  4. Если пароль 1С больше не нужен, снимите флажок аутентификации 1С:Предприятия. Тогда войти по имени и паролю 1С под этим пользователем будет нельзя.

💡 При входе через Windows политика паролей задаётся в домене: длина, сложность, срок действия, блокировка. В базе 1С пароль этого пользователя не хранится вовсе — подбирать по копии базы нечего.

Для клиент-серверной базы с доменными пользователями служба сервера 1С должна работать под учётной записью, для которой настроена аутентификация Kerberos. Без этого вход через Windows может не работать с других компьютеров сети.

Частые вопросы

Видит ли администратор 1С пароли пользователей?
Нет. Администратор может задать новый пароль, но прочитать текущий не может ни в программе, ни в Конфигураторе. В базе хранится только хэш.
Защищает ли пароль 1С персональные данные сотрудников?
Только частично. Закон о персональных данных требует комплекса мер, а пароль закрывает лишь вход через программу. Права на файлы, резервные копии и сервер СУБД нужно защищать отдельно.
Переносятся ли пароли при выгрузке базы в .dt?
Да. Выгрузка содержит список пользователей с хэшами паролей. После загрузки в новую базу пользователи входят со старыми паролями. Поэтому файл .dt храните так же бережно, как саму базу.
Нужно ли менять пароли после увольнения администратора?
Да. Смените пароли всех администраторов базы, пароль пользователя СУБД, администратора кластера и учётных записей обменов. Уволенного пользователя не удаляйте, а запретите ему вход: так сохранится история изменений.
Можно ли запретить вход в 1С с пустым паролем?
Да. Включите в параметрах информационной базы минимальную длину пароля. Пользователей, у которых пароль уже пустой, проверьте вручную и задайте им пароль: настройка сработает при следующей смене пароля.

Источники

  • Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных», ст. 19
  • Уголовный кодекс РФ, ст. 272 «Неправомерный доступ к компьютерной информации»