?

Log in

Патчим асю

« previous entry |
Jan. 22nd, 2009 | 01:50 pm

Опять этот гребаный АОЛ. Снова новая версия протокола. Очередные новые билды.
Многие линуксоиды давно пересели на удобный клиент qutim. А патча к нему, как и ко многим другим нет.
Каквариант решения смотрите патч:

--- oscarprotocol.cpp~ 2009-01-22 14:48:22.000000000 +0300
+++ oscarprotocol.cpp 2009-01-22 14:47:56.000000000 +0300
@@ -46,7 +46,7 @@ oscarProtocol::oscarProtocol(const QStri
connectionSocket = new QTcpSocket(this);
buffer = new icqBuffer(this);
buffer->open(QIODevice::ReadWrite);
- flapSeqNum = rand() % 0x8000;
+ flapSeqNum = 0x0000;
reqSeq = 0x0000;
keepAlive = true;
connectBos = false;

<b>updated</b>:
и еще следует внести изменения в clientIdentification.cpp в строке 87. Аналогично:

--- clientIdentification.cpp~ 2009-01-22 14:19:41.000000000 +0300
+++ clientIdentification.cpp 2009-01-22 15:53:35.000000000 +0300
@@ -84,7 +84,7 @@
QByteArray clientIdentification::getSeqNumber() const
{
QByteArray seq;
- quint16 num = rand() % 0xffff;
+ quint16 num = 0x000;
seq[0] = num / 0x100;
seq[1] = num % 0x100;
return seq;

На многих клиентах достаточно изменить начальное присвоение Sequence Number:
Обычно везде юзаетсяь rand(0xffff), а теперь нужно изменить его на0.


Все исследования были проведены biophreak'ом.

Link | Leave a comment | Share

Comments {10}

Naigovan

(no subject)

from: naigovan
date: Jan. 22nd, 2009 03:25 pm (UTC)
Link

Вот спасибо ха хинт -))))
/me ушел патчить Adium

Reply | Thread

(no subject)

from: lomalkin
date: Jan. 22nd, 2009 03:39 pm (UTC)
Link

такая мелочь, однако это не помешало повалиться множеству клиентов =)
Спасибо.

Reply | Thread

Sergey R.

(no subject)

from: profeto
date: Jan. 22nd, 2009 08:20 pm (UTC)
Link

судя по всему, это было неким издевательством над Ру-пользователями. После того, как вышли патчи на большинство клиентов и обновились квип 2005+инфиум, протокол вернули в исходное состояние. То есть старые клиенты вновь могут подключаться. Таким действием АОЛовцы свели к нулю все труды разработчиков, показав "кто в доме хозяин". Имхо, достаточно несколько раз подряд провернуть подобные действия и эффект будет - либо люди перейдут на оф.клиент, либо уйдут в джаббер :)

Reply | Thread

Патч

from: bio_phreak
date: Feb. 5th, 2009 07:52 am (UTC)
Link

А вот и патч для кутим,в связи с очередными последними(хотя вряд ли последними) изменениями(патч для последней ревизии):
Общие подкаталоги: ./icq/build и ./icq.patched/build
diff -udN ./icq/clientIdentification.cpp ./icq.patched/clientIdentification.cpp
--- ./icq/clientIdentification.cpp 2009-02-05 10:23:59.000000000 +0300
+++ ./icq.patched/clientIdentification.cpp 2009-02-05 09:38:46.000000000 +0300
@@ -41,15 +41,15 @@
clientID.setType(0x0016);
clientID.setData((quint16)266);
clientMajor.setType(0x0017);
- clientMajor.setData((quint16)6);
+ clientMajor.setData((quint16)7);
clientMinor.setType(0x0018);
- clientMinor.setData((quint16)5);
+ clientMinor.setData((quint16)2);
clientLesser.setType(0x0019);
- clientLesser.setData((quint16)0);
+ clientLesser.setData((quint16)1);
clientBuild.setType(0x001A);
- clientBuild.setData((quint16)1005);
+ clientBuild.setData((quint16)3916);
distributionNumber.setType(0x0014);
- distributionNumber.setData((quint32)30007);
+ distributionNumber.setData((quint32)85);
clientLanguage.setType(0x000F);
clientLanguage.setData(QString("en"));
clientCountry.setType(0x000E);
@@ -97,7 +97,8 @@
{
QByteArray seq;
//quint16 num = sequences[rand() % sequences_num];
- quint16 num = oscarProtocol::secnumGenerator();
+ //quint16 num = oscarProtocol::secnumGenerator();
+ quint16 num = 0x0000;
seq[0] = num / 0x100;
seq[1] = num % 0x100;
return seq;
Общие подкаталоги: ./icq/icons и ./icq.patched/icons
diff -udN ./icq/oscarprotocol.cpp ./icq.patched/oscarprotocol.cpp
--- ./icq/oscarprotocol.cpp 2009-02-05 10:23:59.000000000 +0300
+++ ./icq.patched/oscarprotocol.cpp 2009-02-05 09:39:35.000000000 +0300
@@ -46,7 +46,8 @@
connectionSocket = new QTcpSocket(this);
buffer = new icqBuffer(this);
buffer->open(QIODevice::ReadWrite);
- flapSeqNum = secnumGenerator(); //sequences[rand() % sequences_num];
+ //flapSeqNum = secnumGenerator(); //sequences[rand() % sequences_num];
+ flapSeqNum = 0x0000;
reqSeq = 0x0000;
keepAlive = true;
connectBos = false;
Общие подкаталоги: ./icq/settings и ./icq.patched/settings
Общие подкаталоги: ./icq/.svn и ./icq.patched/.svn

Reply | Thread

БoнЖур!

from: odindrakon
date: Sep. 30th, 2009 11:08 am (UTC)
Link

Надо бы забросить http://rstghc.livejournal.com/ в избpанное!
A так по теме :-) промолвлю: какой-то автор представил вольтеру трагедию и попросил высказать о ней свое мнение. вольтер прочитал рукопись и ответил: «написать такую трагедию вовсе не трудно; трудность в том, что отвечать ее автору».

Reply | Thread

Хакер

from: did_p4nas
date: Oct. 22nd, 2009 08:52 pm (UTC)
Link

Комьюнити журнала "Хакер" в ЖЖ http://community.livejournal.com/xakep_lj/

Reply | Thread

raekmarket

(no subject)

from: raekmarket
date: Dec. 9th, 2013 01:41 am (UTC)
Link

)

Reply | Thread

nobody

(no subject)

from: netspyder
date: Jan. 6th, 2015 11:57 pm (UTC)
Link

Жаль, что проект сдулся...

Reply | Thread