Exemplo n.º 1
0
        public override void Command(MenuItem menuItem, string UserInput)
        {
            WmicLauncherMenuItem wmicMenuItem = (WmicLauncherMenuItem)menuItem;

            wmicMenuItem.wmicLauncher = this.CovenantClient.ApiLaunchersWmicPost();
            EliteConsole.PrintFormattedHighlightLine("Generated WmicLauncher: " + wmicMenuItem.wmicLauncher.LauncherString);
        }
Exemplo n.º 2
0
        public override void Command(MenuItem menuItem, string UserInput)
        {
            WmicLauncherMenuItem wmicMenuItem = (WmicLauncherMenuItem)menuItem;

            wmicMenuItem.wmicLauncher = this.CovenantClient.ApiLaunchersWmicGet();
            WmicLauncher launcher = wmicMenuItem.wmicLauncher;
            Listener     listener = this.CovenantClient.ApiListenersGet().FirstOrDefault(L => L.Id == wmicMenuItem.wmicLauncher.ListenerId);

            EliteConsoleMenu menu = new EliteConsoleMenu(EliteConsoleMenu.EliteConsoleMenuType.Parameter, "WmicLauncher");

            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> {
                "DotNetFramework:", launcher.DotNetFrameworkVersion.ToString()
            });
            menu.Rows.Add(new List <string> {
                "Delay:", (launcher.Delay ?? default).ToString()
            });
Exemplo n.º 3
0
        public override void Command(MenuItem menuItem, string UserInput)
        {
            WmicLauncherMenuItem wmicMenuItem = (WmicLauncherMenuItem)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;
            }
            wmicMenuItem.Refresh();
            if (wmicMenuItem.wmicLauncher.LauncherString == "")
            {
                wmicMenuItem.CovenantClient.ApiLaunchersWmicPost();
                wmicMenuItem.Refresh();
                EliteConsole.PrintFormattedHighlightLine("Generated WmicLauncher: " + wmicMenuItem.wmicLauncher.LauncherString);
            }
            if (commands.Length == 1 || (commands.Length == 2 && (commands[1].ToLower() == "stager" || commands[1].ToLower() == "gruntstager")))
            {
                EliteConsole.PrintInfoLine(wmicMenuItem.wmicLauncher.StagerCode);
            }
            else if (commands.Length == 2 && commands[1].ToLower() == "scriptlet")
            {
                EliteConsole.PrintInfoLine(wmicMenuItem.wmicLauncher.DiskCode);
            }
        }
Exemplo n.º 4
0
        public override void Command(MenuItem menuItem, string UserInput)
        {
            WmicLauncherMenuItem wmicMenuItem = (WmicLauncherMenuItem)menuItem;

            string[] commands = UserInput.Split(" ");
            if (commands.Length != 2 || commands[0].ToLower() != "host")
            {
                menuItem.PrintInvalidOptionError(UserInput);
                return;
            }
            wmicMenuItem.wmicLauncher = this.CovenantClient.ApiLaunchersWmicPost();
            HttpListener listener = this.CovenantClient.ApiListenersHttpByIdGet(wmicMenuItem.wmicLauncher.ListenerId ?? default);

            if (listener == null)
            {
                EliteConsole.PrintFormattedErrorLine("Can only host a file on a valid HttpListener.");
                menuItem.PrintInvalidOptionError(UserInput);
                return;
            }
            if (!commands[1].EndsWith(".xsl"))
            {
                EliteConsole.PrintFormattedErrorLine("WmicLaunchers must end with the extension: .xsl");
                menuItem.PrintInvalidOptionError(UserInput);
                return;
            }
            HostedFile fileToHost = new HostedFile
            {
                ListenerId = listener.Id,
                Path       = commands[1],
                Content    = Convert.ToBase64String(Common.CovenantEncoding.GetBytes(wmicMenuItem.wmicLauncher.DiskCode))
            };

            fileToHost = this.CovenantClient.ApiListenersByIdHostedfilesPost(listener.Id ?? default, fileToHost);
            wmicMenuItem.wmicLauncher = this.CovenantClient.ApiLaunchersWmicHostedPost(fileToHost);

            Uri hostedLocation = new Uri(listener.Url + fileToHost.Path);

            EliteConsole.PrintFormattedHighlightLine("WmicLauncher hosted at: " + hostedLocation);
            EliteConsole.PrintFormattedInfoLine("Launcher (cmd.exe):        " + wmicMenuItem.wmicLauncher.LauncherString);
            EliteConsole.PrintFormattedInfoLine("Launcher (powershell.exe): " + wmicMenuItem.wmicLauncher.LauncherString.Replace("\"", "`\""));
        }
Exemplo n.º 5
0
        public override void Command(MenuItem menuItem, string UserInput)
        {
            WmicLauncherMenuItem wmicLauncherMenuItem = ((WmicLauncherMenuItem)menuItem);
            string[] commands = UserInput.Split(" ");
            if (commands.Length != 2 || commands[0].ToLower() != "write")
            {
                menuItem.PrintInvalidOptionError(UserInput);
            }
            else
            {
                wmicLauncherMenuItem.Refresh();
                if (wmicLauncherMenuItem.wmicLauncher.LauncherString == "")
                {
                    wmicLauncherMenuItem.CovenantClient.ApiLaunchersBinaryPost();
                    wmicLauncherMenuItem.Refresh();
                    EliteConsole.PrintFormattedHighlightLine("Generated WscriptLauncher: " + wmicLauncherMenuItem.wmicLauncher.LauncherString);
                }

                string OutputFilePath = Common.EliteDataFolder + String.Concat(commands[1].Split(System.IO.Path.GetInvalidFileNameChars()));
                System.IO.File.WriteAllText(OutputFilePath, wmicLauncherMenuItem.wmicLauncher.DiskCode);
                EliteConsole.PrintFormattedHighlightLine("Wrote WscriptLauncher to: \"" + OutputFilePath + "\"");
            }
        }