diff --git a/tools/CheckLDAPStatus/main.go b/tools/CheckLDAPStatus/main.go index 36d89d6..fa3f8d1 100644 --- a/tools/CheckLDAPStatus/main.go +++ b/tools/CheckLDAPStatus/main.go @@ -39,7 +39,7 @@ var ( func main() { flag.Usage = func() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "LDAP signing and channel binding enumeration utility.") fmt.Fprintln(os.Stderr) diff --git a/tools/DumpNTLMInfo/main.go b/tools/DumpNTLMInfo/main.go index 4ca270f..abeb297 100644 --- a/tools/DumpNTLMInfo/main.go +++ b/tools/DumpNTLMInfo/main.go @@ -76,7 +76,7 @@ const EPOCH_DIFF = 116444736000000000 func main() { flag.Usage = func() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "Do NTLM authentication and parse information.") fmt.Fprintln(os.Stderr) diff --git a/tools/describeTicket/main.go b/tools/describeTicket/main.go index 8cde633..727b1b4 100644 --- a/tools/describeTicket/main.go +++ b/tools/describeTicket/main.go @@ -31,6 +31,7 @@ import ( "github.com/jcmturner/gokrb5/v8/messages" "github.com/jcmturner/gokrb5/v8/types" + gopflags "github.com/mandiant/gopacket/pkg/flags" "github.com/mandiant/gopacket/pkg/kerberos" ) @@ -966,7 +967,7 @@ func loadCCacheSafe(path string) (ccache *credentials.CCache, err error) { } func printUsage() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(gopflags.Banner()) fmt.Println() fmt.Println("Parses a ccache ticket file and displays credential information.") fmt.Println("With a decryption key, decrypts the ticket and shows the full PAC.") diff --git a/tools/getArch/main.go b/tools/getArch/main.go index 3ae8b97..d77c2bc 100644 --- a/tools/getArch/main.go +++ b/tools/getArch/main.go @@ -25,6 +25,7 @@ import ( "github.com/mandiant/gopacket/pkg/dcerpc" "github.com/mandiant/gopacket/pkg/dcerpc/epmapper" "github.com/mandiant/gopacket/pkg/dcerpc/header" + "github.com/mandiant/gopacket/pkg/flags" "github.com/mandiant/gopacket/pkg/transport" ) @@ -123,7 +124,7 @@ func checkArch(machine string, timeoutSec int) { } func printUsage() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() fmt.Println("Gets the target system's OS architecture version") fmt.Println() diff --git a/tools/karmaSMB/main.go b/tools/karmaSMB/main.go index b810fc2..6ac7911 100644 --- a/tools/karmaSMB/main.go +++ b/tools/karmaSMB/main.go @@ -275,7 +275,7 @@ var NDR_UUID = []byte{ func main() { flag.Usage = func() { - fmt.Fprintf(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC\n\n") + fmt.Fprintf(os.Stderr, "%s\n\n", flags.Banner()) fmt.Fprintf(os.Stderr, "For every file request received, this module will return the pathname\n") fmt.Fprintf(os.Stderr, "contents based on extension matching.\n\n") fmt.Fprintf(os.Stderr, "Usage: karmaSMB [options] pathname\n\n") diff --git a/tools/keylistattack/main.go b/tools/keylistattack/main.go index 486cd63..aa6dac0 100644 --- a/tools/keylistattack/main.go +++ b/tools/keylistattack/main.go @@ -73,8 +73,8 @@ func main() { } func usage() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` Performs the KERB-KEY-LIST-REQ attack to dump secrets from the remote machine without executing any agent there. diff --git a/tools/lookupsid/main.go b/tools/lookupsid/main.go index 7ef4233..acf9bac 100644 --- a/tools/lookupsid/main.go +++ b/tools/lookupsid/main.go @@ -63,7 +63,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() fmt.Printf("[*] Brute forcing SIDs at %s\n", target.Host) diff --git a/tools/mssqlclient/main.go b/tools/mssqlclient/main.go index 38f82a8..f0abdba 100644 --- a/tools/mssqlclient/main.go +++ b/tools/mssqlclient/main.go @@ -42,7 +42,7 @@ func main() { os.Exit(1) } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Parse target diff --git a/tools/mssqlinstance/main.go b/tools/mssqlinstance/main.go index 787fcd9..be4df56 100644 --- a/tools/mssqlinstance/main.go +++ b/tools/mssqlinstance/main.go @@ -30,8 +30,8 @@ var ( func main() { flag.Usage = func() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` SQL Server Browser Protocol discovery tool. Queries the SQL Server Browser service (UDP 1434) to enumerate SQL Server @@ -68,7 +68,7 @@ Note: Requires the SQL Server Browser service to be running on the target. os.Exit(1) } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() target := flag.Arg(0) diff --git a/tools/net/main.go b/tools/net/main.go index 05fe340..3c3efd3 100644 --- a/tools/net/main.go +++ b/tools/net/main.go @@ -111,7 +111,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Connect via SMB @@ -196,7 +196,7 @@ func main() { } func printUsage() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "Usage: net [auth-flags] target [command-flags]") fmt.Fprintln(os.Stderr) diff --git a/tools/ntfs-read/main.go b/tools/ntfs-read/main.go index 0294473..ee6dd5e 100644 --- a/tools/ntfs-read/main.go +++ b/tools/ntfs-read/main.go @@ -24,6 +24,7 @@ import ( "path/filepath" "strings" + "github.com/mandiant/gopacket/pkg/flags" "github.com/mandiant/gopacket/pkg/ntfs" ) @@ -400,7 +401,7 @@ func cleanPath(path string) string { } func printUsage() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() fmt.Println("NTFS explorer (read-only)") fmt.Println() diff --git a/tools/ping/main.go b/tools/ping/main.go index 0e333a6..74fb97e 100644 --- a/tools/ping/main.go +++ b/tools/ping/main.go @@ -21,6 +21,7 @@ import ( "os" "time" + "github.com/mandiant/gopacket/pkg/flags" "golang.org/x/net/icmp" "golang.org/x/net/ipv4" ) @@ -32,7 +33,7 @@ const ( func main() { if len(os.Args) < 3 { - fmt.Fprintf(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC\n\n") + fmt.Fprintf(os.Stderr, "%s\n\n", flags.Banner()) fmt.Fprintf(os.Stderr, "Simple ICMP ping using raw sockets.\n\n") fmt.Fprintf(os.Stderr, "Usage: %s \n", os.Args[0]) fmt.Fprintf(os.Stderr, "\nNote: Requires root/CAP_NET_RAW privileges.\n") diff --git a/tools/ping6/main.go b/tools/ping6/main.go index ae43248..88c9789 100644 --- a/tools/ping6/main.go +++ b/tools/ping6/main.go @@ -20,6 +20,7 @@ import ( "os" "time" + "github.com/mandiant/gopacket/pkg/flags" "golang.org/x/net/icmp" "golang.org/x/net/ipv6" ) @@ -30,7 +31,7 @@ const ( ) func main() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() if len(os.Args) < 3 { diff --git a/tools/rbcd/main.go b/tools/rbcd/main.go index 8d6de5b..2cbc590 100644 --- a/tools/rbcd/main.go +++ b/tools/rbcd/main.go @@ -30,8 +30,8 @@ import ( ) func printUsage() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` usage: rbcd [-h] [-delegate-to DELEGATE_TO] [-delegate-from DELEGATE_FROM] [-action {read,write,remove,flush}] [-use-ldaps] [-debug] [-ts] [-hashes LMHASH:NTHASH] [-no-pass] [-k] [-aesKey hex key] diff --git a/tools/reg/main.go b/tools/reg/main.go index 98e0cf5..c72d813 100644 --- a/tools/reg/main.go +++ b/tools/reg/main.go @@ -107,7 +107,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Connect via SMB @@ -192,7 +192,7 @@ func main() { } func printUsage() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "Usage: reg [auth-flags] target [command-flags]") fmt.Fprintln(os.Stderr) diff --git a/tools/rpcdump/main.go b/tools/rpcdump/main.go index e3a9f13..ec1b9a4 100644 --- a/tools/rpcdump/main.go +++ b/tools/rpcdump/main.go @@ -37,7 +37,7 @@ func main() { os.Exit(1) } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() target, creds, err := session.ParseTargetString(opts.TargetStr) diff --git a/tools/rpcmap/main.go b/tools/rpcmap/main.go index e1e332a..e72e109 100644 --- a/tools/rpcmap/main.go +++ b/tools/rpcmap/main.go @@ -90,8 +90,8 @@ type ifaceResult struct { func main() { flag.Usage = func() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` Scans for listening MSRPC interfaces. Tries the MGMT interface first, falls back to UUID bruteforce if MGMT is not available. @@ -121,7 +121,7 @@ Examples: os.Exit(1) } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() if *debug { diff --git a/tools/samrdump/main.go b/tools/samrdump/main.go index c0a877e..f819483 100644 --- a/tools/samrdump/main.go +++ b/tools/samrdump/main.go @@ -55,7 +55,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() fmt.Printf("[*] Retrieving endpoint list from %s\n", target.Host) diff --git a/tools/services/main.go b/tools/services/main.go index 08562f2..35b8c33 100644 --- a/tools/services/main.go +++ b/tools/services/main.go @@ -100,7 +100,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Connect via SMB @@ -390,7 +390,7 @@ func errorControlName(t uint32) string { } func printUsage() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "Usage: services [auth-flags] target [action-flags]") fmt.Fprintln(os.Stderr) diff --git a/tools/smbserver/main.go b/tools/smbserver/main.go index 2db30e2..c1f4c38 100644 --- a/tools/smbserver/main.go +++ b/tools/smbserver/main.go @@ -366,7 +366,7 @@ func (s *Server) GetShares() []*Share { func main() { flag.Usage = func() { - fmt.Fprintf(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC\n\n") + fmt.Fprintf(os.Stderr, "%s\n\n", flags.Banner()) fmt.Fprintf(os.Stderr, "usage: smbserver [-h] [-comment COMMENT] [-username USERNAME]\n") fmt.Fprintf(os.Stderr, " [-password PASSWORD] [-hashes LMHASH:NTHASH] [-ts]\n") fmt.Fprintf(os.Stderr, " [-debug] [-ip INTERFACE_ADDRESS] [-port PORT]\n") diff --git a/tools/sniff/main.go b/tools/sniff/main.go index 3786681..7eaf28f 100644 --- a/tools/sniff/main.go +++ b/tools/sniff/main.go @@ -28,6 +28,7 @@ import ( "github.com/google/gopacket" "github.com/google/gopacket/layers" "github.com/google/gopacket/pcap" + "github.com/mandiant/gopacket/pkg/flags" ) // Supported datalink types @@ -43,8 +44,8 @@ var ( func main() { flag.Usage = func() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` Simple packet sniffer using pcap. Usage: %s [options] [BPF filter] @@ -65,7 +66,7 @@ Note: Requires root/CAP_NET_RAW privileges. flag.Parse() - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // List interfaces mode diff --git a/tools/sniffer/main.go b/tools/sniffer/main.go index 7a3c41c..af630bb 100644 --- a/tools/sniffer/main.go +++ b/tools/sniffer/main.go @@ -25,6 +25,7 @@ import ( "github.com/google/gopacket" "github.com/google/gopacket/layers" + "github.com/mandiant/gopacket/pkg/flags" ) // Protocol name to number mapping @@ -40,7 +41,7 @@ var protoMap = map[string]int{ } func main() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Default protocols if none specified diff --git a/tools/split/main.go b/tools/split/main.go index 093ec09..34328a4 100644 --- a/tools/split/main.go +++ b/tools/split/main.go @@ -24,6 +24,7 @@ import ( "github.com/google/gopacket/layers" "github.com/google/gopacket/pcap" "github.com/google/gopacket/pcapgo" + "github.com/mandiant/gopacket/pkg/flags" ) // Supported datalink types @@ -61,7 +62,7 @@ type ConnectionWriter struct { } func main() { - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() fmt.Println("[!] This tool is deprecated and may be removed in future versions.") fmt.Println() diff --git a/tools/ticketer/main.go b/tools/ticketer/main.go index 405f0c8..cd1d640 100644 --- a/tools/ticketer/main.go +++ b/tools/ticketer/main.go @@ -22,6 +22,7 @@ import ( "strings" "github.com/mandiant/gopacket/internal/build" + "github.com/mandiant/gopacket/pkg/flags" "github.com/mandiant/gopacket/pkg/kerberos" ) @@ -446,7 +447,7 @@ func parseExtraSIDs() []string { } func usage() { - fmt.Fprintf(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC\n\n") + fmt.Fprintf(os.Stderr, "%s\n\n", flags.Banner()) fmt.Fprintf(os.Stderr, "Creates Kerberos golden/silver/sapphire tickets based on user options\n\n") fmt.Fprintf(os.Stderr, "Usage: ticketer [options] \n\n") fmt.Fprintf(os.Stderr, "Positional:\n") diff --git a/tools/tstool/main.go b/tools/tstool/main.go index f062313..a053dcb 100644 --- a/tools/tstool/main.go +++ b/tools/tstool/main.go @@ -108,7 +108,7 @@ func main() { } } - fmt.Println("gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Println(flags.Banner()) fmt.Println() // Connect via SMB @@ -809,7 +809,7 @@ func cmdMsg(smbClient *smb.Client, auth *authContext, sessionID int, title, mess } func printUsage() { - fmt.Fprintln(os.Stderr, "gopacket v0.1.1-beta - Copyright 2026 Google LLC") + fmt.Fprintln(os.Stderr, flags.Banner()) fmt.Fprintln(os.Stderr) fmt.Fprintln(os.Stderr, "Usage: tstool [auth-flags] target [action-flags]") fmt.Fprintln(os.Stderr) diff --git a/tools/wmipersist/main.go b/tools/wmipersist/main.go index 0eb6c17..366865f 100644 --- a/tools/wmipersist/main.go +++ b/tools/wmipersist/main.go @@ -59,8 +59,8 @@ var ( ) func printUsage() { - fmt.Fprintf(os.Stderr, `gopacket v0.1.1-beta - Copyright 2026 Google LLC - + fmt.Fprintln(os.Stderr, flags.Banner()) + fmt.Fprintf(os.Stderr, ` usage: wmipersist [-h] [-debug] [-ts] [-com-version MAJOR_VERSION:MINOR_VERSION] [-hashes LMHASH:NTHASH] [-no-pass] [-k] [-aesKey hex key] [-dc-ip ip address]