My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
  Advanced search   Search tips   Subscriptions
Issue 156: icq update protocol version
15 people starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  ----
Closed:  Feb 2009


 
Reported by IS.U...@gmail.com, Jan 21, 2009
pyicq-t was received message from contact 1:


=============================
         System Message
=============================
The version you are using is not supported by ICQ.  Download a free
authorized ICQ version from ICQ's official website.


Pyicq-t 0.8.1.1 
Jan 21, 2009
#1 vitaliy....@gmail.com
Same error on version 0.8b.
Jan 21, 2009
#2 zapparello
Same here :-( What a irony, 5 days ago pyicq-t was updated.

Tried four different login servers:
64.12.200.89 205.188.179.233 205.188.153.121 205.188.153.121

all of them reject pyicq-t.

Gosh, wish I would be able to drop ICQ altogether.

Jan 21, 2009
#3 balance...@gmail.com
Same error in 0.8.1.1
Jan 21, 2009
#4 Mur...@gmail.com
Confirm on 0.8.1 and 0.8.1.1 too.
ICQ update your protocol.
Kopete, Pidgin, QIP, Miranda and some other clients have this issue too. At official
sites of non-official ICQ messengers I see the messages that this issue will be
solved in newer versions that will be releases as short as possible.
Jan 21, 2009
#5 Mur...@gmail.com
Some people tell that helps setting "Client ID" as "ICQ5" on the non-official ICQ client.
Jan 21, 2009
#6 nordheim...@mail.ru
"Some people tell that helps setting "Client ID" as "ICQ5" on the non-official ICQ
client."

how to make it in PyICQ config ???
Jan 21, 2009
#7 springhe...@gmail.com
the same problem with 0.8b-0.8.1.1, but there is a strange: Pidgin is working (Debian
Lenny)
Jan 21, 2009
#8 demm...@gmail.com
i think problem in that lines  (marked >):
  self.sendFLAP('\000\000\000\001'+
                TLV(TLV_USERNAME,self.username)+
                TLV(TLV_ROASTPASSARRAY,encpass)+
                TLV(TLV_CLIENTNAME,'ICQBasic')+
>                TLV(TLV_CLIENTID,"\x01\x0a")+
>                TLV(TLV_CLIENTMAJOR,"\x00\x14")+
>                TLV(TLV_CLIENTMINOR,"\x00\x22")+
                TLV(TLV_CLIENTLESSER,"\x00\x01")+
                TLV(TLV_CLIENTSUB,"\x06\x66")+
                TLV(TLV_CLIENTDISTNUM,"\x00\x00\x06\x66")+
                TLV(TLV_LANG,"en")+
                TLV(TLV_COUNTRY,"us"),0x01)
But i dont know right values
Jan 21, 2009
#9 vitaliy....@gmail.com
I think you can use sniffer (tcpdump, wireshark) to get right values.
Jan 21, 2009
#10 roman.sh...@gmail.com
pidgin downloaded right from the official site is not working.
only that who not reconnected today are still online :)
Jan 21, 2009
#11 Mur...@gmail.com
My friend have this problems with ICQ on Pidgin 2.5.2-0ubuntu1 on Linux, but have
succesfully connected to ICQ at now with Pidgin 2.5.3 on Windows.
I think that we can sniff the Pidgin 2.5.3 on Windows traffic to solve the problem. 
Jan 21, 2009
#12 roman.sh...@gmail.com
details how to connect here:
http://www.forum.mista.ru/topic.php?id=384750#93

miranda with some deep "magic" connected as ICQ for MAC.
Jan 21, 2009
#13 bars...@gmail.com
I have made pyicq to work through the server: login.alwayson.im:443
And I am very nice chat with bot here :-)






Jan 21, 2009
#14 andr.smi...@gmail.com
Do you change TVL_CLIENTNAME to "Mac ICQ" ?
Jan 21, 2009
#15 roman.sh...@gmail.com
just changed only pyicq's server and port to login.alwayson.im:443
 and everything working, not touched client name.
Jan 21, 2009
#16 springhe...@gmail.com
thanks, it's working now, without any modification... but i have suspicions about bot )) 
Jan 21, 2009
#17 andr.smi...@gmail.com
Waiting for patch that allow to use standard login servers... Bot is annoying %)
Jan 21, 2009
#18 andr.smi...@gmail.com
Some investigation about this problem...
I'm VERY sory, but it's on russian...
Maybe anyone can translate it for english-speaking people...

http://forumlocal.ru/showthreaded.php?Cat=&Board=soft&Number=8273715&fullview=&src=&o=&vc=1
Jan 21, 2009
#19 mathemonkey
As far as I know leading developer can read in Russian. Is translation still needed?

Main theses are:
1) only Russian users are affected — you're not affected if you use non-Russian proxy
2) full list of client capabilities is checked, it should match with `original` client.
3) there MAY be some secret key somewhere that is either hardcoded in original client
or is calculated with some secret algorithm inside of original client
4) there is assumption, that initial `sequence id` is the `secret key` as most of
alternative clients generate random number for it and `original` client MAY have
another algorithm for seqid generation.
Jan 21, 2009
#20 springhe...@gmail.com
yes only russian... the issue board in this thread is so empty for global problem
Jan 21, 2009
#22 yo...@cs.msu.su
Solution for this problem for miranda icq+ plugin was just published.

SVN is at http://sss.chaoslab.ru:81/svn/icqjplus/

Hopefully somebody can port this to pyicqt ?
Jan 21, 2009
#24 yo...@cs.msu.su
No, they did not commit it yet. However binaries already available.
Jan 21, 2009
#25 Equidamoid
http://habrahabr.ru/blogs/im/49778/ (on Russian)

solution for Miranda:
set clientname to icq6
set proto version = 12
add capability "41 49 4D 00 00 00 00 00 00 00 00 00 00 00 00 00"

does anyone know how to apply it to pyicq-t?
Jan 21, 2009
Project Member #26 r000ns...@gmail.com
Please, don't panic
Jan 21, 2009
#27 V.Titare...@gmail.com
Don't forget to make some notes if you find a solution for this problem.
Jan 22, 2009
#28 nordheim...@mail.ru
UPD3: Сейчас нашли корреляцию между временем входа и используемым номером
последовательности, так что есть зацепка, что для генерации все же используется какое
то случайное число, но эту версию надо проверять. Так же как оказалось коннектятся
все старые клиенты, даже icq2003b, и TestBuddy 2002 года. Плюс есть несколько
сообщений о том что у некоторых провайдеров в Омске все работает нормально. В общем
сейчас конечный вывод — «асечники» нашли коренное различие между официальным клиентом
и всеми клонами и активно его используют.

>>UPD3: Where have been found some correlation between time of login and used
sequences number, so looks its using some random  number for generating it. But it
has to be tested first. We find out that old clients, even icq2003a & TestBuddy 2002
is now working. ...
Jan 22, 2009
#29 m.surkiz
temporary solution use 'tor', example for FreeBSD:

1) cd /usr/ports/security/tor && make install clean
2) echo 'tor_enable="YES"' >> /etc/rc.conf
3) /usr/local/etc/rc.d/tor.sh start
4) vim /usr/local/etc/jabber-pyicq.xml  (add use socksProxyServer 127.0.0.1 
socksProxyPort 9050)
5) /usr/local/etc/rc.d/jabber-pyicq-transport.sh restart


Jan 22, 2009
#30 mathemonkey
I want to mention that it is insecure solution as many of tor exit-nodes have
sniffers installed and ICQ does not encrypt it's traffic.
Jan 22, 2009
#31 vi...@wagner.pp.ru
>I want to mention that it is insecure solution as many of tor exit-nodes have
sniffers installed and ICQ does not encrypt it's traffic.

Do you think AOL doesn't monitor ICQ traffic? ICQ is insecure by definition, unless
you use end-to-end encryption.
Jan 22, 2009
#32 maxim.br...@gmail.com
There is option <usemd5auth> in config.xml It should prevent passwords leaking.
Jan 22, 2009
#33 mathemonkey
Vitus, AOL may monitor traffic, but some of exit-nodes DO monitor, so it should be
considered while using TOR network. This is important as there is market for 6-digits
and 7-digits ICQ uins. Also spammers use to steal ICQ accounts to send spam to user's
contact-list.

Right, Maxim, that's exactly what I meant. One should not use TOR unless md5auth is
enabled.
Jan 22, 2009
#34 vi...@wagner.pp.ru
> This is important as there is market for 6-digits
and 7-digits ICQ uins.

Оh, you are about passwords. And I've meant data. I just forgot that there might be
people who are smart enough to run own jabber-icq transports, and don't use secure
authentication.

Jan 22, 2009
#35 andr.smi...@gmail.com
m.surkiz: Thanks!!!! It's working!
Jan 22, 2009
#36 V.Titare...@gmail.com
<32> I can't find any option <usemd5auth> in pyicq-t config.xml
(http://pyicqt.googlecode.com/svn/trunk/config_example.xml).

Where can I find this option? This is undocumented feature?
Jan 22, 2009
#37 maxim.br...@gmail.com
Look at https://code.google.com/p/pyicqt/wiki/Git
pyicq-t in git repo.
Jan 22, 2009
#38 Mur...@gmail.com
m.surkiz: Thanks, it's working for me too!
Jan 22, 2009
#39 V.Titare...@gmail.com
Tor is good idea, but my pyICQ-t 0.8b works again without any patches/modifications.
It's working perfectly now. 
Kind of joke from AOL?

maxim.britov thanks.
Jan 22, 2009
#40 m.surkiz
New solution (I have not tested it):

--- pyicqt-0.8.1.1.orig/src/tlib/oscar.py       2009-01-06 23:31:38.000000000 +0600
+++ pyicqt-0.8.1.1/src/tlib/oscar.py    2009-01-22 16:40:20.000000000 +0600
@@ -3990,7 +3990,7 @@
            self.sendFLAP('\000\000\000\001'+
                TLV(TLV_USERNAME,self.username)+
                TLV(TLV_ROASTPASSARRAY,encpass)+
-               TLV(TLV_CLIENTNAME,'ICQBasic')+
+               TLV(TLV_CLIENTNAME,'ICQ 4 Lite')+
                TLV(TLV_CLIENTID,"\x01\x0a")+
                TLV(TLV_CLIENTMAJOR,"\x00\x14")+
                TLV(TLV_CLIENTMINOR,"\x00\x22")+
@@ -4013,7 +4013,7 @@
                TLV(TLV_USERNAME,self.username)+
                TLV(TLV_PASSWORD,encpass)+
                TLV(0x004C)+
-               TLV(TLV_CLIENTNAME,'ICQBasic')+
+               TLV(TLV_CLIENTNAME,'ICQ 4 Lite')+
                TLV(TLV_CLIENTID,"\x01\x0a")+
                TLV(TLV_CLIENTMAJOR,"\x00\x14")+
                TLV(TLV_CLIENTMINOR,"\x00\x22")+
Jan 22, 2009
#41 roman.ja...@gmail.com
It works with login.alwayson.im:443 for me
Jan 22, 2009
#42 m.surkiz
Sorry, people say that the patch does not work...
Jan 22, 2009
#43 V.Titare...@gmail.com
My pyICQ-t 0.8b works with troubles: some people with UIN starts with 4* can't send
any messages. They get a message about wrong ICQ version.

But I can send and receive messages (between 1* and 3*). All UINs is 9-digits.
It would be load-balanced servers divided by UIN there.

login.alwayson.im:443 don't work for me.
Jan 22, 2009
#44 dlu...@gmail.com
We may change host to slogin.alwayson.im or login.alwayson.im.

And it works. And it adds a kind if clever bot (assistant@ao.im), that behaves like a
quest :). And it does not get banned.

But are their enough reliable to let them login for us? Who knows what does AOL say
about alwayson.im?

Google "site:aol.com alwayson.im" and "site:icq.com alwayson.im" says nothing...
Jan 22, 2009
#45 vole...@gmail.com
Working over socks-ssh-tunnel to NON russian server.

Jan 22, 2009
#46 mathemonkey
http://habrahabr.ru/blogs/im/49877/ — patch for some clients is ready and will be
published soon.
Jan 22, 2009
#48 mathemonkey
BTW, pyicq-t already starts FALP seq. numbers from 0 for quite a long time, so,
seems, it is not enough.
I assume, that capabilities set is wrong, but I know no details :-)
Jan 22, 2009
#49 Master.N...@gmail.com
That work for me:

--- oscar.py.orig       2009-01-06 20:31:38.000000000 +0300
+++ oscar.py    2009-01-22 19:03:51.000000000 +0300
@@ -598,7 +598,7 @@
 class OscarConnection(protocol.Protocol):
     def connectionMade(self):
         self.state=""
-        self.seqnum=0
+        self.seqnum=10000
         self.buf=''
         self.outRate=6000
         self.outTime=time.time()
Jan 22, 2009
#50 roman.sh...@gmail.com
comment #49 worked for me too :)
Jan 22, 2009
#51 vitaliy....@gmail.com
comment #49 worked for me too :)

Jan 22, 2009
#52 theli.ua
this is strange but self.seqnum=10000
worked for me too
Jan 22, 2009
#53 mail.spy...@gmail.com
comment #49 worked for me too :)

Jan 22, 2009
#54 3apa3a.b...@gmail.com
Yep, comment #49 worked for me.
Jan 22, 2009
#55 mathemonkey
#49 works for me too!
Hallelujah!
Jan 22, 2009
#56 nother...@gmail.com
wooho!
it works!
Jan 22, 2009
#57 euse...@gmail.com
Comment 49 - works!
Thank you!
Jan 22, 2009
#58 zlopi.ru
good work
Jan 22, 2009
#59 nordheim...@mail.ru
Really cool!
ICQ alive again :)
^^
Jan 22, 2009
#60 springhe...@gmail.com
no words... thank you for solution )
Jan 22, 2009
#61 sergey...@gmail.com
PyICQ 0.8.1.2 is working fine too ;)
https://code.google.com/p/pyicqt/downloads/list
Jan 22, 2009
#62 divanor...@gmail.com
One more patch that works :)
Based on a patch by Miranda IM developer persei.
pyicq-t-0.8-seqnum.patch
1.2 KB   View   Download
Jan 22, 2009
#63 divanor...@gmail.com
upd: need to check if all of these seqnums work
Jan 22, 2009
#64 snse...@gmail.com
Hi,

Could anybody provide address of any public patched server (pyicqt should be 0.8.1.2)?

Many thanks and best regards,

Sergey
Jan 22, 2009
#65 3apa3a.b...@gmail.com
snsedov, try icq.kukarachas.com, it`s just patched and now i testing it.
Jan 22, 2009
#66 ffault@gmail.com
>> Could anybody provide address of any public patched server (pyicqt should be 0.8.1.2)?

try jbbr.kh.ua.

PS: In the 0.8.1.2 version of the problem with the connection is preserved. I
continue to use the tor
Jan 22, 2009
#67 Alex.P.Burlutsky
#49 works !
Jan 22, 2009
#69 Mur...@gmail.com
Today I can connect to ICQ from Russia (Moscow IP 89.188.xx.xx) with pyicqt 0.8.1.1
without tor or any patches. I think that AOL get there policy back too...
Jan 22, 2009
#70 lord.d...@gmail.com
icq.dimelord.net - works!
Jan 22, 2009
#71 Mur...@gmail.com
Xmm. Works only for two ICQ clients, third client have succesfully connected to my
serer, but gets the message: 
=============================
         System Message
=============================
The version you are using is not supported by ICQ.  Download a free
authorized ICQ version from ICQ's official website.

I try to patch with pyicq-t-0.8-seqnum.patch and now all three users go online and
talk successfully
Jan 22, 2009
#72 springhe...@gmail.com
i don't test a previous version of pyicqt after 'policy back', more over my college's
R&Q which has problems yestarday, don't have any troubles now 
Jan 22, 2009
#73 3apa3a.b...@gmail.com
It's Some Kind of Magic!
My friend say:
- Russian man in Holland. Icq NOT work.
- My account. Not worked from my workplace, but worked from home, on the same (!) laptop.
- Two different accounts installed into one messenger (miranda or something). One is
worked, but other is not.
Magic!
Jan 23, 2009
#74 V.Titare...@gmail.com
0.8.1.2 version work fine for all my ICQ-users, thanks.
Jan 26, 2009
#75 Artyom.N...@gmail.com
0.8.1.2 version works. thank you.
Jan 26, 2009
#76 daemon....@gmail.com
0.8.1.1 works fine now
Feb 3, 2009
#77 sergey...@gmail.com
It seems that AOL has updated the protocol again. Waiting for 0.8.1.3? ;)
Feb 3, 2009
#78 3apa3a.b...@gmail.com
sergey40a, do you feel this problem? because i`m not, two different servers working
just fine.
Feb 3, 2009
#79 sergey...@gmail.com
Some of PyICQ users of my Jabber server (*.net.ua) have reported about this a couple 
of hours ago.
Feb 3, 2009
#80 mathemonkey
My USA-based server works fine with 0.8.1.2.
Feb 3, 2009
#83 Master.N...@gmail.com
#79
Just you are using 0.8.1.2 version which contains bad seqnum from miranda patch. You
can just delete 0bad x2886(10374) from gen_init_seqid. Also there are some seqnum
dupes like 23049, 23620. By the way using solution with hardcoded seqnum values is
not good. I recommend to use true bitwise shifting seqnum generation:

--- oscar.py.orig       2009-01-22 20:25:50.000000000 +0300
+++ oscar.py    2009-01-27 11:19:15.000000000 +0300
@@ -36,10 +36,13 @@
 import utils

 def gen_init_seqid():
-    initpool = (9833, 14936, 19200, 21818, 23301, 24722, 26522, 5695, 23595, 23620,
23049, 0x2886, 0x2493, 23620, 23049, 2853, 17372, 1255, 1796, 1657, 13606, 1930,
23918, 31234, 30120, 24380, 0x1BEA, 0x5342, 0x30CC, 0x2294, 0x5697, 0x25FA, 0x3C26,
0x3303, 0x078A, 0x0FC5, 0x25D6, 0x26EE,0x7570, 0x7F33, 0x4E94, 0x07C9, 0x7339, 0x42A8)
-    r = random.randrange(0,len(initpool))
-    return initpool[r] - 1
-
+    n = i = random.randrange(1, 65535)
+    s = 0
+    while i > 0:
+       i = i >> 3
+       s = s + i
+    return (((0 - s) ^ n) & 7 ^ n) + 2;
+
 def logPacketData(data):
     # Comment out to display packet log data
     return

Feb 3, 2009
#84 vlad.dan...@gmail.com
>Just you are using 0.8.1.2 version which contains bad seqnum from miranda patch. Delete
>0x2886(10374) from gen_init_seqid. Also there are some seqnum dupes like 23049, 23620.
I've same problem, and it was not resolved by seqnum changing.
Feb 3, 2009
#85 v.valm...@gmail.com
I'm also using 0.8.1.2. I'm update it with oscar.py patch. Right now all working. 
But I don't want to re-check it by re-login :-)
Feb 4, 2009
#86 vlad.dan...@gmail.com
#85
It was 0.8.1.1 version. And it works after update to 0.8.1.2.
It works without seqnum changing, with seqnum changin and with path from msg #83.
After re-login it works too. :)
Feb 4, 2009
#87 ozzy.t...@gmail.com
how use patch from msg 83?
Feb 4, 2009
#88 ozzy.t...@gmail.com
Not working(((
My actions - Freebsd:
touch icq.patch
cd /scr/tlib
patch -p1 < icq.patch

/usr/local/etc/rc.d/jabber-pyicq-transport restart

Feb 4, 2009
#89 ozzy.t...@gmail.com
my version jabber-pyicq-transport-0.8.1.1,1
Feb 4, 2009
#90 naPmu...@gmail.com
Just upgraded to 0.8.1.2 without any additional patches (0.8.1.1 have stopped working
last night) It works!
Moscow, Russia. login.icq.com as logon server.



Feb 4, 2009
#91 ozzy.t...@gmail.com
В портах устаревшая версия jabber-pyicq-transport-0.8.1.1,1
Мэйнтейнеру я отписал уже. ждем
Feb 4, 2009
#92 Mur...@gmail.com
Patch Comment 83  by Master.NoSFeRaTU applied to pyicqt 0.8.1.2 works good for me
(Russia, Moskow IP) with 4 ICQ accounts.
Feb 4, 2009
#93 V.Titare...@gmail.com
Yesterday I get the same problem with connection to AOL servers.
Changes that described in #83 resolved current problem, tnx to Master.NoSFeRaTU.

Feb 6, 2009
#94 IS.U...@gmail.com
0.8.1.1 work fine with patch from post #49. Ukraine


Feb 13, 2009
Project Member #95 r000ns...@gmail.com
I will close it. If (when) AOL made new changes then create other ticket
Summary: icq update protocol version
Status: Fixed

Powered by Google Project Hosting