Deprecated: The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /home/iano/public_html/tpforums-vb5/forum/includes/class_core.php on line 5842

PHP Warning: Use of undefined constant MYSQL_NUM - assumed 'MYSQL_NUM' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_ASSOC - assumed 'MYSQL_ASSOC' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: Use of undefined constant MYSQL_BOTH - assumed 'MYSQL_BOTH' (this will throw an Error in a future version of PHP) in ..../includes/init.php on line 165

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 588

PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ..../includes/functions_navigation.php on line 612

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../global.php(29) : eval()'d code(6) : eval()'d code on line 1

PHP Warning: Use of undefined constant misc - assumed 'misc' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant index - assumed 'index' (this will throw an Error in a future version of PHP) in ..../includes/class_bootstrap.php(1422) : eval()'d code(4) : eval()'d code on line 1

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 6

PHP Warning: Use of undefined constant onlinestatusphrase - assumed 'onlinestatusphrase' (this will throw an Error in a future version of PHP) in ..../includes/class_core.php(4684) : eval()'d code on line 85
Update tibiasock
Results 1 to 8 of 8

Thread: Update tibiasock

  1. #1
    Super Moderator klusbert's Avatar
    Join Date
    Dec 2007
    Posts
    1,201

    Update tibiasock

    I did a fast youtube movie to show you how easy it is to update tibiasock using osqus method.

    http://www.youtube.com/watch?v=ynYwtNvy9RA.

    This is what I needed to search for!


    Code:
      MOV DWORD PTR SS:[EBP-198h],EBX
      LEA EAX,DWORD PTR DS:[EBX-6h]
      MOV DWORD PTR SS:[EBP-1A0h],EAX
      LEA ECX,DWORD PTR DS:[EBX-4h]
    this will brings you to SENDOUTGOINGPACKET function and in this function you will find 2 other adresses OUTGOINGDATASTREAM and OUTGOINGDATALEN.


    Next I searched for a string "packet size is too small even for one" to find INCOMINGDATASTREAM.

    To find PARSERFUNC I searched for "unknown packet type during login".

    Enyoy credit to DarkStar and OsQu!

  2. #2
    Senior Member
    Join Date
    Oct 2009
    Location
    Poland, Świebodzin
    Posts
    233

    RE: Update tibiasock

    Good job!

    I think we should do some list of video tutorials. Our life may be lighter.

    Regards, Czepek!

  3. #3
    Super Moderator klusbert's Avatar
    Join Date
    Dec 2007
    Posts
    1,201

    RE: Update tibiasock

    Quote Originally Posted by Czepek
    Good job!

    I think we should do some list of video tutorials. Our life may be lighter.

    Regards, Czepek!
    Thanks!
    Yeah todays computer users are to lazy to read, if you can't learn it on youtube it's impossible to learn. :P
    General speaking ofc.

  4. #4
    Junior Member
    Join Date
    Mar 2007
    Posts
    24

    RE: Update tibiasock

    Great tutorial klusbert!

    In the SENDOUTGOINGPACKET case, you can also search for reference text string "Symmetric encryption failed".
    I wonder how these addresses were first found. I mean without using OsQu's method or searching for strings.

  5. #5

    RE: Update tibiasock

    Quote Originally Posted by Noen
    Great tutorial klusbert!

    In the SENDOUTGOINGPACKET case, you can also search for reference text string "Symmetric encryption failed".
    I wonder how these addresses were first found. I mean without using OsQu's method or searching for strings.
    Neither. I put a breakpoint on winsock send and crawled up the call stack. I got to their top-level composition functions (attack, say, etc) which were easily identifiable by what data they pushed to the stack. It was an easy inference that, right under the composition functions, there was a function which encrypted and sent the packets. So, when crawling up the call stack, I would stop one layer below the composition function and I would be inside the send outgoing packet function. The buffer was found by looking at the calls in the composition functions. They would push values to the stack and then call functions which I identified as pushInt, pushByte, pushString, etc. By following what was pulling the data from the stack I was able to figure out what buffer the data was being thrown into.

    All of the incoming stuff was found by Stepler and I'm not sure what initial process he used.

  6. #6
    Junior Member
    Join Date
    Mar 2007
    Posts
    24

    RE: Update tibiasock

    Thanks DarkstaR.
    I'll start playing with the stack and breakpoints from now on.

  7. #7
    yo
    I'm trying follow this instruction and i get this addresses:
    Code:
    #define OUTGOINGDATASTREAM 0x1448D00
    #define OUTGOINGDATALEN 0x166A688
    #define SENDOUTGOINGPACKET 0x119F1F0
    
    
    #define INCOMINGDATASTREAM 0x166A674
    #define PARSERFUNC 0x10F14C0
    But this is wrong. Can someone help me?
    Last edited by wgrzelak; 11-22-2013 at 05:14 PM.

  8. #8
    Super Moderator klusbert's Avatar
    Join Date
    Dec 2007
    Posts
    1,201
    Code:
    //10.22
                Client.SendPacket = RecalcAddress(0x51f1f0, baseAdr);
                Client.OutGoingDataStream = RecalcAddress(0x7C8D00, baseAdr);
                Client.OutgoingDataLen = RecalcAddress(0x9EA688, baseAdr);
                Client.IncommingDataStream = RecalcAddress(0x9EA674, baseAdr);
                Client.ParseFunction = RecalcAddress(0x4714c0, baseAdr);
    How to find battlelist address --> http://tpforums.org/forum/thread-8146.html
    Updating addresses --> http://tpforums.org/forum/thread-8625.html
    DataReader --> http://tpforums.org/forum/thread-10387.html

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •