jglim/gunbound-server

Incorrect password

MrBolsi opened this issue · 4 comments

When trying to log in with other clients, the incorrect password warning appears on the screen when selecting the server.
It seems to me that decryption is different for these.
I would like to know how to proceed to be able to decrypt the data packet that the server receives from the GME.

jglim commented

No details on the client are specified, so my answer isn't very specific. However, there are likely 2 situations that will cause this issue:

  • The GME binary is original, but not using a serv2-style protocol
  • The GME binary is not original (i.e. modified by other operators) and uses a different authentication process

Nenhum detalhe sobre o cliente é especificado, então minha resposta não é muito específica. No entanto, provavelmente há 2 situações que causarão esse problema:

  • O binário GME é original, mas não usa um protocolo de estilo serv2
  • O binário GME não é original (ou seja, modificado por outros operadores) e usa um processo de autenticação diferente

Thanks for the answer. I will try to be a little clearer about my question.
When analyzing the blocks referring to the password coming from the client I came across something like this:

bytearray(b'\x9a\x8c\x0b\xdb\xa8\xcf\x9c\x18\xa2\x8eLm')"

And the server is unable to decrypt this information, I get special characters when decoding

And I get this log on the console using login and password "us"

Username: us RX Password: |å@iïÜ1èÿp DB Password: us

I'm using gunbound th v376 GIS without gameguard

jglim commented

Thanks for the additional details. GIS 376 is known to be incompatible with the Serv2 protocol, therefore this project has difficulties with it.

Unfortunately, that generation has major changes to the packet layout, starting from the login packet; Visually, the clients may not look very different. However, avatars/channel/room/game related packets have significant changes to accommodate for new cash items, so it is very different from Serv2 and will not work.

Thank you very much for the answers. Upon your code I will try to continue to make a client of this type work.