Восстановление утерянного пароля к 1С 8.1, Небольшая инструкция |
Здравствуйте, гость ( Вход | Регистрация )
Восстановление утерянного пароля к 1С 8.1, Небольшая инструкция |
25.9.2014, 22:31
Сообщение
#41
|
|
Администратор Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 |
Что-то не очень понятен алгоритм расшифровки... Вы все правильно поняли. Только видимо вы не имеете представления об UTF BOM (Byte Order Mark). Для UTF-8 это как раз и есть EF BB BF. Дальше после них будут 7B 32 31 и т.д. В теме две рабочие реализации алгоритма, на Object Pascal и на 1C 8.x ... я думал все это в прошлом уже. -------------------- |
|
|
23.10.2014, 18:28
Сообщение
#42
|
|
Newbie Группа: Пользователи Сообщений: 2 Регистрация: 23.10.2014 Пользователь №: 1984 |
Приветствую. Вот тут набросал процедурку на SQL. Работает с таблицей v8users.
Код написан не красиво - так что ногами не бейте, но работает. В начале объявление и установка входных параметров: Имя пользователя, пароль какой надо установить, устанавливать его или только отобразить хеш. Как искать по хешу тут много говорилось. Из особенностей - пароль указывайте или цифровой или БОЛЬШИМИ английскими буквами. русскими у меня не работало, а английские 1С приводит к большим и в таком виде хранит. CODE DECLARE @UserName varchar(255)
DECLARE @NewPassword varchar(256) DECLARE @IsSetNewPswd int SELECT @UserName='123' SELECT @NewPassword='123' SELECT @IsSetNewPswd=1 DECLARE @Data varbinary(8000) DECLARE @DataHex varchar(8000) SELECT @Data = Data from v8users where Name=@UserName IF @Data IS NULL BEGIN PRINT 'Пользователь не найден' GOTO ExitUpd END DECLARE @i int DECLARE @MaxI int DECLARE @j int DECLARE @Ai int DECLARE @Aj int DECLARE @ResStr varchar(8000) DECLARE @currStr char(4) DECLARE @Base int SELECT @j=1, @ResStr='' SELECT @DataHex=master.dbo.fn_varbintohexstr(@Data) SELECT @DataHex=SUBSTRING(@DataHex,3, 8000) SELECT @currStr='0x'+substring(@DataHex,1,2) SELECT @Base=convert(int, convert(varbinary, @currStr, 1)) SELECT @MaxI=LEN(@DataHex)/2 SELECT @i=@Base+1 WHILE @i<@MaxI BEGIN IF @j>@Base SELECT @J=1 SELECT @currStr='0x'+substring(@DataHex,@i*2+1,2) SELECT @Ai=convert(int, convert(varbinary, @currStr, 1)) SELECT @currStr='0x'+substring(@DataHex,@j*2+1,2) SELECT @Aj=convert(int, convert(varbinary, @currStr, 1)) SELECT @ResStr=@ResStr+CHAR(@Ai ^ @Aj) SELECT @j=@j+1 SELECT @i=@i+1 END DECLARE @PswdPos1 int DECLARE @PswdPos2 int SELECT @PswdPos2=CHARINDEX('}', @ResStr, 1) SELECT @PswdPos1=CHARINDEX('"', @ResStr, @PswdPos2) SELECT @PswdPos2=CHARINDEX('"', @ResStr, @PswdPos1+1) PRINT 'Хеш SHA1 старого пароля: '+SUBSTRING(@ResStr, @PswdPos1+1, @PswdPos2-@PswdPos1-1) IF @IsSetNewPswd=0 GOTO ExitUpd declare @NewHash varbinary(max) declare @encoded varchar(max) select @NewHash = HASHBYTES ( 'SHA1', @NewPassword) set @encoded = cast('' as xml).value('xs:base64Binary(sql:variable("@NewHash"))', 'varchar(max)') SELECT @ResStr=REPLACE(@ResStr, SUBSTRING(@ResStr, @PswdPos1+1, @PswdPos2-@PswdPos1-1), @encoded) --Кодируем выходной массив DECLARE @ResHex varchar(8000) SELECT @ResHex=substring(@DataHex,1,@Base*2+2) SELECT @j=1, @i=1 WHILE @i<=LEN(@ResStr) BEGIN IF @j>@Base SELECT @J=1 SELECT @currStr=substring(@ResStr, @i, 1) SELECT @Ai= ASCII(@currStr) SELECT @currStr='0x'+substring(@ResHex,@j*2+1,2) SELECT @Aj=convert(int, convert(varbinary, @currStr, 1)) SELECT @ResHex=@ResHex+SUBSTRING(master.dbo.fn_varbintohexstr(convert(binary(1), (@Ai ^ @Aj))),3,2) SELECT @j=@j+1 SELECT @i=@i+1 END SELECT @ResHex='0x'+@ResHex DECLARE @Res varbinary(8000) SELECT @Res=Convert(varbinary(max), @ResHex,1) UPDATE v8users SET Data=@Res where Name=@UserName ExitUpd: PRINT 'Завершено' |
|
|
16.12.2014, 7:44
Сообщение
#43
|
|
Newbie Группа: Пользователи Сообщений: 1 Регистрация: 16.12.2014 Пользователь №: 2012 |
А кто-нибудь знает как это все обратно зашифровать? Я понимаю, что можно записать [РазмерМаски][Маска][НешифрованныеДанные^Маска]. Вопрос - от куда взять маску? 1С хранит её где-то или генерирует случайнм образом?
|
|
|
16.12.2014, 16:18
Сообщение
#44
|
|
Newbie Группа: Пользователи Сообщений: 1 Регистрация: 16.12.2014 Пользователь №: 2013 |
А как все таки быть когда 2 разных хэша?!
|
|
|
29.1.2015, 1:57
Сообщение
#45
|
|
Newbie Группа: Пользователи Сообщений: 1 Регистрация: 29.1.2015 Пользователь №: 2035 |
Привет, ребят.
Не получается сбросить пароль! Tool_1CD выдает: {0c1fabc5-91ed-4c56-85af-8df7a500d4d8,"Программист","�","Программист",00000000-0000-0000-0000-000000000000, {2,a580fbd0-e2fd-4297-a2a5-a3e42411d1b8,8a92f91b-652a-49a8-a4f0-ddaf36410c71},d1e38cbe-0056-46d0-9e05-07adcb148486,1,1,,0,0,"FkahP0VleA4kVtCeSQOvW2cMUDQ=","j+wGOr/V+VaHwCtnEuY+Tgn3hLU=",2,8,20131111201359,0,0} Оба SHA-1 пропускаю через сайт (хэш получаю), сую в PasswordsPro, но уже 4-й день ищет пароль. Не могу понять, что делаю не так. Помогите, пожалуйста |
|
|
30.1.2015, 12:46
Сообщение
#46
|
|
Администратор Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 |
Оба SHA-1 пропускаю через сайт (хэш получаю), сую в PasswordsPro, но уже 4-й день ищет пароль. Не могу понять, что делаю не так. Помогите, пожалуйста Значит неверно выбраны параметры перебора. Например, если в пароле используются символы кириллицы, а у вас для перебора стоит набор A..Z, то естественно он не подберется. И т.п. Причин может быть масса. По настоящему сложные пароли, вроде "Хобот!Nosoroga09011956" вы вообще вряд-ли подберете. Также, в вашем случае рекомендуется ознакомиться со статьей Восстановление / сброс утраченного пароля в 1С 8. в нашем блоге. В этом случае перебирать вообще ничего не придется. -------------------- |
|
|
9.2.2015, 15:45
Сообщение
#47
|
|
Newbie Группа: Пользователи Сообщений: 2 Регистрация: 23.10.2014 Пользователь №: 1984 |
Поддерживаю вопрос "set2333"
Что-то с наскоку не врублюсь как рассчитать "правильную" маску для записи новой строки в базе. Пока длина исходной строки не меняется, со старой маской подсовывание нового хеша и шифрование прокатывает. А как быть если надо пользователю роль добавить - например полные права. P.S. Дописал код, надо менять и второй хеш, на некоторых базах только первый не работает. |
|
|
30.8.2015, 1:44
Сообщение
#48
|
|
Newbie Группа: Пользователи Сообщений: 3 Регистрация: 31.10.2012 Пользователь №: 1366 |
А как насчет файла описания баз на сервере: 1cv8\srvinfo\reg_1541\1CV8Clst.lst???
P.S. Там тоже есть base64 строки. При добавлении новой базы, правда, все строки паролей меняются, значит наверное есть какая то соль, которая участвует в генерации хэшей. |
|
|
22.4.2016, 16:54
Сообщение
#49
|
|
Newbie Группа: Пользователи Сообщений: 2 Регистрация: 22.4.2016 Пользователь №: 2249 |
Здравствуйте,
помогите, пожалуйста, узнать пароль {39beb033-4b90-4afc-a40d-7399e5995e4e,"Администратор","�","Администратор",073f0938-ac56-4ce4-a87e-f155cfde0097, {2,76702e9e-fa7a-4b98-befa-f9b37db2dae0,e960b3eb-ad6f-4804-b318-acbcdc4b8f98},00000000-0000-0000-0000-000000000000,0,1,,0,0,"M2/RV2RRhL7WL99eM/vkHxoEcRE=","M2/RV2RRhL7WL99eM/vkHxoEcRE=",2,3,20160421093405,0,0} версия 8.2.14.08 Хотела отменить ввод пароля при входе и после этого вообще не могу войти. |
|
|
24.4.2016, 19:26
Сообщение
#50
|
|
Администратор Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 |
-------------------- |
|
|
27.4.2016, 7:40
Сообщение
#51
|
|
Newbie Группа: Пользователи Сообщений: 2 Регистрация: 22.4.2016 Пользователь №: 2249 |
|
|
|
12.7.2016, 22:42
Сообщение
#52
|
|
Newbie Группа: Пользователи Сообщений: 2 Регистрация: 12.7.2016 Пользователь №: 2352 |
Помогите восстановить пароль?
если {1, {6255991b-1392-4fc3-a0a9-c7da7846dfcd,"Денисов","","Денисов А.В.",00000000-0000-0000-0000-000000000000, {17,76702e9e-fa7a-4b98-befa-f9b37db2dae0,c9503a96-e665-4b7c-8a9a-17ff9258da3f,89ab9c80-cd3c-43f8-beea-e68215b09760,f79bada2-838f-4e4f-a017-935cf671a70c,0c6db8b3-1a34-440e-848e-e690eb91e018,7e84901c-cb7f-437c-a135-0902cd47acb6,60e8534c-39e8-4ce1-b621-fbb378f534e0,497ce8f3-f6f0-4da8-aeb0-0fa01bb26dc6,e5c73637-e8d6-47e0-9c15-2fa1802ee5b0,c1613f80-4517-4175-a79f-4fc7ba4820a3,56e040c4-7b4d-4385-b59f-6d4334880936,b40535a1-8cd3-4383-974d-816391e7ba7c,64d270fd-71ce-4602-936a-c969e63bf9ac,8ff5da57-6323-4775-a8e6-7bdc91747bdc,eac283f6-0834-4ad8-8f44-d899ba598005,65e8fcc1-9f2d-4ee6-8ce0-7a81178762f0,4e7edc80-a3f6-416f-9208-fa5a2c14d557},00000000-0000-0000-0000-000000000000,1,1,,0,0,"2jmj7l5rSw0yVb/vlWAYkK/YBwk=","2jmj7l5rSw0yVb/vlWAYkK/YBwk=",2,1,20160705154326,0,0},1,1} Заранее спасибо! |
|
|
13.7.2016, 0:25
Сообщение
#53
|
|
Администратор Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 |
-------------------- |
|
|
Текстовая версия | Сейчас: 22.1.2025, 9:35 | |