Request Ticket - zeroKilo/GROBackendWV GitHub Wiki

Request Ticket

this packet is send after the login to request a kerberos ticket for login to the secure server

Request Packet Structure

`

    public uint sourcePID;
    public uint targetPID;`

the source PID is the users PID and the target PID is the PID of the server the client wants to connect to. it should match the PID in the connection string of the login packet

Response Packet Structure

`

    public uint resultCode = 0x10001;
    public byte[] ticketBuffer;
    public KerberosTicket ticket;`

the resultCode should be 0x10001 for success and the ticketbuffer should contain the same kerberos ticket data as the login packet

Example Packet Exchange

`

10.11.2019 15:16:14 : [UDP Redirector] received : 3F 31 32 52 78 56 34 12 03 00 00 0F 96 44 DB 13 75 21 50 05 A2 62 FD 2A 16 C6 A3 FF 56 E6 E5 97 56 6F 
10.11.2019 15:16:14 : [UDP Redirector] received : UDPPacket {
	From         : VPort[port=15 type=OldRVSec]
	To           : VPort[port=01 type=OldRVSec]
	Flags        : [FLAG_RELIABLE][FLAG_NEED_ACK]
	Type         : DATA
	Session ID   : 0x52
	Signature    : 0x12345678
	Sequence ID  : 0x0003
	Part Number  : 0x00
	PayLoad      : 11 00 00 00 8A 0D 00 00 00 03 00 00 00 34 12 00 00 00 10 00 00 
	Checksum     : 0x6F
}

10.11.2019 15:16:14 : [UDP Redirector] received : UDPPacket { DATA ( R W  )}
10.11.2019 15:16:14 : [RMC] Handling packet...
10.11.2019 15:16:15 : [RMC] Received packet :
[RMC Packet : Proto = Authentication CallID=13 MethodID=3]
	[RequestTicket Request : PID Source=0x00001234 PID Target=00001000]

10.11.2019 15:16:15 : [RMC] send ACK packet
10.11.2019 15:16:15 : [RMC] send : 31 3F 0A 52 01 00 26 7F 03 00 00 58 
10.11.2019 15:16:15 : [RMC] send : UDPPacket {
	From         : VPort[port=01 type=OldRVSec]
	To           : VPort[port=15 type=OldRVSec]
	Flags        : [FLAG_ACK]
	Type         : DATA
	Session ID   : 0x52
	Signature    : 0x7F260001
	Sequence ID  : 0x0003
	Part Number  : 0x00
	PayLoad      : 
	Checksum     : 0x58
}

10.11.2019 15:16:15 : [RMC] send : UDPPacket { DATA (  A   )}
10.11.2019 15:16:15 : [RMC] send response packet
10.11.2019 15:16:15 : [RMC] send : 31 3F 22 52 01 00 26 7F 04 00 00 0F D9 44 DB 13 F5 2D 5D 05 A2 61 FE AA 16 F2 B0 FF 57 E6 B9 97 56 A2 AB 69 39 89 EF F8 1B 5D 0B 83 B0 F3 B3 2B F4 BF 5C F9 9E E9 65 CF FB 51 20 F6 29 57 C1 8E C6 32 40 F5 33 E2 C7 02 99 A4 82 4E D9 FF 16 BB 44 63 9D B3 29 5E 27 0C 52 59 5E 2D 1C 91 83 79 91 3E 25 14 E7 97 04 F9 B6 7E 8A 98 42 2B E9 
10.11.2019 15:16:15 : [RMC] send : UDPPacket {
	From         : VPort[port=01 type=OldRVSec]
	To           : VPort[port=15 type=OldRVSec]
	Flags        : [FLAG_NEED_ACK]
	Type         : DATA
	Session ID   : 0x52
	Signature    : 0x7F260001
	Sequence ID  : 0x0004
	Part Number  : 0x00
	PayLoad      : 5E 00 00 00 0A 01 0D 00 00 00 03 80 00 00 01 00 01 00 4C 00 00 00 B7 33 D6 3C E8 72 C1 1D 05 F5 CC 36 B7 F8 6F A4 F9 6D 71 42 80 F3 AE CA 87 F4 9D C6 D5 35 0F AE 81 E7 84 00 5C 9C E0 48 BF 05 61 20 4D 15 19 C7 57 D6 DE A3 0E 46 56 1B 97 CE AE 5F 25 9F 4B 96 83 AE EA 37 2A 59 68 B6 54 E4 57 7D 
	Checksum     : 0xE9
}

10.11.2019 15:16:15 : [RMC] send : UDPPacket { DATA (   W  )}
10.11.2019 15:16:15 : [RMC] Response Data Content : 
[RequestTicket Response]
	[Result Code   : 0x00010001]
	[Ticket Buffer : { B7 33 D6 3C E8 72 C1 1D 05 F5 CC 36 B7 F8 6F A4 F9 6D 71 42 80 F3 AE CA 87 F4 9D C6 D5 35 0F AE 81 E7 84 00 5C 9C E0 48 BF 05 61 20 4D 15 19 C7 57 D6 DE A3 0E 46 56 1B 97 CE AE 5F 25 9F 4B 96 83 AE EA 37 2A 59 68 B6 54 E4 57 7D }]`