Documentation
¶
Index ¶
- Constants
- Variables
- func DonutFromAssembly(assembly []byte, isDLL bool, arch string, params string, method string, ...) ([]byte, error)
- func DonutShellcodeFromFile(filePath string, arch string, dotnet bool, params string, className string, ...) (data []byte, err error)
- func DonutShellcodeFromPE(pe []byte, arch string, dotnet bool, params string, className string, ...) (data []byte, err error)
- func GenerateUniqueIP() (net.IP, error)
- func GetCodename() (string, error)
- func GetSliversDir() string
- func ImplantBuildSave(name string, config *models.ImplantConfig, fPath string) error
- func ImplantConfigFromProtobuf(pbConfig *clientpb.ImplantConfig) (string, *models.ImplantConfig)
- func ImplantFileDelete(build *models.ImplantBuild) error
- func ImplantFileFromBuild(build *models.ImplantBuild) ([]byte, error)
- func SaveImplantProfile(name string, config *models.ImplantConfig) error
- func ShellcodeRDI(dllPath string, functionName string, userdata string) (shellcode []byte, err error)
- func ShellcodeRDIFromBytes(data []byte, functionName string, arguments string) (shellcode []byte, err error)
- func ShellcodeRDIToFile(dllPath string, functionName string) (shellcodePath string, err error)
- func SliverExecutable(name string, config *models.ImplantConfig) (string, error)
- func SliverSharedLibrary(name string, config *models.ImplantConfig) (string, error)
- func SliverShellcode(name string, config *models.ImplantConfig) (string, error)
- func UpdateCanary(canary *models.DNSCanary) error
- type CanaryGenerator
Constants ¶
const ( // WINDOWS OS WINDOWS = "windows" // DARWIN / MacOS DARWIN = "darwin" // LINUX OS LINUX = "linux" // GoPrivate - The default Go private arg to garble when obfuscation is enabled. // Wireguard dependencies prevent the use of wildcard github.com/* and golang.org/*. // The current packages below aren't definitive and need to be tidied up. GoPrivate = "" /* 167-byte string literal not displayed */ // DefaultReconnectInterval - In seconds DefaultReconnectInterval = 60 // DefaultMTLSLPort - Default listen port DefaultMTLSLPort = 8888 // DefaultHTTPLPort - Default HTTP listen port DefaultHTTPLPort = 443 // Assume SSL, it'll fallback // DefaultSuffix - Indicates a platform independent src file DefaultSuffix = "_default.go" // SliverCC64EnvVar - Environment variable that can specify the 64 bit mingw path SliverCC64EnvVar = "SLIVER_CC_64" // SliverCC32EnvVar - Environment variable that can specify the 32 bit mingw path SliverCC32EnvVar = "SLIVER_CC_32" )
const (
// CanaryBucketName - DNS Canary bucket name
CanaryBucketName = "canaries"
)
Variables ¶
var ( // ErrImplantBuildFileNotFound - More descriptive 'key not found' error ErrImplantBuildFileNotFound = errors.New("Implant build file not found") )
Functions ¶
func DonutFromAssembly ¶ added in v1.4.2
func DonutFromAssembly(assembly []byte, isDLL bool, arch string, params string, method string, className string, appDomain string) ([]byte, error)
DonutFromAssembly - Generate a donut shellcode from a .NET assembly
func DonutShellcodeFromFile ¶ added in v1.4.2
func DonutShellcodeFromFile(filePath string, arch string, dotnet bool, params string, className string, method string) (data []byte, err error)
DonutShellcodeFromFile returns a Donut shellcode for the given PE file
func DonutShellcodeFromPE ¶ added in v1.4.2
func DonutShellcodeFromPE(pe []byte, arch string, dotnet bool, params string, className string, method string, donutType donut.ModuleType) (data []byte, err error)
DonutShellcodeFromPE returns a Donut shellcode for the given PE file
func GenerateUniqueIP ¶ added in v1.4.9
GenerateUniqueIP generates and returns an available IP which can then be assigned to a Wireguard interface
func GetCodename ¶
GetCodename - Returns a randomly generated 'codename'
func ImplantBuildSave ¶
func ImplantBuildSave(name string, config *models.ImplantConfig, fPath string) error
ImplantBuildSave - Saves a binary file into the database
func ImplantConfigFromProtobuf ¶
func ImplantConfigFromProtobuf(pbConfig *clientpb.ImplantConfig) (string, *models.ImplantConfig)
ImplantConfigFromProtobuf - Create a native config struct from Protobuf
func ImplantFileDelete ¶ added in v1.2.0
func ImplantFileDelete(build *models.ImplantBuild) error
ImplantFileDelete - Delete the implant from the file system
func ImplantFileFromBuild ¶
func ImplantFileFromBuild(build *models.ImplantBuild) ([]byte, error)
ImplantFileFromBuild - Saves a binary file into the database
func SaveImplantProfile ¶
func SaveImplantProfile(name string, config *models.ImplantConfig) error
SaveImplantProfile - Save a sliver profile to disk
func ShellcodeRDI ¶
func ShellcodeRDI(dllPath string, functionName string, userdata string) (shellcode []byte, err error)
ShellcodeRDI generates a reflective shellcode based on a DLL file
func ShellcodeRDIFromBytes ¶
func ShellcodeRDIFromBytes(data []byte, functionName string, arguments string) (shellcode []byte, err error)
ShellcodeRDIFromBytes generate a sRDI from a byte array
func ShellcodeRDIToFile ¶
ShellcodeRDIToFile generates a sRDI shellcode and writes it to a file
func SliverExecutable ¶
func SliverExecutable(name string, config *models.ImplantConfig) (string, error)
SliverExecutable - Generates a sliver executable binary
func SliverSharedLibrary ¶
func SliverSharedLibrary(name string, config *models.ImplantConfig) (string, error)
SliverSharedLibrary - Generates a sliver shared library (DLL/dylib/so) binary
func SliverShellcode ¶
func SliverShellcode(name string, config *models.ImplantConfig) (string, error)
SliverShellcode - Generates a sliver shellcode using sRDI
func UpdateCanary ¶
UpdateCanary - Update an existing canary
Types ¶
type CanaryGenerator ¶
CanaryGenerator - Holds data related to canary generation
func (*CanaryGenerator) GenerateCanary ¶
func (g *CanaryGenerator) GenerateCanary() string
GenerateCanary - Generate a canary domain and save it to the db
currently this gets called by template engine