Технология восстановления пароля 1С v8

Восстановление пароля от 1С - такая ли это невыполнимая задача? По результатам этого небольшого исследования оказалось, что в большинстве случаев пароль восстановить не просто, а ОЧЕНЬ просто... В данной статье представлен конкретный метод восстановления пароля пользователя 1С и используемые для этого инструменты.

1. Общая информация

Все мы знаем, что сами пароли пользователей в базе 1С не хранятся. Хранятся только некие "значения" этих паролей. Например, хранимое значение пароля "password" имеет вид "W6ph5Mm5Pz8GgiULbPgzG37mj9g=,ESu3kTBHkd3PaS4p/VzxSbNf6jc=". Сохранённые значения паролей можно получить через свойство СохраняемоеЗначениеПароля объекта ПользовательИнформационнойБазы:

СохраняемоеЗначение = ПользовательИнформационнойБазы.СохраняемоеЗначениеПароля;

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

Но это всё неинтересно, т.к. мы в этом случае обладаем административными правами и имеем доступ к базе. А что делать, если мы не можем войти в базу ни под каким пользователем ?

В статье http://infostart.ru/public/151254, ранее выложенной на Инфостарте, описан метод сброса списка пользователей для получения доступа в базу. Это отличный способ, известный уже довольно давно, но раньше приходилось всё делать руками в hex-редакторе. Автор статьи автоматизировал этот процесс и теперь стало довольно просто получить доступ к базе. Однако реально узнать пароль конкретного пользователя не получится. Поэтому я задался вопросом, а можно ли это сделать и насколько это реально ?

2. Получение хэша пароля

Не знаю, секрет это или не секрет, но пароль в 1С хранится в виде хэша, сформированного из строки пароля по алгоритму SHA-1 http://ru.wikipedia.org/wiki/SHA-1 и упакованного по алгоритму base64.

Т.о. хэш равен:

Хэш = СтрЗаменить(Base64Значение(Лев(СохраняемоеЗначение, Найти(СохраняемоеЗначение, ",") - 1)), " ", "");

Следует отметить, что СохраняемоеЗначение - это строка, которая хранит в себе два значения: для пароля и для пароля в верхнем регистре, разделенные запятой. Поэтому для получения хэша нужно взять первую (левую) часть сохраняемого значения.

Всё хорошо, но откуда нам взять это сохраняемое значение ? Если права есть, то мы можем зайти в базу и получить его описанным выше способом. Если прав нет и доступа в базу вообще нет - есть замечательная утилита Tool_1CD http://infostart.ru/public/19633. С её помощью можно открыть файл *.1cd, затем открыть таблицу V8USERS, выбрать пользователя и посмотреть, что хранится в поле DATA. Помимо всего прочего в DATA хранится сохраняемое значение пароля. Оно то нам и нужно. Этот способ актуален для файлового варианта работы с базой.

Для клиент-серверного варианта вопрос получения содержимого поля DATA таблицы V8USERS остается пока открытым. Может кто-то подскажет, как извлечь оттуда данные ? В частности, можно воспользоваться выгрузкой базы в формате *.dt (архивная копия наверняка где-то завалялась, необязательно актуальная), чтобы получить *.1cd, а дальше действовать через утилиту Tool_1CD.

3. А что дальше ? Хэш - не пароль

Итак, мы имеем хэш пароля, сформированный по алгоритму SHA-1. А это уже что-то.

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

Скептики скажут, что для восстановления сложного пароля понадобится не одна сотня лет. Это так в общем случае, но есть несколько НО:

  • 1. Львиная доля пользователей баз 1С не заботится о сложности пароля и зачастую ограничивается только цифрами или несколькими буквами.
  • 2. Часто пароли всех пользователей, в том числе и админов, в базе имеют один и тот же вид. Например, только 5 цифр.
  • 3. Всегда можно узнать у какого-либо пользователя ИБ какого примерно вида были пароли. А это информация для маски перебора.
  • 4. Существует масса словарей и сервисов (сайтов) с уже готовыми комбинациями пароль = хэш. Т.е. достаточно ввести хэш и система по своей базе найдет соответствующий ему пароль.

