public override void Command(MenuItem menuItem, string UserInput) { Regsvr32LauncherMenuItem regsvr32MenuItem = (Regsvr32LauncherMenuItem)menuItem; regsvr32MenuItem.regsvr32Launcher = this.CovenantClient.ApiLaunchersRegsvr32Post(); EliteConsole.PrintFormattedHighlightLine(regsvr32MenuItem.regsvr32Launcher.LauncherString); }
public override void Command(MenuItem menuItem, string UserInput) { Regsvr32LauncherMenuItem regsvr32MenuItem = (Regsvr32LauncherMenuItem)menuItem; regsvr32MenuItem.regsvr32Launcher = this.CovenantClient.ApiLaunchersRegsvr32Get(); Regsvr32Launcher launcher = regsvr32MenuItem.regsvr32Launcher; Listener listener = this.CovenantClient.ApiListenersGet().FirstOrDefault(L => L.Id == regsvr32MenuItem.regsvr32Launcher.ListenerId); EliteConsoleMenu menu = new EliteConsoleMenu(EliteConsoleMenu.EliteConsoleMenuType.Parameter, "Regsvr32Launcher"); menu.Rows.Add(new List <string> { "Name:", launcher.Name }); menu.Rows.Add(new List <string> { "Description:", launcher.Description }); menu.Rows.Add(new List <string> { "ListenerName:", listener == null ? "" : listener.Name }); menu.Rows.Add(new List <string> { "ScriptLanguage:", launcher.ScriptLanguage.ToString() }); menu.Rows.Add(new List <string> { "ParameterString:", launcher.ParameterString }); menu.Rows.Add(new List <string> { "DotNetFramework:", launcher.DotNetFrameworkVersion.ToString() }); menu.Rows.Add(new List <string> { "Delay:", (launcher.Delay ?? default).ToString() });
public override void Command(MenuItem menuItem, string UserInput) { Regsvr32LauncherMenuItem regsvr32MenuItem = (Regsvr32LauncherMenuItem)menuItem; string[] commands = UserInput.Split(" "); if (commands.Length != 2 || commands[0].ToLower() != "host") { menuItem.PrintInvalidOptionError(UserInput); return; } regsvr32MenuItem.regsvr32Launcher = this.CovenantClient.ApiLaunchersRegsvr32Post(); HttpListener listener = this.CovenantClient.ApiListenersHttpByIdGet(regsvr32MenuItem.regsvr32Launcher.ListenerId ?? default); if (listener == null) { EliteConsole.PrintFormattedErrorLine("Can only host a file on a valid HttpListener."); menuItem.PrintInvalidOptionError(UserInput); return; } HostedFile fileToHost = new HostedFile { ListenerId = listener.Id, Path = commands[1], Content = Convert.ToBase64String(Common.CovenantEncoding.GetBytes(regsvr32MenuItem.regsvr32Launcher.DiskCode)) }; fileToHost = this.CovenantClient.ApiListenersByIdHostedfilesPost(listener.Id ?? default, fileToHost); regsvr32MenuItem.regsvr32Launcher = this.CovenantClient.ApiLaunchersRegsvr32HostedPost(fileToHost); Uri hostedLocation = new Uri(listener.Url + fileToHost.Path); EliteConsole.PrintFormattedHighlightLine("Regsvr32Launcher hosted at: " + hostedLocation); EliteConsole.PrintFormattedInfoLine("Launcher: " + regsvr32MenuItem.regsvr32Launcher.LauncherString); }
public override void Command(MenuItem menuItem, string UserInput) { Regsvr32LauncherMenuItem regsvr32MenuItem = (Regsvr32LauncherMenuItem)menuItem; string[] commands = UserInput.Split(" "); if (commands.Length < 1 || commands.Length > 2 || commands[0].ToLower() != "code") { menuItem.PrintInvalidOptionError(UserInput); return; } else if (commands.Length == 2 && (!new List <string> { "stager", "gruntstager", "scriptlet" }.Contains(commands[1].ToLower()))) { EliteConsole.PrintFormattedErrorLine("Type must be one of: \"Stager\"\\\"GruntStager\" or \"Scriptlet\""); menuItem.PrintInvalidOptionError(UserInput); return; } regsvr32MenuItem.Refresh(); if (regsvr32MenuItem.regsvr32Launcher.LauncherString == "") { regsvr32MenuItem.CovenantClient.ApiLaunchersRegsvr32Post(); regsvr32MenuItem.Refresh(); EliteConsole.PrintFormattedHighlightLine("Generated Regsvr32Launcher: " + regsvr32MenuItem.regsvr32Launcher.LauncherString); } if (commands.Length == 1 || (commands.Length == 2 && (commands[1].ToLower() == "stager" || commands[1].ToLower() == "gruntstager"))) { EliteConsole.PrintInfoLine(regsvr32MenuItem.regsvr32Launcher.StagerCode); } else if (commands.Length == 2 && commands[1].ToLower() == "scriptlet") { EliteConsole.PrintInfoLine(regsvr32MenuItem.regsvr32Launcher.DiskCode); } }
public override void Command(MenuItem menuItem, string UserInput) { Regsvr32LauncherMenuItem regsvr32LauncherMenuItem = ((Regsvr32LauncherMenuItem)menuItem); string[] commands = UserInput.Split(" "); if (commands.Length != 2 || commands[0].ToLower() != "write") { menuItem.PrintInvalidOptionError(UserInput); } else { regsvr32LauncherMenuItem.Refresh(); if (regsvr32LauncherMenuItem.regsvr32Launcher.LauncherString == "") { regsvr32LauncherMenuItem.CovenantClient.ApiLaunchersBinaryPost(); regsvr32LauncherMenuItem.Refresh(); EliteConsole.PrintFormattedHighlightLine("Generated Regsvr32Launcher: " + regsvr32LauncherMenuItem.regsvr32Launcher.LauncherString); } string OutputFilePath = Common.EliteDataFolder + String.Concat(commands[1].Split(System.IO.Path.GetInvalidFileNameChars())); System.IO.File.WriteAllText(OutputFilePath, regsvr32LauncherMenuItem.regsvr32Launcher.DiskCode); EliteConsole.PrintFormattedHighlightLine("Wrote Regsvr32Launcher's ScriptletCode to: \"" + OutputFilePath + "\""); } }