Удалить пароль 1C в 8.+ версии

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

Вердикт и указ сверху: пароль ломать.

Кружечку кофе...

cl
~l

... и вперед!


Рекогнисцировка показала, что запароленная учётная запись элементарно обходилась в 7й версии - просто удалением файла users.usr (после чего система сразу запускалась, не запрашивая учетку/пароль). Поковыряв директории базы заметил, что в 8й такого нету.. Поиск настроек существенно не помог - конфигов особо не видно, за исключением 2-5 килобайтных файлов, что на конфиг 1с явно не тянет...
Filemon от sysinternals обращений на проверку аккаунтов не выявил..

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

Значит все же ломать. если не менялось, то где-то должен быть этот users.usr.. Попытка поискать прямым текстом в файлах ничего не дала.. Перерыв на кофе и раздумья.. Попытка проанализировать содердимое подобного файла от 7й версии и определить сигнатуры успехом не удалась (В принципе, имея несколько файлов учетных записей можно было найти сигнатуры сравнением и пытаться искать по ним). В дело пошел поиск по возможным именам файла... Успех принес только регэксп (u.*?s.*?e.*?r.*?s.*?)|(u*?.s.*?r.*?). Он выдал, что сие дело находится прям в 250-метровой базе .1cd и имеет вид u s e r s.u s r.

Ну все, пипец котенку... Делаем бекап вашего .1cd, а то может плохо кончиться =))

Наливаем кофе, берем хекс едитор, открываем файлик в хексе, пьем кофе =) ну или открываем файл и идем наливать кофе - файлик большой, может занять некоторое время.... По открытии делаем поиск данной строки (или в хексе 75 00 73 00 65 00 72 00 73 00 2Е 00 75 00 73 00 72) и идем пить еще кофе (Coffee - makes you do stupid things faster with more energy Laugh )... Как найдется - плавно подводим курсор на следующий бит после последней "r", томным взглядом окидываем блок... видим, что до юзерсов идут сплошь null, после немного данных вида 00 20 00 20 00 20 00 20 00 20 00 20, пару строк произвольных и опять null... Это и есть учетная запись.. Последний раз любуемся, проверяем на месте ли курсор, шлем прощальный поцелуй и затираем все нулями до следующего блока нулей.. Файл учетных записей пуст - база откроется без запроса имени пользователя и пароля.

75 00 73 00 65 00 72 00 73 00 2Е 00 75 00 73 00 72 00 00 00 00 00 .. (00)

Красота)
Запускаем - все супер) никаких вопросов о пароле...)
Надеюсь пригодится...=)