diff options
Diffstat (limited to 'internal/exec/tsch/module.go')
-rw-r--r-- | internal/exec/tsch/module.go | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/internal/exec/tsch/module.go b/internal/exec/tsch/module.go new file mode 100644 index 0000000..dbd9ade --- /dev/null +++ b/internal/exec/tsch/module.go @@ -0,0 +1,48 @@ +package tschexec + +import ( + "github.com/FalconOpsLLC/goexec/internal/client/dcerpc" + "github.com/RedTeamPentesting/adauth" + "github.com/oiweiwei/go-msrpc/msrpc/tsch/itaskschedulerservice/v1" + "github.com/rs/zerolog" + "time" +) + +type Module struct { + creds *adauth.Credential + target *adauth.Target + + log zerolog.Logger + dce *dcerpc.DCEClient + tsch itaskschedulerservice.TaskSchedulerServiceClient +} + +type MethodRegisterConfig struct { + NoDelete bool + CallDelete bool + TaskName string + TaskPath string + StartDelay time.Duration + StopDelay time.Duration + DeleteDelay time.Duration +} + +type MethodDemandConfig struct { + NoDelete bool + CallDelete bool + TaskName string + TaskPath string + StopDelay time.Duration + DeleteDelay time.Duration +} + +type MethodDeleteConfig struct { + TaskPath string +} + +const ( + MethodRegister string = "register" + MethodDemand string = "demand" + MethodDelete string = "delete" + MethodChange string = "update" +) |