Все это повышает вероятность получения пароля путем перебора.

В интернете существует множество утилит, позволяющих сформировать хэш SHA-1 по переданной строке. Также существуют утилиты по восстановлению пароля по хэшу методом перебора или по словарю, по различным маскам. Например, есть интернет-сервис, на котором хранится довольно большой словарь уже подобранных хэшей. Им можно воспользоваться здесь: http://www.md5decrypter.co.uk/sha1-decrypt.aspx.

Итак, что имеем в итоге 3-х пунктов:

  • 1. Узнаем сохранённое значение пароля для выбранного пользователя: либо из самой базы (если есть права), либо используя утилиту Tool_1CD (файловая база), либо вытягиваем данные из поля DATA таблицы V8USERS (клиент-сервер).
  • 2. Получаем хэш SHA-1 пароля из левой части сохранённого значения: обработка прилагается.
  • 3. Ищем пароль: формируем хэш строки, сравниваем с полученным хэшем (утилиты перебора по маске), либо интернет-сервисы с базами готовых словарей.

4. Много буковок, конкретные шаги по восстановлению пароля

4.1. Получаем сохранённое значение пароля нужного пользователя. Берем базу *.1cd (предварительно можно скопировать файл базы, чтобы не блокировать для работы других пользователей), открываем ее в Tool_1CD, выбираем нужного пользователя в таблице V8USERS и смотрим содержимое поля DATA. Копируем в буфер обмена нужный кусок строки.

4.2. Запускаем обработку получения хэша в любой базе на платформе 8.2 (я создал пустую базу). Обработка элементарная, поэтому ее легко можно сконвертировать под любую другую платформу при необходимости. Копипастим сюда сохранённое значение пароля (из п. 4.1), вводим нужную маску (рекомендуется, иначе состариться успеем) и нажимаем "Восстановить пароль".

При восстановлении пароля используется консольная утилита sha1.exe http://www.egoroff.spb.ru/opinions/26.html. Она позволяет как сформировать хэш SHA-1 по переданной строке, так и восстановить строку по словарю (маске). Обработка формирует хэш SHA-1 по переданному значению сохраненного пароля, затем формирует строку запуска утилиты sha1.exe и запускает её. Вобщем, кому интересно, код открыт, там всё просто. Файл sha1.exe должен лежать в одном каталоге с обработкой.

4.3. Перебор...

Видно, что для пароля от 0 до 6 символов и содержащий буквы и цифры перебор занимает ВСЕГО 12 минут. Сходил, кофе сделал, вернулся - пароль уже подобран !

4.4. Результат

К слову сказать, мой супер пароль был подобран за 3.5 минуты (6 символов, буквы и цифры)... Даже кофе не успел сделать. Вот такие результаты !

Параллельно решил проверить хэш на сайте: результат - мгновенное восстановление пароля ! Кстати на этом сайте хэши можно задать списком, т.е. восстановить пароли сразу всех пользователей базы.

5. Джентельменский набор

  • 1. Tool_1CD - http://infostart.ru/public/19633
  • 2. Обработка ВосстановлениеПароля1С - прилагается
  • 3. sha1.exe - http://www.egoroff.spb.ru/opinions/26.html
  • 4. Интернет-сервис - http://www.md5decrypter.co.uk/sha1-decrypt.aspx
  • 5. Обработка АудитПаролейПользователей - прилагается

Отдельное спасибо авторам утилит Tool_1CD и sha1.exe !

6. Подведем итоги

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

Например, пароль, состоящий из:

  • 1. Только из цифр 0..9, длиной максимум 9 символов восстанавливается за максимум 6.5 минут.
  • 2. Только английских букв, длиной 7 символов - за максимум 44 минуты.
  • 3. Буквы и цифры, длиной 6 символов - максимум 12 минут.

Т.о. цифры вполне реальные и восстановление пароля становится простым делом техники.

Выводы делайте сами )

7. Причина публикации статьи

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

Комментарии

2
  • Дмитрий
    весьма познавательно. спасибо!
  • polernruz

    А где обработки можно скачать? Я что-то не нашел.

Бесплатно с Отчетность

Ответственность бухгалтера после увольнения

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

