Documentation ¶
Index ¶
- Variables
- func DecryptAES(key, value, iv []byte) ([]byte, error)
- func DeriveKey(baseKey uint32) (k1, k2 []byte)
- func NewPekKey(lData []byte) []byte
- func RemoveDES(b []byte, rid uint32) ([]byte, error)
- type CryptedHash
- type CryptedHashW16
- type CryptedHashW16History
- type DitReader
- type DumpedHash
- type PekKey
- type PeklistEnc
- type PeklistPlain
- type PwdHistory
- type SAMRKerbKeyDataNew
- type SAMRKerbStoredCredNew
- type SAMRRPCSID
- type SAMRUserProperties
- type SAMRUserProperty
- type SuppInfo
Constants ¶
This section is empty.
Variables ¶
View Source
var EmptyLM = []byte{0xaa, 0xd3, 0xb4, 0x35, 0xb5, 0x14, 0x04, 0xee, 0xaa, 0xd3, 0xb4, 0x35, 0xb5, 0x14, 0x04, 0xee}
View Source
var EmptyNT = []byte{0x31, 0xd6, 0xcf, 0xe0, 0xd1, 0x6a, 0xe9, 0x31, 0xb7, 0x3c, 0x59, 0xd7, 0xe0, 0xc0, 0x89, 0xc0}
Functions ¶
func DecryptAES ¶
Types ¶
type CryptedHash ¶
func NewCryptedHash ¶
func NewCryptedHash(inData []byte) (CryptedHash, error)
NewCryptedHash creates a CryptedHash object containing key material and encrypted content.
type CryptedHashW16 ¶
type CryptedHashW16 struct { Header [8]byte KeyMaterial [16]byte Unknown uint32 EncryptedHash [32]byte }
func NewCryptedHashW16 ¶
func NewCryptedHashW16(data []byte) CryptedHashW16
type CryptedHashW16History ¶
type CryptedHashW16History struct { Header [8]byte KeyMaterial [16]byte Unknown uint32 EncryptedHash []byte }
func NewCryptedHashW16History ¶
func NewCryptedHashW16History(data []byte) CryptedHashW16History
type DitReader ¶
type DitReader struct {
// contains filtered or unexported fields
}
func (*DitReader) DecryptRecord ¶
func (d *DitReader) DecryptRecord(record esent.Esent_record) (DumpedHash, error)
func (DitReader) GetOutChan ¶
func (d DitReader) GetOutChan() <-chan DumpedHash
GetOutChan returns a reference to the objects output channel for read only operations
type DumpedHash ¶
type DumpedHash struct { Username string LMHash []byte NTHash []byte Rid uint32 Enabled bool UAC uacFlags Supp SuppInfo History PwdHistory }
func (DumpedHash) HashString ¶
func (d DumpedHash) HashString() string
func (DumpedHash) HistoryString ¶
func (d DumpedHash) HistoryString() string
func (DumpedHash) HistoryStrings ¶
func (d DumpedHash) HistoryStrings() []string
type PeklistEnc ¶
func NewPeklistEnc ¶
func NewPeklistEnc(lData []byte) (PeklistEnc, error)
NewPeklistEnc returns an encrypted peklist object from the passed in record
type PeklistPlain ¶
func NewPeklistPlain ¶
func NewPeklistPlain(lData []byte) PeklistPlain
NewPeklistPlain returns a cleartext peklist object from the passed in record
type PwdHistory ¶
type SAMRKerbKeyDataNew ¶
type SAMRKerbKeyDataNew struct {
Reserved1, Reserved2 uint16
Reserved3, IterationCount,
KeyType, KeyLength, KeyOffset uint32
}
func NewSAMRKerbKeyDataNew ¶
func NewSAMRKerbKeyDataNew(d []byte) SAMRKerbKeyDataNew
type SAMRKerbStoredCredNew ¶
type SAMRKerbStoredCredNew struct { /* structure = ( ('Revision','<H=4'), ('Flags','<H=0'), ('CredentialCount','<H=0'), ('ServiceCredentialCount','<H=0'), ('OldCredentialCount','<H=0'), ('OlderCredentialCount','<H=0'), ('DefaultSaltLength','<H=0'), ('DefaultSaltMaximumLength','<H=0'), ('DefaultSaltOffset','<L=0'), ('DefaultIterationCount','<L=0'), ('Buffer',':'), ) */ Revision, Flags, CredentialCount, ServiceCredentialCount, OldCredentialCount, OlderCredentialCount, DefaultSaltLength, DefaultSaltMaximumLength uint16 DefaultSaltOffset, DefaultIterationCount uint32 Buffer []byte }
func NewSAMRKerbStoredCredNew ¶
func NewSAMRKerbStoredCredNew(d []byte) SAMRKerbStoredCredNew
type SAMRRPCSID ¶
type SAMRRPCSID struct { Revision uint8 //'<B' SubAuthorityCount uint8 //'<B' IdentifierAuthority [6]byte //SAMR_RPC_SID_IDENTIFIER_AUTHORITY SubLen int // ('SubLen','_-SubAuthority','self["SubAuthorityCount"]*4'), SubAuthority []byte //':' }
func NewSAMRRPCSID ¶
func NewSAMRRPCSID(data []byte) (SAMRRPCSID, error)
func (SAMRRPCSID) FormatCanonical ¶
func (s SAMRRPCSID) FormatCanonical() string
func (SAMRRPCSID) Rid ¶
func (s SAMRRPCSID) Rid() uint32
type SAMRUserProperties ¶
type SAMRUserProperties struct { Reserved1 uint32 Length uint32 Reserved2 uint16 Reserved3 uint16 Reserved4 [96]byte PropertySignature uint16 PropertyCount uint16 Properties []SAMRUserProperty }
func NewSAMRUserProperties ¶
func NewSAMRUserProperties(data []byte) SAMRUserProperties
type SAMRUserProperty ¶
type SAMRUserProperty struct { /* class USER_PROPERTY(Structure): structure = ( ('NameLength','<H=0'), ('ValueLength','<H=0'), ('Reserved','<H=0'), ('_PropertyName','_-PropertyName', "self['NameLength']"), ('PropertyName',':'), ('_PropertyValue','_-PropertyValue', "self['ValueLength']"), ('PropertyValue',':'), ) */ NameLength uint16 ValueLength uint16 Reserved uint16 PropertyName []byte PropertyValue []byte }
Click to show internal directories.
Click to hide internal directories.