ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

11.04.2009, 07:26
|
|
Участник форума
Регистрация: 22.11.2008
Сообщений: 142
Провел на форуме: 636446
Репутация:
32
|
|
ICQ протакол
Всем привет!
Это опять я и опять с вопросом.
Господа подскажите пожалуйста где можно прочитать про реализацию ICQ протакола через Delphi посредствам WinSock2?
Очень интересует процес подключения и смены пароля.
Заранее спасибо.
Буду благодарен за любой материал по теме))
|
|
|

11.04.2009, 08:31
|
|
Познавший АНТИЧАТ
Регистрация: 27.08.2007
Сообщений: 1,107
Провел на форуме: 5386281
Репутация:
1177
|
|
Пиши в AOL
|
|
|

11.04.2009, 09:58
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
бери снифер CommView 5.0 он умеет расшифровывать ICQ протокол.
Запускай его и начинай коннектится к аське и потом меняй пароль.
А потом в снифере посмотришь как строятся пакеты. Главная вешь - подключение делай небезопасное! Потому что при безопасном подключении пас передается в md5
(лишний гемор при реализации). А при обычном подключении пас ксорится типа так
Код:
xor_mas:array[1..16] of byte =($F3,$26,$81,$C4,$39,$86,$DB,$92,$71,$A3,$B9,$E6,$53,$7A,$95,$7c);
function xorpass(pass:string):string;
var
x:integer;
s:string;
begin
s:='';
for x:=1 to length(pass) do s:=s+chr(xor_mas[x] xor ord(pass[x]));
result:=s;
end;
|
|
|

11.04.2009, 10:25
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Вообще протокол довольно простой и состоит примерно из такой структуру
Theader=packed record
hz1:byte; // у меня всегда 2Ah
channel_id:word;
sequence_number:word;
data_len:word;
end;
далее кодет код 00000001 (dword) - его динна 4 байта и входит в data_len
затем идут последовательно блоки данных примерно такого формата:
TData=packed record
type:word;
len:word;
data:array [0..len-1]; // в делфе такое не сделаешь это просто показываю какой длинны данные.
end;
Через снифер там дальше поймешь какие типы за что отвечают. Коды типов действеют и для принимаемых и для посылаемых данных
0001 - логин
0002 - пароль ксореный
0005 - адрес куда нужно коннектится после авторизации
0006 - куки (чаще всего 256 байт данных)
P.S при ответе на авторизацию сервер строит чуть другой пакет
Это всё для данных для авторизации. Для общения и других вещей(типа смена пароля) там чуть по другому уже идут запросы.
|
|
|

11.04.2009, 11:23
|
|
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме: 5111568
Репутация:
2399
|
|
линк по теме:
http://iserverd1.khstu.ru/oscar/
..можешь еще перехватывать wireshark'ом (:
http://www.wireshark.org/docs/dfref/i/icq.html
https://forum.antichat.net/showthread.php?t=97460
|
|
|

11.04.2009, 11:33
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
писал поверку пары юин пасс на валидность на perl
в документации по протоколу все очень хорошо описано. А вообще вооружись сниффером (я люблю ettercap - с nixов с ним еще подружился).
Если надо могу выложить исходники perl скрипта.
Последний раз редактировалось Gar|k; 11.04.2009 в 11:41..
|
|
|

11.04.2009, 11:47
|
|
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме: 5111568
Репутация:
2399
|
|
вон на перле:
https://forum.antichat.ru/thread102110.html
только после изменений протокола, там надо кое-что переписать..
|
|
|

11.04.2009, 11:53
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
Ага, а я свой уже выложил )))
http://forum.antichat.ru/thread115377.html
|
|
|

12.04.2009, 03:22
|
|
Участник форума
Регистрация: 22.11.2008
Сообщений: 142
Провел на форуме: 636446
Репутация:
32
|
|
А ещё вот вопросик интересный.
Возможно ли по протаколу ICQ проверить пароль от номера,
но так, чтобы если на этом номере в момент проверки кто-то сидит,
то его не выкинуло?
|
|
|

12.04.2009, 12:27
|
|
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме: 991929
Репутация:
395
|
|
нет это прописано в протаколе.... вот в скайпе хоть с 4 клиентов разом под одним юзером сиди ему ваще пох ))
а чела не просто выкенет а еще вылезет ошибка
типа на ваш номер подключились с другого компутера... ваще палевно
я ваще если чето вылетает или там отрубает от сервера сразу пасс меняю )
Последний раз редактировалось Gar|k; 12.04.2009 в 12:29..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|