Иллюстрация: Вера Ревина/Клерк.ру
1
Бухгалтерский учет

Бухучет для начинающих: рассказываем о дебетах, кредитах и первичке простым языком

Как устроена профессия бухгалтера, с какими задачами он работает и что означают все эти странные сокращения (НДС, ПСН, ЕНС и др.) — разбираемся в основах бухгалтерии.

Иллюстрация: Вера Ревина /Клерк.ру

Блогер Ивлеева должна налоговой больше 20 млн рублей

Сумма долга Анастасии Ивлеевой выросла до 20,9 млн рублей. Блогер не может выплатить задолженность уже три месяца.

Курсы повышения
квалификации

18
Официальное удостоверение с занесением в госреестр Рособрнадзора
Бесплатно с НДФЛ

Новые налоговые базы и ставки НДФЛ с 2025 года: таблица

С 2025 года вводят новую прогрессивную шкалу НДФЛ.

Новые налоговые базы и ставки НДФЛ с 2025 года: таблица
Кадры

👍 Теперь в бизнес-аккаунте на «Клерке» можно продвигать свои вакансии

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

Верховный суд: валютный долг не должен индексироваться за просрочку

ВС РФ вынес решение, что валютный долг, в отличие от рублевой задолженности, нельзя проиндексировать за длительную просрочку.

Опытом делятся эксперты-практики, без воды

👎 Освобожденных от НДС упрощенцев не освободили от счетов-фактур. Прогноз налогового инженера

Если доход за предыдущий год не превышает 60 млн рублей, в текущем году при УСН будет освобождение от НДС по статье 145 НК.

На сотрудников из стран ЕАЭС тоже надо подавать уведомление в миграционную службу

При приеме на работу иностранцев из стран ЕАЭС надо уведомлять Управление по вопросам миграции МВД о заключении с ними трудовых или гражданско-правовых договоров.

Минэкономразвития отмечает уверенный рост организаций в «русских офшорах»

Сейчас в специальных административных районах зарегистрировано 428 международных холдинговых компаний. Резиденты САР могут пользоваться налоговыми льготами, а также применять корпоративное право той страны, из которой организация решила переехать в РФ.

РСПП поддержал законопроект о платформенной занятости в РФ

Президент РСПП Александр Шохин концептуально поддержал законопроект «О платформенной занятости в Российской Федерации».

Прогрессивная шкала налогов всё же будет введена

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

В базе «Клерка» уже больше 1 000 актуальных резюме!

Больше тысячи бухгалтеров, кадровиков, юристов, руководителей, финансистов и специалистов по 1С ищут работодателей с сервисом Клерк.Работа.

⚡️ Итоги дня: с второклассницы хотят взыскать 700 тысяч рублей, мошенники обманывают пользователей Ozon, а у Xiaomi сбой в работе умных устройств

Подготовили обзор главных событий дня — 16 июля 2024 года. Все самое интересное, что писали и обсуждали в сети, в одной подборке.

Минцифры ужесточит правила оплаты мобильной связи

У абонентов при пополнении баланса наличными будут требовать паспорт.

Кадры

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

Главной сложностью при подборе персонала опрошенные называют недостаточную компетенцию кандидатов на открытую вакансию — об этом говорят 54% респондентов.

Банки

Китайские партнеры перестали получать платежи через «ВТБ Шанхай»

Импортеры не могут отправить деньги китайским поставщикам через шанхайский филиал ВТБ.

Банки

ЦБ будет оперативно рассматривать сообщения об ошибочном включении в реестр мошенников

Те, кто по ошибке попал в список Центробанка, смогут оспорить это решение и разблокировать возможность проводить денежные переводы.

Как оспорить решение трудовой инспекции: разъяснения Роструда

На портале Госуслуги можно запустить процедуру досудебного обжалования решений Роструда.

Высокий кредитный рейтинг — не обязательное условие одобрения кредита

С высоким персональным кредитным рейтингом (ПКР) не всегда одобрят кредит.

Интересные материалы

Медицина

Закупка медоборудования в условиях санкционного давления: пошаговая инструкция 

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

Закупка медоборудования в условиях санкционного давления: пошаговая инструкция