From 3b6f5a93132710629539da3fc1345996cf708d0a Mon Sep 17 00:00:00 2001 From: oiweiwei Date: Thu, 20 Nov 2025 20:50:27 +0100 Subject: [PATCH] fix: add full ext-caps for drsr secrets dump --- examples/drsr_secrets_dump.go | 3 ++- examples/samples_with_config/drsr_secrets_dump.go | 14 +++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/examples/drsr_secrets_dump.go b/examples/drsr_secrets_dump.go index 56ed2ef2..a1fe972b 100644 --- a/examples/drsr_secrets_dump.go +++ b/examples/drsr_secrets_dump.go @@ -85,7 +85,8 @@ func main() { } clientCaps := drsuapi.ExtensionsInt{ - Flags: drsuapi.ExtGetNCChangesRequestV8 | drsuapi.ExtStrongEncryption | drsuapi.ExtGetNCChangesReplyV6, + Flags: drsuapi.ExtGetNCChangesRequestV8 | drsuapi.ExtStrongEncryption | drsuapi.ExtGetNCChangesReplyV6, + ExtCaps: 0xFFFFFFFF, } b, err := ndr.Marshal(&clientCaps, ndr.Opaque) diff --git a/examples/samples_with_config/drsr_secrets_dump.go b/examples/samples_with_config/drsr_secrets_dump.go index 2c2335bc..9cd24d28 100644 --- a/examples/samples_with_config/drsr_secrets_dump.go +++ b/examples/samples_with_config/drsr_secrets_dump.go @@ -77,7 +77,8 @@ func main() { } clientCaps := drsuapi.ExtensionsInt{ - Flags: drsuapi.ExtGetNCChangesRequestV8 | drsuapi.ExtStrongEncryption | drsuapi.ExtGetNCChangesReplyV6, + Flags: drsuapi.ExtGetNCChangesRequestV8 | drsuapi.ExtStrongEncryption | drsuapi.ExtGetNCChangesReplyV6, + ExtCaps: 0xFFFFFFFF, } b, err := ndr.Marshal(&clientCaps, ndr.Opaque) @@ -94,6 +95,17 @@ func main() { return } + var serverCaps drsuapi.ExtensionsInt + + if err := ndr.Unmarshal(resp.Server.Data, &serverCaps, ndr.Opaque); err != nil { + fmt.Fprintln(os.Stderr, "unmarshal_server_caps", err) + return + } + + if cfg.Debug { + fmt.Println(J(serverCaps)) + } + // get the id using the provided name. cracked, err := cli.CrackNames(ctx, &drsuapi.CrackNamesRequest{ Handle: resp.DRS,