Ejemplo n.º 1
0
	def __init__(self, reader):
		self.Flink = PKIWI_KERBEROS_INTERNAL_TICKET_60(reader)
		self.Blink = PKIWI_KERBEROS_INTERNAL_TICKET_60(reader)
		self.unk0 = PVOID(reader).value
		self.unk1 = PVOID(reader).value
		self.ServiceName = PKERB_EXTERNAL_NAME(reader)
		self.TargetName = PKERB_EXTERNAL_NAME(reader)
		self.DomainName = LSA_UNICODE_STRING(reader)
		self.TargetDomainName = LSA_UNICODE_STRING(reader)
		self.Description = LSA_UNICODE_STRING(reader)
		self.AltTargetDomainName = LSA_UNICODE_STRING(reader)
		#//LSA_UNICODE_STRING	KDCServer = 	//?(reader).value
		self.ClientName = PKERB_EXTERNAL_NAME(reader)
		self.name0 = PVOID(reader).value
		self.TicketFlags = int.from_bytes(reader.read(4), byteorder = 'big', signed = False)
		self.unk2 = ULONG(reader).value
		self.KeyType = ULONG(reader).value
		self.Key = KIWI_KERBEROS_BUFFER(reader)
		self.unk3 = PVOID(reader).value
		self.unk4 = PVOID(reader).value
		self.unk5 = PVOID(reader).value
		self.StartTime = FILETIME(reader).value
		self.EndTime = FILETIME(reader).value
		self.RenewUntil = FILETIME(reader).value
		self.unk6 = ULONG(reader).value
		self.unk7 = ULONG(reader).value
		self.domain = PCWSTR(reader).value
		self.unk8 = ULONG(reader).value
		self.strangeNames = PVOID(reader).value
		self.unk9 = ULONG(reader).value
		self.TicketEncType = ULONG(reader).value
		self.TicketKvno = ULONG(reader).value
		self.Ticket = KIWI_KERBEROS_BUFFER(reader)
Ejemplo n.º 2
0
	def __init__(self, reader):
		self.UsageCount = ULONG(reader).value
		self.unk0 = LIST_ENTRY(reader)
		self.unk1 = LIST_ENTRY(reader)
		self.unk2 = PVOID(reader).value
		self.unk3 = ULONG(reader).value      #	// filetime.1 ?
		self.unk4 = ULONG(reader).value    	#// filetime.2 ?(reader).value
		self.unk5 = PVOID(reader).value
		self.unk6 = PVOID(reader).value
		self.unk7 = PVOID(reader).value
		self.LocallyUniqueIdentifier = LUID(reader).value
		reader.align(8)
		#self.unkAlign = ULONG(reader).value  #aliing on x86(reader).value
		self.unk8 = FILETIME(reader).value
		self.unk9 = PVOID(reader).value
		self.unk10 = ULONG(reader).value     #	// filetime.1 ?(reader).value
		self.unk11 = ULONG(reader).value     #	// filetime.2 ?(reader).value
		self.unk12 = PVOID(reader).value
		self.unk13 = PVOID(reader).value
		self.unk14 = PVOID(reader).value
		self.credentials = KIWI_GENERIC_PRIMARY_CREDENTIAL(reader)
		self.unk15 = ULONG(reader).value
		self.unk16 = ULONG(reader).value
		self.unk17 = ULONG(reader).value
		self.unk18 = ULONG(reader).value
		self.unk19 = PVOID(reader).value
		self.unk20 = PVOID(reader).value
		self.unk21 = PVOID(reader).value
		self.unk22 = PVOID(reader).value
		self.pKeyList = PVOID(reader)
		self.unk24 = PVOID(reader).value
		self.Tickets_1 = LIST_ENTRY(reader)
		self.Tickets_2 = LIST_ENTRY(reader)
		self.Tickets_3 = LIST_ENTRY(reader)
		self.SmartcardInfos = PVOID(reader)
Ejemplo n.º 3
0
 def __init__(self, reader):
     self.Flink = PKIWI_MASTERKEY_CACHE_ENTRY(reader)
     self.Blink = PKIWI_MASTERKEY_CACHE_ENTRY(reader)
     self.LogonId = LUID(reader).value
     self.KeyUid = GUID(reader).value
     self.insertTime = FILETIME(reader)
     self.keySize = ULONG(reader).value
     self.key = reader.read(self.keySize)
Ejemplo n.º 4
0
	def __init__(self, reader):
		#input('KIWI_KERBEROS_INTERNAL_TICKET_10_1607\n' + hexdump(reader.peek(0x300)))
		self.Flink = PKIWI_KERBEROS_INTERNAL_TICKET_10_1607(reader)
		self.Blink = PKIWI_KERBEROS_INTERNAL_TICKET_10_1607(reader)
		self.unk0 = PVOID(reader).value
		self.unk1 = PVOID(reader).value
		self.ServiceName = PKERB_EXTERNAL_NAME(reader)
		self.TargetName = PKERB_EXTERNAL_NAME(reader)
		self.DomainName = LSA_UNICODE_STRING(reader)
		self.TargetDomainName = LSA_UNICODE_STRING(reader)
		self.Description = LSA_UNICODE_STRING(reader)
		self.AltTargetDomainName = LSA_UNICODE_STRING(reader)
		self.KDCServer = LSA_UNICODE_STRING(reader)    				#	//?(reader).value
		self.unk10586_d = LSA_UNICODE_STRING(reader)					#//?(reader).value
		self.ClientName = PKERB_EXTERNAL_NAME(reader)
		self.name0 = PVOID(reader).value
		self.TicketFlags = int.from_bytes(reader.read(4), byteorder = 'big', signed = False)
		self.unk2 = ULONG(reader).value
		self.unk14393_0 = PVOID(reader).value
		self.KeyType = ULONG(reader).value
		reader.align()
		self.Key = KIWI_KERBEROS_BUFFER(reader)
		self.unk14393_1 = PVOID(reader).value
		self.unk3 = PVOID(reader).value										# // ULONG		KeyType2 = (reader).value
		self.unk4 = PVOID(reader).value										# // KIWI_KERBEROS_BUFFER	Key2 = (reader).value
		self.unk5 = PVOID(reader).value										# // up(reader).value
		self.StartTime = FILETIME(reader).value
		self.EndTime = FILETIME(reader).value
		self.RenewUntil = FILETIME(reader).value
		self.unk6 = ULONG(reader).value
		self.unk7 = ULONG(reader).value
		self.domain = PCWSTR(reader).value
		self.unk8 = ULONG(reader).value
		reader.align()
		self.strangeNames = PVOID(reader).value
		self.unk9 = ULONG(reader).value
		self.TicketEncType = ULONG(reader).value
		self.TicketKvno = ULONG(reader).value
		reader.align()
		self.Ticket = KIWI_KERBEROS_BUFFER(reader)
Ejemplo n.º 5
0
	def __init__(self, reader):	
		self.UsageCount = ULONG(reader).value
		reader.align()
		self.unk0 = LIST_ENTRY(reader)
		self.unk1 = PVOID(reader).value
		self.unk1b = ULONG(reader).value
		reader.align()
		self.unk2 = FILETIME(reader).value
		self.unk4 = PVOID(reader).value
		self.unk5 = PVOID(reader).value
		self.unk6 = PVOID(reader).value
		self.LocallyUniqueIdentifier = LUID(reader).value
		#print(hex(self.LocallyUniqueIdentifier))
		#input('unk7\n' + hexdump(reader.peek(0x100)))
		reader.align()
		self.unk7 = FILETIME(reader).value
		self.unk8 = PVOID(reader).value
		self.unk8b = ULONG(reader).value
		reader.align()
		self.unk9 = FILETIME(reader).value
		self.unk11 = PVOID(reader).value
		self.unk12 = PVOID(reader).value
		self.unk13 = PVOID(reader).value
		reader.align(8)
		
		#input('credentials\n' + hexdump(reader.peek(0x100)))
		self.credentials = KIWI_KERBEROS_10_PRIMARY_CREDENTIAL(reader)
		self.unk14 = ULONG(reader).value
		self.unk15 = ULONG(reader).value
		self.unk16 = ULONG(reader).value
		self.unk17 = ULONG(reader).value
		#//PVOID		unk18 = (reader).value
		reader.align(8)
		self.unk19 = PVOID(reader).value
		self.unk20 = PVOID(reader).value
		self.unk21 = PVOID(reader).value
		self.unk22 = PVOID(reader).value
		self.unk23 = PVOID(reader).value
		self.unk24 = PVOID(reader).value
		self.unk25 = PVOID(reader).value
		
		self.pKeyList = PVOID(reader)
		self.unk26 = PVOID(reader).value
		#input('pKeyList\n' + hexdump(reader.peek(0x100)))
		reader.align()
		#input('Tickets_1\n' + hexdump(reader.peek(0x100)))
		self.Tickets_1 = LIST_ENTRY(reader)
		self.unk27 = FILETIME(reader).value
		self.Tickets_2 = LIST_ENTRY(reader)
		self.unk28 = FILETIME(reader).value
		self.Tickets_3 = LIST_ENTRY(reader)
		self.unk29 = FILETIME(reader).value
		self.SmartcardInfos = PVOID(reader)
Ejemplo n.º 6
0
	def __init__(self, reader):
		#input('aaaaaaaaa\n' + hexdump(reader.peek(0x300)))
		self.UsageCount = ULONG(reader).value
		reader.align()
		self.unk0 = LIST_ENTRY(reader)
		self.unk1 = PVOID(reader).value
		self.unk1b = ULONG(reader).value
		reader.align()
		self.unk2 = FILETIME(reader).value
		self.unk4 = PVOID(reader).value
		self.unk5 = PVOID(reader).value
		self.unk6 = PVOID(reader).value
		self.LocallyUniqueIdentifier = LUID(reader).value
		self.unk7 = FILETIME(reader).value
		self.unk8 = PVOID(reader).value
		self.unk8b = ULONG(reader).value
		reader.align()
		self.unk9 = FILETIME(reader).value
		self.unk11 = PVOID(reader).value
		self.unk12 = PVOID(reader).value
		self.unk13 = PVOID(reader).value
		reader.align(8)
		self.credentials = KIWI_KERBEROS_10_PRIMARY_CREDENTIAL_1607(reader)
		self.unk14 = ULONG(reader).value
		self.unk15 = ULONG(reader).value
		self.unk16 = ULONG(reader).value
		self.unk17 = ULONG(reader).value
		self.unk18 = PVOID(reader).value
		self.unk19 = PVOID(reader).value
		self.unk20 = PVOID(reader).value
		self.unk21 = PVOID(reader).value
		self.unk22 = PVOID(reader).value
		self.unk23 = PVOID(reader).value
		#self.unk24 = PVOID(reader).value
		#self.unk25 = PVOID(reader).value
		reader.align()
		#reader.read(8+12)
		#input('pkeylist  \n' + hexdump(reader.peek(0x50)))
		self.pKeyList = PVOID(reader)
		self.unk26 = PVOID(reader).value
		self.Tickets_1 = LIST_ENTRY(reader)
		self.unk27 = FILETIME(reader).value
		self.Tickets_2 = LIST_ENTRY(reader)
		self.unk28 = FILETIME(reader).value
		self.Tickets_3 = LIST_ENTRY(reader)
		self.unk29 = FILETIME(reader).value
		self.SmartcardInfos = PVOID(reader)
Ejemplo n.º 7
0
	def __init__(self, reader):	
		self.UsageCount = ULONG(reader).value
		reader.align()
		self.unk0 = LIST_ENTRY(reader)
		self.unk1 = PVOID(reader).value
		self.unk1b = ULONG(reader).value
		reader.align()
		self.unk2 = FILETIME(reader).value
		self.unk4 = PVOID(reader).value
		self.unk5 = PVOID(reader).value
		self.unk6 = PVOID(reader).value
		self.LocallyUniqueIdentifier = LUID(reader).value
		self.unk7 = FILETIME(reader).value
		self.unk8 = PVOID(reader).value
		self.unk8b = ULONG(reader).value
		reader.align()
		self.unk9 = FILETIME(reader).value
		self.unk11 = PVOID(reader).value
		self.unk12 = PVOID(reader).value
		self.unk13 = PVOID(reader).value		
		self.credentials = KIWI_KERBEROS_10_PRIMARY_CREDENTIAL(reader)
		self.unk14 = ULONG(reader).value
		self.unk15 = ULONG(reader).value
		self.unk16 = ULONG(reader).value
		self.unk17 = ULONG(reader).value
		#self.unk18 = PVOID(reader).value
		self.unk19 = PVOID(reader).value
		self.unk20 = PVOID(reader).value
		self.unk21 = PVOID(reader).value
		self.unk22 = PVOID(reader).value
		self.unk23 = PVOID(reader).value
		self.unk24 = PVOID(reader).value
		self.unk25 = PVOID(reader).value
		self.pKeyList = PVOID(reader)
		self.unk26 = PVOID(reader).value
		self.Tickets_1 = LIST_ENTRY(reader)
		self.unk27 = FILETIME(reader).value
		self.Tickets_2 = LIST_ENTRY(reader)
		self.unk28 = FILETIME(reader).value
		self.Tickets_3 = LIST_ENTRY(reader)
		self.unk29 = FILETIME(reader).value
		self.SmartcardInfos = PVOID(reader)