Jump to content

blejdaq

Members
  • Posts

    14
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by blejdaq

  1. i have already posted this in other forum but more eyes can see more

     

    as devs surely know, all game packets (except the first two) are ciphered by simple XOR routine which requires a 16 byte xor key..

    this xor key is provided by server and delivered to client in the initial unencrypted KeyPacket..original KeyPacket consists of ~25 bytes, 8 bytes are the xor key (they are completed to 16B on the client) and the rest is just junk

     

    but the KeyPacket from L2World is 1042 bytes long and looks like this:

     

    12 04  - packet size
    2E      - opcode: KeyPacket
    01      - protocol OK
    
    E1 36 41 3C 8E 66
    D0 7F 72 11 53 1F E4 5A 3F 00 C8 8C 40 57 3B 2E
    A9 B8 A6 81 D4 8E 47 72 13 99 4C 15 7D 7F 51 6B
    ...
    ...
    D8 2C DA 47 BF 25 54 2E B7 51 BE 01 00 00 00 01
    00 00 00 01 00 00 00 00
    

     

    this means the L2World's xor key is 1025 (1024?) bytes long, so we have 2 options:

    - L2World's server and client cipher routines were modified to use 1024B xor key or

    - our 16 (8) bytes xor key is hidden somewhere/somehow in those 1025 bytes

     

    i won't give up so easy but any help on this topic is welcome

     

  2. after years of playing L2 i wanna try the original Lineage so much

     

    i downloaded the server sources from trunk, compiled it and successfully run it, then i downloaded client and it runs perfect on my win7 except he won't connect..

    after i run it with  "lineage.exe 127.0.01", autoupdater pops up, tries to update the client and show a "can't connect" error - it's understood i don't have update server running

     

    can anybody help me to finish this quest?

  3. so here's the example - in the last packet the size in header is larger than whole readen packet, i think this packet was ciphered some other way just to confuse oog bots

     

    ==== Game in : new data===================================
    complete input (915b):
    0000: 93 03 2D E4 C7 42 58 37 0D A8 60 47 9D 9C 47 2B
    0010: 75 E2 B2 78 34 B1 DB B3 E8 4D 85 A2 43 38 99 F5
    ...
    splitting, total packet len = 915
    sub pos = 0, readen size: 915
    1. deciphered IN packet ( - CharacterSelectionInfo):
    0000: 09 03 00 00 00 07 00 00 00 00 49 00 7A 00 6F 00
    0010: 74 00 6F 00 70 00 61 00 00 00 72 7A 00 00 62 00
    ...
    
    ==== Game out : new data==================================
    complete input (7b):
    0000: 07 00 41 CA EA 6F 75
    splitting, total packet len = 7
    sub pos = 0, readen size: 7
    1. deciphered OUT packet:
    0000: 65 41 03 00 00
    
    ==== Game in : new data===================================
    !! readen length of packed is greater than complete input packet
      -- since now: 470 packets with total len: 82763, raw len(without headers): 82814
    complete input (16487b):
    0000: AE 9F 08 2C E6 C5 40 5A 32 08 AD 65 03 97 96 37
    0010: 5B 6A FD D9 13 30 B5 AF C7 DD 38 F0 96 02 03 A2
    0020: CE CD 1A 3E F4 D7 52 48 20 1A BF 77 11 85 84 25
    ...
    

  4. i did. i tryed to fake it with loopback adapter set to the real l2off server ip, then made l2net connect to some dummy address in internet (can't connect to the l2off server because its ip is now on my computer)  and then on the fly translating the dummy address to the real address on my router (iptables). L2Net: Login failed.

     

    i'm curious if someone got it to work

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock