Skip to content

Commit 62e9fc0

Browse files
committed
Added TicketChecksum PAC buffer.
1 parent 91c31d8 commit 62e9fc0

3 files changed

Lines changed: 7 additions & 6 deletions

File tree

NtApiDotNet/Win32/Security/Authentication/Kerberos/KerberosAuthorizationDataPAC.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ internal static bool Parse(byte[] data, out KerberosAuthorizationDataPAC auth_da
8686
break;
8787
case KerberosAuthorizationDataPACEntryType.KDCChecksum:
8888
case KerberosAuthorizationDataPACEntryType.ServerChecksum:
89+
case KerberosAuthorizationDataPACEntryType.TicketChecksum:
8990
if (!KerberosAuthorizationDataPACSignature.Parse(entry_type, entry_data, out pac_entry))
9091
pac_entry = null;
9192
break;

NtApiDotNet/Win32/Security/Authentication/Kerberos/KerberosAuthorizationDataPACEntry.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ public enum KerberosAuthorizationDataPACEntryType
3232
UserPrincipalName = 0xC,
3333
UserClaims = 0xD,
3434
Device = 0xE,
35-
DeviceClaims = 0xF
35+
DeviceClaims = 0xF,
36+
TicketChecksum = 0x10,
3637
}
3738
#pragma warning restore 1591
3839

NtApiDotNet/Win32/Security/Authentication/Kerberos/KerberosAuthorizationDataPACSignature.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ public class KerberosAuthorizationDataPACSignature : KerberosAuthorizationDataPA
3535
/// </summary>
3636
public int? RODCIdentifier { get; }
3737

38-
private KerberosAuthorizationDataPACSignature(KerberosAuthorizationDataPACEntryType type, byte[] data, KerberosChecksumType sig_type,
39-
byte[] signature, int? rodc_id)
38+
private KerberosAuthorizationDataPACSignature(KerberosAuthorizationDataPACEntryType type,
39+
byte[] data, KerberosChecksumType sig_type, byte[] signature, int? rodc_id)
4040
: base(type, data)
4141
{
4242
SignatureType = sig_type;
@@ -60,9 +60,9 @@ internal static bool Parse(KerberosAuthorizationDataPACEntryType type, byte[] da
6060

6161
if (data.Length < 4)
6262
return false;
63-
64-
int signature_length = 0;
6563
KerberosChecksumType signature_type = (KerberosChecksumType)BitConverter.ToInt32(data, 0);
64+
65+
int signature_length;
6666
switch (signature_type)
6767
{
6868
case KerberosChecksumType.HMAC_MD5:
@@ -85,7 +85,6 @@ internal static bool Parse(KerberosAuthorizationDataPACEntryType type, byte[] da
8585
{
8686
rodc_id = BitConverter.ToUInt16(data, total_size);
8787
}
88-
8988
entry = new KerberosAuthorizationDataPACSignature(type, data, signature_type, signature, rodc_id);
9089
return true;
9190
}

0 commit comments

Comments
 (0)