 |
|

16.12.2011, 17:51
|
|
Новичок
Регистрация: 14.12.2011
Сообщений: 11
С нами:
7585526
Репутация:
0
|
|
Сообщение от alexey-m
- "вшить" в профиль одного из популярных клиентов валидный md5
Можно этот момент подробнее описать? Желательно с примерами. Спасибо.
Сообщение от ruster05
друзья это не фейк ?
Скачай и посмотри. Исходники приложены.
|
|
|

16.12.2011, 18:24
|
|
Познающий
Регистрация: 15.07.2009
Сообщений: 71
С нами:
8854881
Репутация:
35
|
|
для того, что бы вшить в профили нужно знать алго шифрования, если не знаете, то соответственно ничего не выйдет. К примеру с QIP 2005 проблем нет, достаточно, что бы в config.ini были заполнены следующие параметры:
Код:
[Main]
Custom1="тут шифрованный md5 хэш"
SavePass=Yes
MD5Login=Yes
ну и соответственно запускаем кип с параметром /cryptpass
в профилях типа *.qip ( QIP Infium, 2010, 2012), до 4 версии профиля сделать просто, с 5 уже сложнее, но тоже можно, опять таки надо знать алго шифрования, для официального клиента ICQ параметры хранятся в базе SQLite, там надо изменить параметр "StoredPassword", который представляет из себя строку вида Base64(md5(password)+md5(password))
для кипа можно сделать утилиту, если есть надобность в таковой?...
|
|
|

16.12.2011, 18:55
|
|
Новичок
Регистрация: 14.12.2011
Сообщений: 11
С нами:
7585526
Репутация:
0
|
|
Сообщение от alexey-m
- если уж так хочется написать свой клиент, то в делфях за основу можно взять компонент TICQClient, для авторизации по md5 там подправить нужно всего несколько строк кода
Подскажи какие именно строки править в последней версии TICQClient ? Или выложи исходники правленные. Спасибо.
Скачал QIP2005
Но не получилось подставить пароль. Есть хэш длинной
32 символа
Попробовал зашифровать пароль от другого акка - получилось 64 символа. Что-то не так.
/cryptpass прописан, в config тоже вписывал то что ты дал с хешем. Толку нет. Почему-то все равно просила ввести пароль. Может должен быть какой-нибудь автовход или хз. Можно подробнее?
|
|
|

16.12.2011, 19:36
|
|
Познающий
Регистрация: 15.07.2009
Сообщений: 71
С нами:
8854881
Репутация:
35
|
|
по поводу qip 2005 я же сказал нужно знать алго шифрования для хэша, он не хранится в открытом виде.
по поводу TICQClient править надо процу HSnac1707 в ICQClient.pas:
Код:
procedure TICQClient.HSnac1707(Flap: TFlapHdr; Snac: TSnacHdr; Pkt: PRawPkt);
var
KeyLen: Word;
Key: string;
State: Md5Context;
Digest: MD5Digest;
answ_pkt: TRawPkt;
pwdbuff: array[0..15] of byte;
pwd: string;
i:integer;
begin
KeyLen := GetInt(Pkt, 2);
Key := GetStr(Pkt, KeyLen);
// тут вычисляется хэш пароля и результат помещается в Digest
MD5Init(State);
MD5Update(State, PChar(Password), length(Password));
MD5Final(State, Digest);
// соответственно эти 3 строки, что выше нам не нужны, а Digest мы
// должны положить наш хэш в бинарном виде! (16 байт)
// как в Digest вы положите хэш это ваша задача
MD5Init(State);
MD5Update(State, PChar(Key), KeyLen );
MD5Update(State, PChar(DigestToBuff(Digest)), SizeOf(Md5Digest) );
MD5Update(State, PChar(CLIENT_MD5_String), length(CLIENT_MD5_String));
MD5Final(State, Digest);
CreateCLI_IDENT(@answ_pkt, FLUIN, DigestToBuff(Digest), True, FSeq);
FSock.SendData(answ_pkt, answ_pkt.Len);
end;
upd: для qip 2005 тузла для получения шифрованного md5, который то и нужно вставлять в Custom1
|
|
|

16.12.2011, 22:04
|
|
Новичок
Регистрация: 14.12.2011
Сообщений: 11
С нами:
7585526
Репутация:
0
|
|
Сообщение от alexey-m
upd: для qip 2005
тузла
для получения шифрованного md5, который то и нужно вставлять в Custom1
Во. Спасибо. Войти получилось. А вот пароль не восстановить/сменить. Надо знать либо старый пароль либо пароль от привязанного мыла.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|