вторник, 24 декабря 2013 г.

Восстановление / сброс утраченного пароля в 1С 8.2


Про восстановление (сброс) утраченного пароля для входа в конфигурацию 1С:Предприятие 8.2 в интернете написано немало. Простой поиск в Яндексе выдает тысячи ссылок, по которым обещается гарантированный сброс пароля, или же вообще вход в базу без пароля. Большинство из описанных способов сводятся к редактированию файла базы данных *.1CD в HEX редакторе и замене имени таблицы users.usr / v8users на любое другое. В результате чего, при запуске в 1С данной конфигурации платформа считает что список пользователей базы не определен и позволяет зайти в базу без пароля. Однако, при этом теряется ваш список пользователей. Что же делать, если есть БД 1С Предприятия и необходимо восстановить (или же "обнулить" пароль забывчивого пользователя). Для начала приведем несколько полезных ссылок, в том числе и на наши статьи:

Если кто-то был внимателен, то заметил выделенную жирным фразу. Теперь замечательная утилита Tool_1CD от awa позволяет редактировать 1CD. Чем мы непременно воспользуемся при восстановлении паролей. Допустим, что у нас есть база с тремя пользователями: Бухгалтер, Директор и Менеджер. Откроем ее при помощи Tool_1CD:


Как мы видим, утилита расшифровала BLOB поле DATA в таблице v8users и показала нам SHA1 хеш пароля пользователя Директор в base64-виде - QL0AFWMIX8NRZTKeof9cXsvbvu8= (естественно, вы можете попытаться расшифровать его с помощью любого сервиса подбора sha1 хещей, для данного примера сделать это крайне легко, т.к. он тестовый). Представим себе, что сделать этого нам не удалось, однако нам необходимо обеспечить пользователю Директор доступ к базе, например, с пустым паролем с возможностью последующей его смены. Делаем следующее, включаем режим редактирования таблиц:


Сохраняем содержимое поля DATA в файл. В рассматриваемом примере он будет носить имя 0ed3bc84-7a1d-4f3b-8142-47c77c02f5c5_DATA:


После чего мы можем отредактировать его в обычном блокноте:


Вспоминаем, что SHA1 хеш пустой строки - это da39a3ee5e6b4b0d3255bfef95601890afd80709 или же 2jmj7l5rSw0yVb/vlWAYkK/YBwk= , заменим в полученном файле хеш пароля пользователя на хеш пустой строки и загрузим его в базу подтвердив изменения при сохранении. В результате у нас получится что-то вроде:


Таким образом, используя только утилиту Tool_1CD с возможностью редактирования нам удалось сбросить (обнулить) забытый пароль пользователя 1С 8.2.

p.s. Данный вариант далеко не единственный, так, к примеру, на infostart'е есть тема Восстановление административного доступа к файловой базе данных, в ней представлен простой инструмент, который позволяет получить административный доступ к файловой базе 1С, если он, по какой-либо причине, был утерян.
p.p.s. Ну и естественно перед выполнением любых операций с информационной базой необходимо сделать ее резервную копию, думаю, про это никому лишний раз говорить не нужно.

12 комментариев:

  1. Спасибо огромное!

    ОтветитьУдалить
  2. У тебя в хеше указан пароль 123

    ОтветитьУдалить
  3. Спасибо! Замечательная статья - очень помогла.
    Добавлю (возможно очевидное, но я не сразу просек глядя на картинку) - пароль в файле 2 раза указан (одинаковые последовательности символов рядом). Т.е. менять на "хэш пустой пароль" тоже надо в этих 2 местах

    ОтветитьУдалить
  4. Кто смог найти альфу, чтобы редактировать? Инфостары не предлагать

    ОтветитьУдалить
  5. А если утилита НЕ расшифровала BLOB поле DATA в таблице v8users? У меня там пустота(

    ОтветитьУдалить
  6. Я смог найти Альфу, есть слава богу форумы, где добрые люди перевыкладывают файлики с инфостарта.
    Пароль сбросить получилось, автору большое спасибо!

    ОтветитьУдалить
  7. выложите программку в другое место, на инфостарте требуют платную подписку

    ОтветитьУдалить
  8. Спасибо и еще раз Спасибо!

    ОтветитьУдалить
  9. Очень помогли! плюсую +++++

    ОтветитьУдалить