Documentation
¶
Index ¶
- func ParseKerberosKeys(ctx context.Context, data []byte, username string) []*msrpcfern.KerberosKeyEntry
- type DRSUAPIClient
- func (c *DRSUAPIClient) Bind(ctx context.Context) error
- func (c *DRSUAPIClient) Close(ctx context.Context) error
- func (c *DRSUAPIClient) Connect(ctx context.Context, drsuapiBinding dcerpc.StringBinding) error
- func (c *DRSUAPIClient) ExtractAllUserCredentials(ctx context.Context, domain string, domainInfo *DomainInfo, ...) ([]*msrpcfern.DcSyncUserEntry, int, int, error)
- func (c *DRSUAPIClient) ExtractUserCredentials(ctx context.Context, username, domain string, ...) (*msrpcfern.DcSyncUserEntry, error)
- func (c *DRSUAPIClient) Unbind(ctx context.Context) error
- type DomainInfo
- type EndpointMapper
- type SAMRClient
- type UserEntry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseKerberosKeys ¶
func ParseKerberosKeys(ctx context.Context, data []byte, username string) []*msrpcfern.KerberosKeyEntry
ParseKerberosKeys parses Kerberos keys from supplemental credentials
Types ¶
type DRSUAPIClient ¶
type DRSUAPIClient struct {
Host string
Credentials credential.Credential
// contains filtered or unexported fields
}
DRSUAPIClient provides functionality for interacting with the Directory Replication Service API
func NewDRSUAPIClient ¶
func NewDRSUAPIClient(host string, creds credential.Credential) *DRSUAPIClient
NewDRSUAPIClient creates a new DRSUAPI client
func (*DRSUAPIClient) Bind ¶
func (c *DRSUAPIClient) Bind(ctx context.Context) error
Bind performs the DRSBind operation to establish a session
func (*DRSUAPIClient) Close ¶
func (c *DRSUAPIClient) Close(ctx context.Context) error
Close closes the connection to the DRSUAPI service
func (*DRSUAPIClient) Connect ¶
func (c *DRSUAPIClient) Connect(ctx context.Context, drsuapiBinding dcerpc.StringBinding) error
Connect establishes a connection to the DRSUAPI service on the specified endpoint
func (*DRSUAPIClient) ExtractAllUserCredentials ¶
func (c *DRSUAPIClient) ExtractAllUserCredentials(ctx context.Context, domain string, domainInfo *DomainInfo, config *msrpcfern.PentestMsrpcDcSyncConfig) ([]*msrpcfern.DcSyncUserEntry, int, int, error)
ExtractAllUserCredentials extracts credentials for all users in the domain using DRSUAPI
func (*DRSUAPIClient) ExtractUserCredentials ¶
func (c *DRSUAPIClient) ExtractUserCredentials(ctx context.Context, username, domain string, resp *drsuapi.GetNCChangesResponse, config *msrpcfern.PentestMsrpcDcSyncConfig) (*msrpcfern.DcSyncUserEntry, error)
ExtractUserCredentials extracts credentials from DRSUAPI replication data
type DomainInfo ¶
DomainInfo represents domain information including SID and users
type EndpointMapper ¶
type EndpointMapper struct {
Host string
Credentials credential.Credential
}
EndpointMapper provides functionality for discovering RPC endpoints via EPM
func NewEndpointMapper ¶
func NewEndpointMapper(host string, creds credential.Credential) *EndpointMapper
NewEndpointMapper creates a new endpoint mapper client
func (*EndpointMapper) DiscoverDRSUAPIEndpoints ¶
func (m *EndpointMapper) DiscoverDRSUAPIEndpoints(ctx context.Context) ([]dcerpc.StringBinding, error)
DiscoverDRSUAPIEndpoints queries EPM for DRSUAPI TCP endpoints using the library
type SAMRClient ¶
type SAMRClient struct {
Host string
Credentials credential.Credential
}
SAMRClient provides functionality for interacting with the SAM Remote protocol
func NewSAMRClient ¶
func NewSAMRClient(host string, creds credential.Credential) *SAMRClient
NewSAMRClient creates a new SAMR client
func (*SAMRClient) EnumerateDomainUsers ¶
func (c *SAMRClient) EnumerateDomainUsers(ctx context.Context, domain string) (*DomainInfo, error)
EnumerateDomainUsers connects to SAMR and enumerates all users with RID info