Исходники здесь
Вот такие скомпилированные версии есть у меня.
Ниже данные устарели.
Репозиторий находится тут (открывать через SVN клиент)
Удобный просмотр репозитория через браузер тут
Скомпилированные версии тут Пароль к архиву: coderx.ru
Есть ли предложения по модернизации существующего кода с описанием как должно и что хотелось бы заменить/добавить?
Дополнительные компоненты брать тут. (<-- TPerlRegEx есть только там)
/upd:
для компиляции последних ревизий понадобятся JCL, JVCL (ссылки выше) а так же:
jwapi2.2a, SyntEdit, TRichView.v11.0+ScaleRichView.v2.0, TsiLang (letitbit / upload.com.ua)
Немного подправленный FastScript искать в файловом архиве.
Последний раз редактировалось NLObP, 17.10.2016 в 00:02.
ну по описанию я суть галочки понял
в настройках что надо прописывать? кста процес л2 называеться lineageii.exe а не l2.exe и нужен ли вообше инект, в дефолте он не включен... я в пх неочень хорошо розбираюсь, использовал только гибрид 2ух версий 3.4.1.6х на ява-криво-грации, немного помучался с версиями 7х-8х которые чз несколько мин после входа на русоф убивали клиент и ща немогу понят как вообше идет перехват в новых версиях
Последний раз редактировалось creaDo, 12.05.2009 в 23:02.
плохо видно понял. если и дальше речь про руофф ведешь.
а по поводу lineageii.exe, инжекта я лучше вообще промолчу... ибо мне еще предупредилку за мат влепят...
Столкнулся с тем, что в лог не попадают пакеты, отправляемые с закладки. Есть сервера, где помимо смены ключей шифрования существует еще и подписывание пакетов, что вличет за собой увеличение длинны пакета. В таких случаях было бы удобно отображать, дла анализирования подписи, пакеты отправляемые через пакетхак в логах пакетхака.
.....
Только что понял что реализовать сложно, т.к. формирование подписи происходит в newxor перед шифрованием пакета, т.е. в лог такой пакет попадет в зашифрованном виде.
Последний раз редактировалось Sherman, 13.05.2009 в 13:01.
очень странно. ибо первыми же строчками в отправке являются
Visual.AddPacketToAcum(Packet, not ToServer, EncDec);
Visual.processpacketfromacum;
добавляющие его в лог пакетов. с последующим отображением в списке.
Ты наверное имеешь ввиду оправку из скрипта. Из скриптов и плагинов пакет действительно в логе виден. А вот пакет, отправляемый из закладки посылка отправляется напрямую:
Код:
sendThis(HexToString(Memo4.Lines.Text));
где:
procedure TfVisual.sendThis(str: string);
var
Packet : TPacket;
begin
if Length(str)>=1 then
begin
if Assigned(currenttunel) then
begin
FillChar(Packet.PacketAsCharArray,$ffff,#0);
Packet.Size := length(str) + 2;
move(str[1],Packet.Data,Packet.Size - 2);
Ttunel(currenttunel).EncryptAndSend(Packet,ToServer.Down);
end;
if Assigned(currentLSP) then
begin
FillChar(Packet.PacketAsCharArray,$ffff,#0);
Packet.Size := length(str) + 2;
move(str[1],Packet.Data,Packet.Size - 2);
TlspConnection(currentLSP).encryptAndSend(Packet, ToServer.Down);
end;
end;
end;
Красным пометил. Именно в этом методе формируется подпись и увеличивается длинна пакета. И интересно было бы видеть в логе сгенерированный в newxor.dll новый пакет.
гм...
Хотя.. для целей отладки можно заставить newxor просто писать лог
ЗЫ. Только заметил.... "ЭТО НЕ ЧИТ ФОРУМ" жжж прикольно )
//QaK: это тебе прикольно, а всех уже задрал отвечать на топы типа: дайте плз пакет на адену, ну очень надо
Последний раз редактировалось QaK, 13.05.2009 в 18:26.
может быть я тупой... может я очень тупой... но мля.. отправка и в скриптах, и в плагинах, и в табе "отправка" происходит через один метод EncryptAndSend и первыми строчками там - добавление пакета в "список пакетов".
Добавлено через 5 минут
...правда в 3.6...
Добавлено через 2 минуты
портировал этот кусок кода из 3.6
{ TODO : не проверено. отображение пакета при отправке }
//эта функция safecalled мессаги тут не надо
if assigned(Visual) then
begin
Visual.AddPacketToAcum(Packet, not ToServer, EncDec);
Visual.processpacketfromacum;
end;
if ToServer then
begin
EncDec.EncodePacket(Packet, PCK_GS_ToServer);
sSendTo := clientsocket;
end
else
begin
EncDec.EncodePacket(packet, PCK_GS_ToClient);
sSendTo := serversocket;
end;
EncodePacket в свою очередь вызывает:
CurrentCoddingClass.EncryptGP(Packet.data, Packet.Size - 2);
а у меня в EncryptGP при отправки пакета c ID=$C0 например генерируется подпись пакета состоящия из 6 word, я увеличиваю Packet.Size и дописываю в хвост Packet.data эти 6 слов. Но....
if assigned(Visual) then
begin
Visual.AddPacketToAcum(Packet, not ToServer, EncDec);
Visual.processpacketfromacum;
end;
вызывается до того как я изменил пакет... и в результате в логе оригинальный пакет. Я вот о чем.
xor, как говорилось одним из старых рыцарей королевства Дельфи, нельзя, но если очень хочется, то можно, например вот так:
Код:
procedure TXorCodingOut.EncryptGP(var Data; const Size: Word);
var
i:integer;
pck:array[0..$FFFF] of Byte absolute Data;
NewSize:word;
begin
case pck[0] of
$C0:
begin
if Size = 28 then
begin
NewSize:=39;//Size;
Sign(@pck);
copymemory(@Size, @NewSize, 2); //NewSize=39
end;
end;
end;
....
и погнали ксорить